|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.uacalc.alg.GeneralAlgebra
org.uacalc.alg.SubProductAlgebra
public class SubProductAlgebra
This class represents a subalgebra of a direct product of SmallAlgebras. It allows one to construct such an algebra even though the direct product may be too big to be a SmallAlgebra.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from interface org.uacalc.alg.SmallAlgebra |
|---|
SmallAlgebra.AlgebraType |
| Field Summary | |
|---|---|
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
|
| Fields inherited from class org.uacalc.alg.GeneralAlgebra |
|---|
con, description, monitor, name, operations, operationsMap, similarityType, size, sub, universe |
| Fields inherited from interface org.uacalc.alg.Algebra |
|---|
CARDINALITY_COUNTABLE, CARDINALITY_COUNTABLY_INFINITE, CARDINALITY_FINITE, CARDINALITY_INFINITE, CARDINALITY_UNKNOWN |
| Constructor Summary | |
|---|---|
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)
|
| Method Summary | |
|---|---|
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(boolean v)
|
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. |
| Methods inherited from class org.uacalc.alg.GeneralAlgebra |
|---|
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 |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.uacalc.alg.SmallAlgebra |
|---|
parent, parents, resetConAndSub |
| Methods inherited from interface org.uacalc.alg.Algebra |
|---|
cardinality, constantOperations, getDescription, getMonitor, getName, getOperation, getOperationsMap, inputSize, isIdempotent, isSimilarTo, isTotal, isUnary, iterator, monitoring, operations, setDescription, setMonitor, setName, similarityType, universe |
| Field Detail |
|---|
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.Map<IntArray,Term> termMap
protected java.util.List<Variable> variables
protected java.util.Map<Variable,IntArray> varsMap
| Constructor Detail |
|---|
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)
| Method Detail |
|---|
public static java.util.List<IntArray> transpose(java.util.List<IntArray> lst)
public void setThinGenerators(boolean v)
public boolean getThinGenerators(boolean v)
v -
public void setDecompose(boolean v)
public boolean getDecompose(boolean v)
v -
public java.util.List<IntArray> thinGenerators()
protected void makeOperations()
public void makeOperationTables()
Algebra
makeOperationTables in interface AlgebramakeOperationTables in class GeneralAlgebraOperation.makeTableprotected java.util.Map<IntArray,Term> setupGensToVarsMap(java.util.List<IntArray> gens)
public java.util.Map<Variable,IntArray> getVariableToGeneratorMap()
public Term[] getTerms()
public java.util.List<Variable> getVariables()
public Term getTerm(IntArray elt)
public java.util.Map<IntArray,Term> getTermMap()
public BigProductAlgebra getProductAlgebra()
public BigProductAlgebra superAlgebra()
public java.util.List<IntArray> generators()
public java.util.List<IntArray> getUniverseList()
SmallAlgebra
getUniverseList in interface SmallAlgebrapublic java.util.Map<IntArray,java.lang.Integer> getUniverseOrder()
SmallAlgebra
getUniverseOrder in interface SmallAlgebrapublic CongruenceLattice con()
SmallAlgebra
con in interface SmallAlgebracon in class GeneralAlgebrapublic SubalgebraLattice sub()
SmallAlgebra
sub in interface SmallAlgebrasub in class GeneralAlgebrapublic IntArray getElementFromTerm(Term t)
t - the term
public int elementIndex(java.lang.Object obj)
SmallAlgebra
elementIndex in interface SmallAlgebrapublic java.lang.Object getElement(int index)
SmallAlgebra
getElement in interface SmallAlgebrapublic 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 n
public void convertToDefaultValueOps()
SmallAlgebra
convertToDefaultValueOps in interface SmallAlgebrapublic 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
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||