org.uacalc.alg
Class PowerAlgebra

java.lang.Object
  extended by org.uacalc.alg.GeneralAlgebra
      extended by org.uacalc.alg.ProductAlgebra
          extended by org.uacalc.alg.PowerAlgebra
All Implemented Interfaces:
Algebra, SmallAlgebra

public class PowerAlgebra
extends ProductAlgebra
implements SmallAlgebra

This class represents the direct product of SmallAlgebras.

Version:
$Id: PowerAlgebra.java,v 1.6 2008/10/14 06:16:58 ralphfreese Exp $
Author:
Ralph Freese

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.uacalc.alg.SmallAlgebra
SmallAlgebra.AlgebraType
 
Field Summary
protected  SmallAlgebra root
           
protected  int rootSize
           
 
Fields inherited from class org.uacalc.alg.ProductAlgebra
algebras, numberOfProducts, sizes
 
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
PowerAlgebra(SmallAlgebra alg, int power)
           
PowerAlgebra(java.lang.String name, SmallAlgebra alg, int power)
          Construct the direct power of an algebra.
 
Method Summary
 SmallAlgebra.AlgebraType algebraType()
          The type of algebra this is, like a quotient algebra.
 CongruenceLattice con()
          The congurence lattice.
 int getPower()
           
 SmallAlgebra getRoot()
           
static void main(java.lang.String[] args)
           
 SmallAlgebra parent()
          For a BasicAlgebra this is null; for a QuotientAlgebra this is the preimage; for a Subalgebra it is the super algebra.
 java.util.List<SmallAlgebra> parents()
          For a ProductAlgebra this will be the factors.
 SubalgebraLattice sub()
          The subalgebra lattice.
 
Methods inherited from class org.uacalc.alg.ProductAlgebra
calcCard, convertToDefaultValueOps, elementIndex, factors, getElement, getUniverseList, getUniverseOrder, makeCartesianProduct, makeOperations, makeOperationTables, projection, projectionKernel, Sg, sgClose
 
Methods inherited from class org.uacalc.alg.GeneralAlgebra
cardinality, constantOperations, getDescription, getMonitor, getName, getOperation, getOperationsMap, inputSize, isIdempotent, isSimilarTo, isTotal, isUnary, iterator, monitoring, operations, 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
convertToDefaultValueOps, elementIndex, getElement, getUniverseList, getUniverseOrder, resetConAndSub
 
Methods inherited from interface org.uacalc.alg.Algebra
cardinality, constantOperations, getDescription, getMonitor, getName, getOperation, getOperationsMap, inputSize, isIdempotent, isSimilarTo, isTotal, isUnary, iterator, makeOperationTables, monitoring, operations, setDescription, setMonitor, setName, similarityType, universe
 

Field Detail

root

protected final SmallAlgebra root

rootSize

protected final int rootSize
Constructor Detail

PowerAlgebra

public PowerAlgebra(SmallAlgebra alg,
                    int power)

PowerAlgebra

public PowerAlgebra(java.lang.String name,
                    SmallAlgebra alg,
                    int power)
Construct the direct power of an algebra.

Method Detail

getRoot

public SmallAlgebra getRoot()

parent

public SmallAlgebra parent()
Description copied from interface: SmallAlgebra
For a BasicAlgebra this is null; for a QuotientAlgebra this is the preimage; for a Subalgebra it is the super algebra.

Specified by:
parent in interface SmallAlgebra
Overrides:
parent in class GeneralAlgebra

parents

public java.util.List<SmallAlgebra> parents()
Description copied from interface: SmallAlgebra
For a ProductAlgebra this will be the factors. For a BasicAlgebra it will be null. Otherwise it is a list of the parent algebra.

Specified by:
parents in interface SmallAlgebra
Overrides:
parents in class ProductAlgebra
See Also:
parent

getPower

public int getPower()

con

public CongruenceLattice con()
Description copied from interface: SmallAlgebra
The congurence lattice.

Specified by:
con in interface SmallAlgebra
Overrides:
con in class ProductAlgebra

sub

public SubalgebraLattice sub()
Description copied from interface: SmallAlgebra
The subalgebra lattice.

Specified by:
sub in interface SmallAlgebra
Overrides:
sub in class ProductAlgebra

algebraType

public SmallAlgebra.AlgebraType algebraType()
Description copied from interface: SmallAlgebra
The type of algebra this is, like a quotient algebra.

Specified by:
algebraType in interface SmallAlgebra
Overrides:
algebraType in class ProductAlgebra
Returns:

main

public static void main(java.lang.String[] args)
                 throws java.io.IOException,
                        BadAlgebraFileException
Throws:
java.io.IOException
BadAlgebraFileException


Copyright 2003 Ralph Freese. All Rights Reserved.