|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
public interface Operation
This interface specifies an operation, that is, a map from
the direct product of some number (called the arity) of a set
to the set. Since the set will often be just
{0, 1, ..., n-1} we have intValueAt(int[] args)
form of the operation. We also have an Object form for
general sets. Since only one or the other may be required, both are
optional.
| Method Summary | |
|---|---|
int |
arity()
This gives the arity of this operation. |
int |
getSetSize()
This gives the size of the set upon which the operation is defined. |
int[] |
getTable()
Get the table for this operation or null if it does not exist. |
int[] |
getTable(boolean makeTable)
Get the table for this operation. |
int |
intValueAt(int arg)
This (optional) operation is for fast access to the table, if it exits. |
int |
intValueAt(int[] args)
This (optional) operation is the int version. |
boolean |
isAssociative()
Is this operation binary and associative. |
boolean |
isCommutative()
Is this operation binary and commutative. |
boolean |
isIdempotent()
Is this operation idempotent in the sense f(x,x,..,x) = x. |
boolean |
isTableBased()
|
boolean |
isTotal()
Only OperationWithDefaultValue's can fail this. |
boolean |
isTotallySymmetric()
Is this operation totally symmetric; that is, invariant under all permutation of the variables. |
void |
makeTable()
This will make a table and so make the operation faster but requires more space. |
OperationSymbol |
symbol()
The operation symbol for this operation. |
int[] |
valueAt(int[][] args)
This operation is for fast product operation. |
java.lang.Object |
valueAt(java.util.List args)
This operation is the element version. |
| Method Detail |
|---|
int arity()
int getSetSize()
OperationSymbol symbol()
java.lang.Object valueAt(java.util.List args)
int[] valueAt(int[][] args)
args - an array of arity int arrays from the product algebra.int intValueAt(int[] args)
int intValueAt(int arg)
arg - the Horner encoding of the actual args.
void makeTable()
int[] getTable()
int[] getTable(boolean makeTable)
makeTable - forces the table to be made if necessary
boolean isTableBased()
boolean isIdempotent()
boolean isAssociative()
boolean isCommutative()
boolean isTotallySymmetric()
boolean isTotal()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||