Esempio 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)
Esempio 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)
Esempio 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)
Esempio 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)
Esempio 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)
Esempio 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)
Esempio 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)
Esempio n. 8
0
File: sets.py Progetto: 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)
Esempio n. 9
0
File: sets.py Progetto: 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)
Esempio 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)
Esempio n. 11
0
 def MatAdd(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.complex_elements)
Esempio n. 12
0
 def MatAdd(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.integer_elements)
Esempio n. 13
0
File: sets.py Progetto: helpin/sympy
 def Mul(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.algebraic)
Esempio n. 14
0
File: sets.py Progetto: helpin/sympy
 def Add(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.complex)
Esempio n. 15
0
File: sets.py Progetto: helpin/sympy
 def Add(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.extended_real)
Esempio n. 16
0
 def Mul(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.algebraic)
Esempio n. 17
0
def _(expr, assumptions):
    return test_closed_group(expr, assumptions, Q.real_elements)
Esempio n. 18
0
 def Add(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.complex)
Esempio 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)])
Esempio 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))
Esempio n. 21
0
 def Add(expr, assumptions):
     return test_closed_group(expr, assumptions, Q.extended_real)