| java.lang.Object mlsub.typing.lowlevel.BitVector mlsub.typing.lowlevel.Domain
Domain | final class Domain extends BitVector (Code) | | A "Domain" is a BitVector that holds all the possible values of a variable.
A value can be any rigid variable or a special constant called "unit" which
implements all the interfaces of the constraint but is comparable with no
rigid variable. This is to handle satisfiability in the absence of any
satisfiability witness For example, the constraint x <= x IS satisfiable
even if there is no rigid variable. In this case, the domain of x is {unit}
When a domain becomes empty, i.e., when it does not contain any rigid
variable nor unit, it means that the contraint is unsatisfiable.
version: $Revision: 1.7 $, $Date: 2005/03/30 23:08:16 $ author: Alexandre Frey |
Constructor Summary | |
public | Domain(int width) | public | Domain(Domain old) Creates a copy of a Domain. |
DOWN | final static int DOWN(Code) | | |
Domain | public Domain(int width)(Code) | | |
Domain | public Domain(Domain old)(Code) | | Creates a copy of a Domain.
|
containsUnit | public boolean containsUnit()(Code) | | |
containsValue | public boolean containsValue(int value)(Code) | | value >= -1 (-1 represents unit)
|
exclude | public void exclude(int value) throws LowlevelUnsatisfiable(Code) | | Exclude value of this domain
assume value >= -1 (-1 represents unit)
|
getFirstBit | int getFirstBit()(Code) | | Iteration thru the domain elements
|
getNextBit | public int getNextBit(int i)(Code) | | |
initGfpCardinals | void initGfpCardinals()(Code) | | |
intersect | public boolean intersect(BitVector set)(Code) | | Returns true if there is a common value in this and set
i.e., if chooseValue(false, set) will not throw LowlevelUnsatisfiable
|
isEmpty | public boolean isEmpty()(Code) | | |
needPropagation | public boolean needPropagation(int direction)(Code) | | |
rawExcludeUnit | void rawExcludeUnit()(Code) | | |
Fields inherited from mlsub.typing.lowlevel.BitVector | final public static int UNDEFINED_INDEX(Code)(Java Doc)
|
Methods inherited from mlsub.typing.lowlevel.BitVector | final public void addProduct(BitMatrix M, BitVector v)(Code)(Java Doc) final public void and(BitVector set)(Code)(Java Doc) final public void andNot(BitVector set)(Code)(Java Doc) final public void andNot(int from, BitVector set)(Code)(Java Doc) final public void andNotAnd(BitVector set1, BitVector set2)(Code)(Java Doc) final public void andNotAndOr(BitVector S1, BitVector S2, BitVector S3)(Code)(Java Doc) final public void andNotOr(int from, BitVector set1, BitVector set2)(Code)(Java Doc) final public void andNotOr(BitVector set1, BitVector set2)(Code)(Java Doc) final public void bitCopy(int src, int dest)(Code)(Java Doc) final public int bitCount()(Code)(Java Doc) final public int bitCount(int n)(Code)(Java Doc) final public void bitMerge(int src, int dest)(Code)(Java Doc) final public void clear(int bit)(Code)(Java Doc) final public void clearAll()(Code)(Java Doc) final public boolean equals(Object obj)(Code)(Java Doc) final public void fill(int n)(Code)(Java Doc) final public void fillNot(int n)(Code)(Java Doc) final public boolean get(int bit)(Code)(Java Doc) final public int getLowestClearedBit()(Code)(Java Doc) final public int getLowestSetBit()(Code)(Java Doc) final public int getLowestSetBit(int pos)(Code)(Java Doc) final public int getLowestSetBitAnd(BitVector set)(Code)(Java Doc) final public int getLowestSetBitAndNotIn(BitVector set, BitVector exclude)(Code)(Java Doc) final public int getLowestSetBitNotIn(BitVector set)(Code)(Java Doc) public int getNextBit(int i)(Code)(Java Doc) final public int hashCode()(Code)(Java Doc) final public boolean includedIn(BitVector set)(Code)(Java Doc) public boolean isEmpty()(Code)(Java Doc) final public void or(BitVector set)(Code)(Java Doc) final public void orAnd(BitVector set1, BitVector set2)(Code)(Java Doc) final public void orNotIn(BitVector set1, BitVector set2)(Code)(Java Doc) public void set(int bit)(Code)(Java Doc) final public int size()(Code)(Java Doc) final public void slowaddProduct(BitMatrix M, BitVector v)(Code)(Java Doc) public String toString()(Code)(Java Doc) final public void truncate(int newSize)(Code)(Java Doc) final public void xor(BitVector set)(Code)(Java Doc)
|
|
|