1 Domains Module
2 ==============
4 .. py:class :: Domain
6 .. py:method:: symbols
8 Returns a tuple of the symbols that exsist in a domain.
10 .. py:method:: dimension
12 Returns the number of variables that exist in a domain.
14 .. py:method:: disjoint
16 Returns a domain as disjoint.
18 .. py:method:: involves_vars(self, dims)
20 Returns ``True`` if a domain depends on the given dimensions.
22 .. py:method:: isempty(self)
24 Return ``True`` is a domain is empty.
26 .. py:method:: isuniverse(self)
28 Return ``True`` if a domain is the Universe set.
30 .. py:method:: isbounded(self)
32 Return ``True`` if a domain is bounded.
34 .. py:method:: disjoint(self)
36 It is not guarenteed that a domain is disjoint. If it is necessary, this method will return a domain as disjoint.
38 .. py:method:: isdisjoint(self, other)
40 Return ``True`` if the intersection of *self* and *other* results in an empty set.
42 .. py:method:: issubset(self, other)
44 Test whether every element in a domain is in *other*.
46 .. py:method:: __eq__(self, other)
47 self == other
49 Test whether a domain is equal to *other*.
51 .. py:method:: __lt__(self, other)
52 self < other
54 Test whether a domain is a strict subset of *other*.
56 .. py:method:: __le__(self, other)
57 self <= other
59 Test whether every element in a domain is in *other*.
61 .. py:method:: __gt__(self, other)
62 self > other
64 Test whether a domain is a strict superset of *other*.
66 .. py:method:: __ge__(self, other)
67 self >= other
69 Test whether every element in *other* is in a domain.
71 .. py:method:: complement(self)
72 ¬self
74 Return the complement of a domain.
76 .. py:method:: simplify(self)
78 Return a new domain without any redundant constraints.
80 .. py:method:: project(self, dims)
82 Return a new domain with the given dimensions removed.
84 .. py:method:: aspolyhedron(self)
86 Return polyhedral hull of a domain.
88 .. py:method:: sample(self)
90 Return a single sample subset of a domain.
92 .. py:method:: intersection(self, other)
93 self | other
95 Return a new domain with the elements that are common between *self* and *other*.
97 .. py:method:: union(self, other)
98 self & other
100 Return a new domain with all the elements from *self* and *other*.
102 .. py:method:: difference(self, other)
103 self - other
105 Return a new domain with the elements in a domain that are not in *other* .
108 self + other
110 Return the sum of two domains.
112 .. py:method:: lexmin(self)
114 Return a new set containing the lexicographic minimum of the elements in the set.
116 .. py:method:: lexmax(self)
118 Return a new set containing the lexicographic maximum of the elements in the set.
121 A 2D or 3D domain can be plotted using the :meth:`plot` function. The points, verticies, and faces of a domain can be inspected using the following functions.
123 .. py:method:: points(self)
125 Return a list of the points contained in a domain as :class:`Points` objects.
127 .. py:method:: vertices(self)
129 Return a list of the verticies of a domain.
131 .. py:method:: faces(self)
133 Return a list of the vertices for each face of a domain.
135 .. py:method:: plot(self, plot=None, **kwargs)
137 Return a plot of the given domain.