Skip to content

Commit 08afb47

Browse files
committed
Put EmptySet, UniversalSet, Reals and Integers in Singleton
1 parent e03223e commit 08afb47

File tree

1 file changed

+26
-4
lines changed

1 file changed

+26
-4
lines changed

symengine/lib/symengine_wrapper.pyx

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -448,15 +448,15 @@ def sympy2symengine(a, raise_error=False):
448448
elif isinstance(a, (sympy.Piecewise)):
449449
return piecewise(*(a.args))
450450
elif a is sympy.S.Reals:
451-
return reals()
451+
return S.Reals
452452
elif a is sympy.S.Integers:
453-
return integers()
453+
return S.Integers
454454
elif isinstance(a, sympy.Interval):
455455
return interval(*(a.args))
456456
elif a is sympy.S.EmptySet:
457-
return emptyset()
457+
return S.EmptySet
458458
elif a is sympy.S.UniversalSet:
459-
return universalset()
459+
return S.UniversalSet
460460
elif isinstance(a, sympy.FiniteSet):
461461
return finiteset(*(a.args))
462462
elif isinstance(a, sympy.Contains):
@@ -657,6 +657,22 @@ class Singleton(object):
657657
def false(self):
658658
return false
659659

660+
@property
661+
def EmptySet(self):
662+
return empty_set_singleton
663+
664+
@property
665+
def UniversalSet(self):
666+
return universal_set_singleton
667+
668+
@property
669+
def Integers(self):
670+
return integers_singleton
671+
672+
@property
673+
def Reals(self):
674+
return reals_singleton
675+
660676
S = Singleton()
661677

662678

@@ -5192,6 +5208,12 @@ def imageset(sym, expr, base):
51925208
return c2py(<rcp_const_basic>(symengine.imageset(sym_.thisptr, expr_.thisptr, b)))
51935209

51945210

5211+
universal_set_singleton = UniversalSet()
5212+
integers_singleton = Integers()
5213+
reals_singleton = Reals()
5214+
empty_set_singleton = EmptySet()
5215+
5216+
51955217
def solve(f, sym, domain=None):
51965218
cdef Basic f_ = sympify(f)
51975219
cdef Basic sym_ = sympify(sym)

0 commit comments

Comments
 (0)