edu.toronto.cs.mvset
Class CUADDMvSetFactory.CUADDMvSet

java.lang.Object
  extended by edu.toronto.cs.mvset.AbstractMvSet
      extended by edu.toronto.cs.mvset.CUADDMvSetFactory.CUADDMvSet
All Implemented Interfaces:
MvSet
Enclosing class:
CUADDMvSetFactory

public class CUADDMvSetFactory.CUADDMvSet
extends AbstractMvSet


Field Summary
 
Fields inherited from interface edu.toronto.cs.mvset.MvSet
EQ, EXISTS, FORALL, GEQ, IMPL, INFO_AND, INFO_OR, JOIN, LEQ, MEET, NEG
 
Constructor Summary
CUADDMvSetFactory.CUADDMvSet(CuddAdd.ADD _addNode)
           
 
Method Summary
 MvSet cofactor(AlgebraValue[] r)
          Restricts the MvSet to a particular L^n (or set of permutations on L^n if r is not total)
 MvSet cofactor(int argIdx, AlgebraValue value)
          Restricts an argument h (x_0, x_1, x_2, ...) = f (x_0, ..., value, ...) where value is substituted at argIdx
 java.util.Iterator cubeIterator()
           
 boolean equals(CUADDMvSetFactory.CUADDMvSet v)
           
 boolean equals(java.lang.Object o)
           
 AlgebraValue evaluate(AlgebraValue[] values)
          Evaluates this function on an input result = f (values [0], values [1], ...)
 MvSet existAbstract(MvSet _cube)
           
 MvSet forallAbstract(MvSet _cube)
           
 CuddAdd.ADD getAddNode()
           
 IAlgebra getAlgebra()
          get the lattice for the MvSet
 MvSetFactory getFactory()
          gets the factory
 AlgebraValue getValue()
           
 int hashCode()
           
 boolean isConstant()
           
 MvSet ptwiseCompare(int op, MvSet g)
          Ptwise compare: <=, >=, =.
 MvSet ptwiseCompose(int op, MvSet g)
          Creates a pointwise composition op is an operator: L x L -> L f is the current mv-set result h (x) = f (x) op g (x)
 MvSet ptwiseNeg()
          Creates a ptwise negation h (x) = \neg f (x)
 MvSet renameArgs(int[] newArgs)
          Renames the arguments.
 int size()
          Returns number of nodes
 java.lang.String toString()
           
 
Methods inherited from class edu.toronto.cs.mvset.AbstractMvSet
and, cofactor, eq, expandToArray, geq, getImage, getPreImageArray, impl, infoAnd, infoNot, infoOr, leq, mintermIterator, not, or, reorder, toDaVinci, toMvRelation, toMvRelation
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CUADDMvSetFactory.CUADDMvSet

public CUADDMvSetFactory.CUADDMvSet(CuddAdd.ADD _addNode)
Method Detail

isConstant

public boolean isConstant()

getValue

public AlgebraValue getValue()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

ptwiseCompose

public MvSet ptwiseCompose(int op,
                           MvSet g)
Creates a pointwise composition op is an operator: L x L -> L f is the current mv-set result h (x) = f (x) op g (x)


ptwiseCompare

public MvSet ptwiseCompare(int op,
                           MvSet g)
Description copied from interface: MvSet
Ptwise compare: <=, >=, =.


ptwiseNeg

public MvSet ptwiseNeg()
Creates a ptwise negation h (x) = \neg f (x)


size

public int size()
Description copied from interface: MvSet
Returns number of nodes

Specified by:
size in interface MvSet
Overrides:
size in class AbstractMvSet

cofactor

public MvSet cofactor(int argIdx,
                      AlgebraValue value)
Restricts an argument h (x_0, x_1, x_2, ...) = f (x_0, ..., value, ...) where value is substituted at argIdx


cofactor

public MvSet cofactor(AlgebraValue[] r)
Description copied from interface: MvSet
Restricts the MvSet to a particular L^n (or set of permutations on L^n if r is not total)


existAbstract

public MvSet existAbstract(MvSet _cube)

forallAbstract

public MvSet forallAbstract(MvSet _cube)

renameArgs

public MvSet renameArgs(int[] newArgs)
Renames the arguments. newArgs is a map from old args to new so that h (x) = f (newArgs [0], newArgs [1], ...)


evaluate

public AlgebraValue evaluate(AlgebraValue[] values)
Evaluates this function on an input result = f (values [0], values [1], ...)


getAlgebra

public IAlgebra getAlgebra()
get the lattice for the MvSet


getAddNode

public CuddAdd.ADD getAddNode()

getFactory

public MvSetFactory getFactory()
Description copied from interface: MvSet
gets the factory


equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object

equals

public boolean equals(CUADDMvSetFactory.CUADDMvSet v)

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

cubeIterator

public java.util.Iterator cubeIterator()
Specified by:
cubeIterator in interface MvSet
Overrides:
cubeIterator in class AbstractMvSet