public class SubProductAlgebra extends GeneralAlgebra implements SmallAlgebra
SmallAlgebra.AlgebraType
Modifier and Type | Field and Description |
---|---|
protected boolean |
decompose |
protected java.util.List<IntArray> |
gens |
protected BigProductAlgebra |
productAlgebra |
protected java.util.Map<IntArray,Term> |
termMap |
protected Term[] |
terms |
protected boolean |
thinGenerators |
protected java.util.List<IntArray> |
univ |
protected java.util.Map<IntArray,java.lang.Integer> |
univHashMap |
protected java.util.List<Variable> |
variables |
protected java.util.Map<Variable,IntArray> |
varsMap |
con, description, monitor, name, operationsMap, similarityType, size, sub, universe
CARDINALITY_COUNTABLE, CARDINALITY_COUNTABLY_INFINITE, CARDINALITY_FINITE, CARDINALITY_INFINITE, CARDINALITY_UNKNOWN
Modifier | Constructor and Description |
---|---|
protected |
SubProductAlgebra() |
|
SubProductAlgebra(SmallAlgebra alg,
int pow,
java.util.Map<IntArray,Partition> rels) |
protected |
SubProductAlgebra(java.lang.String name) |
|
SubProductAlgebra(java.lang.String name,
BigProductAlgebra prod,
java.util.List<IntArray> gens)
Construct the direct product of a List of SmallAlgebra's.
|
|
SubProductAlgebra(java.lang.String name,
BigProductAlgebra prod,
java.util.List<IntArray> gens,
boolean findTerms) |
|
SubProductAlgebra(java.lang.String name,
BigProductAlgebra prod,
java.util.List<IntArray> gens,
boolean findTerms,
boolean includeConstants,
ProgressReport report)
Construct the direct product of a List of SmallAlgebra's.
|
|
SubProductAlgebra(java.lang.String name,
BigProductAlgebra prod,
java.util.List<IntArray> gens,
boolean findTerms,
ProgressReport report)
Construct the direct product of a List of SmallAlgebra's.
|
|
SubProductAlgebra(java.lang.String name,
BigProductAlgebra prod,
java.util.List<IntArray> gens,
java.util.List<IntArray> univList)
Construct a SubProductAlgebra when the gens and univ are already
given.
|
|
SubProductAlgebra(java.lang.String name,
SmallAlgebra alg,
int pow,
java.util.Map<IntArray,Partition> rels) |
Modifier and Type | Method and Description |
---|---|
SmallAlgebra.AlgebraType |
algebraType()
The type of algebra this is, like a quotient algebra.
|
CongruenceLattice |
con()
The congurence lattice.
|
void |
convertToDefaultValueOps()
This is used in the UI.
|
int |
elementIndex(java.lang.Object obj)
This method will return k if elem
is the kth element; otherwise -1.
|
java.util.List<IntArray> |
generators() |
boolean |
getDecompose() |
java.lang.Object |
getElement(int index)
returns the kth element.
|
IntArray |
getElementFromTerm(Term t)
Get the element associate with a term.
|
BigProductAlgebra |
getProductAlgebra() |
Term |
getTerm(IntArray elt)
Get the term associated with an element.
|
java.util.Map<IntArray,Term> |
getTermMap() |
Term[] |
getTerms() |
boolean |
getThinGenerators(boolean v) |
java.util.List<IntArray> |
getUniverseList()
The universe as a List such getElement(k) will equal the kth
element of the List.
|
java.util.Map<IntArray,java.lang.Integer> |
getUniverseOrder()
A map that can be used for elementIndex(a).
|
java.util.List<Variable> |
getVariables()
The variables corresponding to the generator in the list
of terms.
|
java.util.Map<Variable,IntArray> |
getVariableToGeneratorMap() |
static void |
main(java.lang.String[] args) |
protected void |
makeOperations() |
void |
makeOperationTables()
Make operation tables to speed up the evaluation of operations at
the cost using more space.
|
BasicPartition |
projectionKernel(int k) |
void |
setDecompose(boolean v) |
void |
setThinGenerators(boolean v) |
protected java.util.Map<IntArray,Term> |
setupGensToVarsMap(java.util.List<IntArray> gens) |
SubalgebraLattice |
sub()
The subalgebra lattice.
|
BigProductAlgebra |
superAlgebra() |
java.util.List<IntArray> |
thinGenerators() |
static java.util.List<IntArray> |
transpose(java.util.List<IntArray> lst) |
static java.util.List<IntArray> |
universeFromRelations(int n,
int pow,
java.util.Map<IntArray,Partition> rels)
This gives all pow tuples with entries 0 to n-1
such that if (i,j) maps to theta, then the ith element
is theta related to the jth element.
|
cardinality, constantOperations, getDescription, getMonitor, getName, getOperation, getOperationsMap, inputSize, isIdempotent, isSimilarTo, isTotal, isUnary, iterator, monitoring, operations, parent, parents, resetConAndSub, setDescription, setMonitor, setName, setOperations, setUniverse, similarityType, universe, updateSimilarityType
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
parent, parents, resetConAndSub
cardinality, constantOperations, getDescription, getMonitor, getName, getOperation, getOperationsMap, inputSize, isIdempotent, isSimilarTo, isTotal, isUnary, iterator, monitoring, operations, setDescription, setMonitor, setName, similarityType, universe, updateSimilarityType
protected BigProductAlgebra productAlgebra
protected java.util.List<IntArray> gens
protected java.util.List<IntArray> univ
protected boolean thinGenerators
protected boolean decompose
protected java.util.Map<IntArray,java.lang.Integer> univHashMap
protected Term[] terms
protected java.util.List<Variable> variables
protected SubProductAlgebra()
protected SubProductAlgebra(java.lang.String name)
public SubProductAlgebra(java.lang.String name, BigProductAlgebra prod, java.util.List<IntArray> gens)
public SubProductAlgebra(java.lang.String name, BigProductAlgebra prod, java.util.List<IntArray> gens, boolean findTerms)
public SubProductAlgebra(java.lang.String name, BigProductAlgebra prod, java.util.List<IntArray> gens, boolean findTerms, ProgressReport report)
public SubProductAlgebra(java.lang.String name, BigProductAlgebra prod, java.util.List<IntArray> gens, boolean findTerms, boolean includeConstants, ProgressReport report)
public SubProductAlgebra(java.lang.String name, BigProductAlgebra prod, java.util.List<IntArray> gens, java.util.List<IntArray> univList)
public SubProductAlgebra(SmallAlgebra alg, int pow, java.util.Map<IntArray,Partition> rels)
public SubProductAlgebra(java.lang.String name, SmallAlgebra alg, int pow, java.util.Map<IntArray,Partition> rels)
public void setThinGenerators(boolean v)
public boolean getThinGenerators(boolean v)
v
- public void setDecompose(boolean v)
public boolean getDecompose()
v
- public java.util.List<IntArray> thinGenerators()
protected void makeOperations()
public void makeOperationTables()
Algebra
makeOperationTables
in interface Algebra
makeOperationTables
in class GeneralAlgebra
Operation.makeTable
protected java.util.Map<IntArray,Term> setupGensToVarsMap(java.util.List<IntArray> gens)
public Term[] getTerms()
public java.util.List<Variable> getVariables()
public BigProductAlgebra getProductAlgebra()
public BigProductAlgebra superAlgebra()
public java.util.List<IntArray> generators()
public java.util.List<IntArray> getUniverseList()
SmallAlgebra
getUniverseList
in interface SmallAlgebra
public java.util.Map<IntArray,java.lang.Integer> getUniverseOrder()
SmallAlgebra
getUniverseOrder
in interface SmallAlgebra
public CongruenceLattice con()
SmallAlgebra
con
in interface SmallAlgebra
con
in class GeneralAlgebra
public SubalgebraLattice sub()
SmallAlgebra
sub
in interface SmallAlgebra
sub
in class GeneralAlgebra
public IntArray getElementFromTerm(Term t)
t
- the termpublic int elementIndex(java.lang.Object obj)
SmallAlgebra
elementIndex
in interface SmallAlgebra
public java.lang.Object getElement(int index)
SmallAlgebra
getElement
in interface SmallAlgebra
public BasicPartition projectionKernel(int k)
public static java.util.List<IntArray> universeFromRelations(int n, int pow, java.util.Map<IntArray,Partition> rels)
n
- the size of the projectionspow
- the powerrels
- a map from pairs of coords to partition on npublic void convertToDefaultValueOps()
SmallAlgebra
convertToDefaultValueOps
in interface SmallAlgebra
public SmallAlgebra.AlgebraType algebraType()
SmallAlgebra
algebraType
in interface SmallAlgebra
public static void main(java.lang.String[] args) throws java.io.IOException, BadAlgebraFileException
java.io.IOException
BadAlgebraFileException
Copyright 2003 Ralph Freese. All Rights Reserved.