Spaces:
Running
Running
"""Trait for implementing domain elements. """ | |
from sympy.utilities import public | |
class DomainElement: | |
""" | |
Represents an element of a domain. | |
Mix in this trait into a class whose instances should be recognized as | |
elements of a domain. Method ``parent()`` gives that domain. | |
""" | |
__slots__ = () | |
def parent(self): | |
"""Get the domain associated with ``self`` | |
Examples | |
======== | |
>>> from sympy import ZZ, symbols | |
>>> x, y = symbols('x, y') | |
>>> K = ZZ[x,y] | |
>>> p = K(x)**2 + K(y)**2 | |
>>> p | |
x**2 + y**2 | |
>>> p.parent() | |
ZZ[x,y] | |
Notes | |
===== | |
This is used by :py:meth:`~.Domain.convert` to identify the domain | |
associated with a domain element. | |
""" | |
raise NotImplementedError("abstract method") | |