|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectedu.toronto.cs.mvset.AbstractMvSetFactory
edu.toronto.cs.mvset.JADDMvSetFactory
public class JADDMvSetFactory
Implementation of an MvSet based on the MDD library
Nested Class Summary | |
---|---|
class |
JADDMvSetFactory.JADDMvSet
|
Field Summary |
---|
Fields inherited from interface edu.toronto.cs.mvset.MvSetFactory |
---|
DONT_CARE |
Constructor Summary | |
---|---|
JADDMvSetFactory(IAlgebra _algebra,
int nvars)
|
|
JADDMvSetFactory(IAlgebra _algebra,
MDDManager _mddManager)
|
Method Summary | |
---|---|
MvSet |
bot()
|
MvSet |
buildCube(int[] varIndex)
builds a cube out of variables |
MvSet |
createCase(int argIdx,
MvSet[] children)
createCase creates a case relative to argIdx
this is somewhat simillar to Ite (if-then-else) in CUDD
but extended to more than two children. |
MvSet |
createConstant(AlgebraValue v)
Given a value in L creates a function f(x_0, x_1, ...) = value |
MvSet |
createMvSet(MDDNode mddNode)
|
MvSet |
createPoint(AlgebraValue[] args,
AlgebraValue value)
Creates a point function f (args) = value = 0 otherwise |
MvSet |
createProjection(int argIdx)
Given an argument index (0 <= argIdx < n) constructs a projection function f(x_0, x_1, ...) = x_argIdx |
MDDManager |
getMddManager()
|
static MvSetFactory |
newMvSetFactory(IAlgebra algebra,
int nvars)
|
void |
setCaching(boolean v)
|
MvSet |
top()
|
MvSet |
var(int argIdx,
AlgebraValue argVal,
AlgebraValue value)
Builds an mvset corresponding to (arg = argVal) /\ value |
Methods inherited from class edu.toronto.cs.mvset.AbstractMvSetFactory |
---|
getAlgebra, infoBot, infoTop, renew |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public JADDMvSetFactory(IAlgebra _algebra, int nvars)
public JADDMvSetFactory(IAlgebra _algebra, MDDManager _mddManager)
Method Detail |
---|
public static MvSetFactory newMvSetFactory(IAlgebra algebra, int nvars)
public void setCaching(boolean v)
public MvSet createConstant(AlgebraValue v)
public MvSet buildCube(int[] varIndex)
MvSetFactory
public MvSet top()
public MvSet bot()
public MvSet createProjection(int argIdx)
public MvSet createPoint(AlgebraValue[] args, AlgebraValue value)
public MvSet var(int argIdx, AlgebraValue argVal, AlgebraValue value)
MvSetFactory
public MvSet createCase(int argIdx, MvSet[] children)
MvSetFactory
createCase
creates a case relative to argIdx
this is somewhat simillar to Ite (if-then-else) in CUDD
but extended to more than two children.
argIdx
- an int
valuechildren
- an array of MvSet[]
whose size
must be equal the size of the logic
such that children [i] corresponds to the i^th child
of an mv-set we are creating
Note that argIdx must be smaller than any variable in children
to preserve ordering.
MvSet
valuepublic MvSet createMvSet(MDDNode mddNode)
public MDDManager getMddManager()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |