edu.toronto.cs.mvset
Class AbstractMvSet

java.lang.Object
  extended by edu.toronto.cs.mvset.AbstractMvSet
All Implemented Interfaces:
MvSet
Direct Known Subclasses:
CFAMvSetFactory.CFAMvSet, CUADDMvSetFactory.CUADDMvSet, JADDMvSetFactory.JADDMvSet, JCUDDBelnapMvSetFactory.JCUDDBelnapMvSet, JCUDDMvSetFactory.JCUDDMvSet, MDDMvSetFactory.MDDMvSet

public abstract class AbstractMvSet
extends java.lang.Object
implements MvSet


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
AbstractMvSet()
           
 
Method Summary
 MvSet and(MvSet v)
          Utility functions
 MvSet cofactor(MvSet point)
           
 java.util.Iterator cubeIterator()
           
 MvSet eq(MvSet v)
           
 AlgebraValue[][] expandToArray()
           
 MvSet geq(MvSet v)
           
 java.util.BitSet getImage()
           
 java.util.Set getPreImageArray(AlgebraValue v)
          Evaluates this function with respect to a state Note that we have a small discreptancy between what we mean by states since here a state may contain primed and unprimed variables and thus represent a transition rather than a state
 MvSet impl(MvSet v)
           
 MvSet infoAnd(MvSet v)
           
 MvSet infoNot()
           
 MvSet infoOr(MvSet v)
           
 MvSet leq(MvSet v)
           
 java.util.Iterator mintermIterator(MvSet vars, AlgebraValue v)
           
 MvSet not()
           
 MvSet or(MvSet v)
           
 void reorder()
           
 int size()
          Returns number of nodes
 DaVinciGraph toDaVinci()
           
 MvRelation toMvRelation(MvSet invar, MvSet preVarCube, MvSet postVarCube, int[] preToPostMap, int[] postToPreMap)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface edu.toronto.cs.mvset.MvSet
cofactor, cofactor, evaluate, existAbstract, forallAbstract, getAlgebra, getFactory, getValue, isConstant, ptwiseCompare, ptwiseCompose, ptwiseNeg, renameArgs
 

Constructor Detail

AbstractMvSet

public AbstractMvSet()
Method Detail

and

public MvSet and(MvSet v)
Utility functions

Specified by:
and in interface MvSet

or

public MvSet or(MvSet v)
Specified by:
or in interface MvSet

impl

public MvSet impl(MvSet v)
Specified by:
impl in interface MvSet

not

public MvSet not()
Specified by:
not in interface MvSet

leq

public MvSet leq(MvSet v)
Specified by:
leq in interface MvSet

geq

public MvSet geq(MvSet v)
Specified by:
geq in interface MvSet

eq

public MvSet eq(MvSet v)
Specified by:
eq in interface MvSet

infoAnd

public MvSet infoAnd(MvSet v)
Specified by:
infoAnd in interface MvSet

infoOr

public MvSet infoOr(MvSet v)
Specified by:
infoOr in interface MvSet

infoNot

public MvSet infoNot()
Specified by:
infoNot in interface MvSet

reorder

public void reorder()
Specified by:
reorder in interface MvSet

size

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

Specified by:
size in interface MvSet

cofactor

public MvSet cofactor(MvSet point)
Specified by:
cofactor in interface MvSet

cubeIterator

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

expandToArray

public AlgebraValue[][] expandToArray()

toDaVinci

public DaVinciGraph toDaVinci()
Specified by:
toDaVinci in interface MvSet

getImage

public java.util.BitSet getImage()
Specified by:
getImage in interface MvSet

getPreImageArray

public java.util.Set getPreImageArray(AlgebraValue v)
Description copied from interface: MvSet
Evaluates this function with respect to a state Note that we have a small discreptancy between what we mean by states since here a state may contain primed and unprimed variables and thus represent a transition rather than a state

Specified by:
getPreImageArray in interface MvSet

mintermIterator

public java.util.Iterator mintermIterator(MvSet vars,
                                          AlgebraValue v)
Specified by:
mintermIterator in interface MvSet

toMvRelation

public MvRelation toMvRelation(MvSet invar,
                               MvSet preVarCube,
                               MvSet postVarCube,
                               int[] preToPostMap,
                               int[] postToPreMap)
Specified by:
toMvRelation in interface MvSet