1
1
from .lib import symengine_wrapper as symengine
2
2
from .utilities import var , symbols
3
3
from .compatibility import with_metaclass
4
- from .lib .symengine_wrapper import (Symbol , sympify , sympify as S ,
4
+ from .lib .symengine_wrapper import (sympify , sympify as S ,
5
5
SympifyError , sqrt , I , E , pi , Matrix , Derivative , exp ,
6
6
Lambdify as lambdify , symarray , diff , zeros , eye , diag , ones , zeros ,
7
7
expand , Subs , FunctionSymbol as AppliedUndef )
@@ -18,19 +18,23 @@ class Basic(with_metaclass(BasicMeta, object)):
18
18
19
19
20
20
class Number (Basic ):
21
- _classes = (symengine .Number ,) + Basic ._classes
21
+ _classes = (symengine .Number ,)
22
+ pass
23
+
24
+ class Symbol (symengine .PySymbol , Basic ):
25
+ _classes = (symengine .Symbol ,)
22
26
pass
23
27
24
28
25
29
class Rational (Number ):
26
- _classes = (symengine .Rational ,) + Number . _classes
30
+ _classes = (symengine .Rational , symengine . Integer )
27
31
28
32
def __new__ (cls , num , den = 1 ):
29
33
return symengine .Integer (num ) / den
30
34
31
35
32
36
class Integer (Rational ):
33
- _classes = (symengine .Integer ,) + Rational . _classes
37
+ _classes = (symengine .Integer ,)
34
38
35
39
def __new__ (cls , i ):
36
40
return symengine .Integer (i )
0 commit comments