X-Git-Url: https://svn.cri.ensmp.fr/git/linpy.git/blobdiff_plain/3c9e6c7cd0631426b79a28c9b15f8d40e01cec4c..62fbaa7984d8035cccc97555f1de3188e280e475:/linpy/domains.py?ds=sidebyside diff --git a/linpy/domains.py b/linpy/domains.py index 57c08ba..9fdc7d5 100644 --- a/linpy/domains.py +++ b/linpy/domains.py @@ -363,14 +363,16 @@ class Domain(GeometricObject): """ Return the difference of two domains as a new domain. """ - symbols = self._xsymbols([self, other]) - islset1 = self._toislset(self.polyhedra, symbols) - islset2 = other._toislset(other.polyhedra, symbols) - islset = libisl.isl_set_subtract(islset1, islset2) - return self._fromislset(islset, symbols) + return self - other def __sub__(self, other): - return self.difference(other) + if isinstance(other, Domain): + symbols = self._xsymbols([self, other]) + islset1 = self._toislset(self.polyhedra, symbols) + islset2 = other._toislset(other.polyhedra, symbols) + islset = libisl.isl_set_subtract(islset1, islset2) + return self._fromislset(islset, symbols) + return NotImplemented __sub__.__doc__ = difference.__doc__ def lexmin(self):