Ejemplo n.º 1
0
 def Add(expr, assumptions):
     """
     Hermitian + Hermitian  -> Hermitian
     Hermitian + !Hermitian -> !Hermitian
     """
     if expr.is_number:
         return AskRealHandler._number(expr, assumptions)
     return test_closed_group(expr, assumptions, Q.hermitian)
Ejemplo n.º 2
0
 def Add(expr, assumptions):
     """
     Antihermitian + Antihermitian  -> Antihermitian
     Antihermitian + !Antihermitian -> !Antihermitian
     """
     if expr.is_number:
         return AskImaginaryHandler._number(expr, assumptions)
     return test_closed_group(expr, assumptions, Q.antihermitian)
Ejemplo n.º 3
0
 def Add(expr, assumptions):
     """
     Antihermitian + Antihermitian  -> Antihermitian
     Antihermitian + !Antihermitian -> !Antihermitian
     """
     if expr.is_number:
         return AskImaginaryHandler._number(expr, assumptions)
     return test_closed_group(expr, assumptions, Q.antihermitian)
Ejemplo n.º 4
0
 def Add(expr, assumptions):
     """
     Real + Real              -> Real
     Real + (Complex & !Real) -> !Real
     """
     if expr.is_number:
         return AskRealHandler._number(expr, assumptions)
     return test_closed_group(expr, assumptions, Q.real)
Ejemplo n.º 5
0
 def Add(expr, assumptions):
     """
     Real + Real              -> Real
     Real + (Complex & !Real) -> !Real
     """
     if expr.is_number:
         return AskRealHandler._number(expr, assumptions)
     return test_closed_group(expr, assumptions, Q.real)
Ejemplo n.º 6
0
 def Add(expr, assumptions):
     """
     Hermitian + Hermitian  -> Hermitian
     Hermitian + !Hermitian -> !Hermitian
     """
     if expr.is_number:
         return AskRealHandler._number(expr, assumptions)
     return test_closed_group(expr, assumptions, Q.hermitian)
Ejemplo n.º 7
0
 def Add(expr, assumptions):
     """
     Integer + Integer       -> Integer
     Integer + !Integer      -> !Integer
     !Integer + !Integer -> ?
     """
     if expr.is_number:
         return AskIntegerHandler._number(expr, assumptions)
     return test_closed_group(expr, assumptions, Q.integer)
Ejemplo n.º 8
0
Archivo: sets.py Proyecto: helpin/sympy
 def Add(expr, assumptions):
     """
     Integer + Integer       -> Integer
     Integer + !Integer      -> !Integer
     !Integer + !Integer -> ?
     """
     if expr.is_number:
         return AskIntegerHandler._number(expr, assumptions)
     return test_closed_group(expr, assumptions, Q.integer)
Ejemplo n.º 9
0
Archivo: sets.py Proyecto: helpin/sympy
 def Add(expr, assumptions):
     """
     Rational + Rational     -> Rational
     Rational + !Rational    -> !Rational
     !Rational + !Rational   -> ?
     """
     if expr.is_number:
         if expr.as_real_imag()[1]:
             return False
     return test_closed_group(expr, assumptions, Q.rational)
Ejemplo n.º 10
0
 def Add(expr, assumptions):
     """
     Rational + Rational     -> Rational
     Rational + !Rational    -> !Rational
     !Rational + !Rational   -> ?
     """
     if expr.is_number:
         if expr.as_real_imag()[1]:
             return False
     return test_closed_group(expr, assumptions, Q.rational)
Ejemplo n.º 11
0
 def MatAdd(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.complex_elements)
Ejemplo n.º 12
0
 def MatAdd(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.integer_elements)
Ejemplo n.º 13
0
Archivo: sets.py Proyecto: helpin/sympy
 def Mul(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.algebraic)
Ejemplo n.º 14
0
Archivo: sets.py Proyecto: helpin/sympy
 def Add(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.complex)
Ejemplo n.º 15
0
Archivo: sets.py Proyecto: helpin/sympy
 def Add(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.extended_real)
Ejemplo n.º 16
0
 def Mul(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.algebraic)
Ejemplo n.º 17
0
def _(expr, assumptions):
    return test_closed_group(expr, assumptions, Q.real_elements)
Ejemplo n.º 18
0
 def Add(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.complex)
Ejemplo n.º 19
0
def MatMul_elements(matrix_predicate, scalar_predicate, expr, assumptions):
    d = sift(expr.args, lambda x: isinstance(x, MatrixExpr))
    factors, matrices = d[False], d[True]
    return fuzzy_and([
        test_closed_group(Basic(*factors), assumptions, scalar_predicate),
        test_closed_group(Basic(*matrices), assumptions, matrix_predicate)])
Ejemplo n.º 20
0
def MatMul_elements(matrix_predicate, scalar_predicate, expr, assumptions):
    d = sift(expr.args, lambda x: isinstance(x, MatrixExpr))
    factors, matrices = d[False], d[True]
    return fuzzy_and(
        test_closed_group(Basic(*factors), assumptions, scalar_predicate),
        test_closed_group(Basic(*matrices), assumptions, matrix_predicate))
Ejemplo n.º 21
0
 def Add(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.extended_real)