diff --git a/symengine/lib/symengine_wrapper.in.pyx b/symengine/lib/symengine_wrapper.in.pyx index 8974b7d9..71b4734b 100644 --- a/symengine/lib/symengine_wrapper.in.pyx +++ b/symengine/lib/symengine_wrapper.in.pyx @@ -951,6 +951,9 @@ cdef class Basic(object): def __neg__(Basic self not None): return c2py(symengine.neg(self.thisptr)) + def __pos__(self): + return self + def __abs__(Basic self not None): return c2py(symengine.abs(self.thisptr)) diff --git a/symengine/tests/test_arit.py b/symengine/tests/test_arit.py index e6ff192b..931b8adb 100644 --- a/symengine/tests/test_arit.py +++ b/symengine/tests/test_arit.py @@ -95,6 +95,12 @@ def test_arit8(): assert (2*y**(-2*x**2)) * (3*y**(2*x**2)) == 6 +def test_unary(): + x = Symbol("x") + assert -x == 0 - x + assert +x == x + + def test_expand1(): x = Symbol("x") y = Symbol("y")