|
||||||||||
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.MDDMvSetFactory
public class MDDMvSetFactory
Implementation of an MvSet based on the MDD library
Nested Class Summary | |
---|---|
class |
MDDMvSetFactory.MDDMvSet
|
Field Summary |
---|
Fields inherited from interface edu.toronto.cs.mvset.MvSetFactory |
---|
DONT_CARE |
Constructor Summary | |
---|---|
MDDMvSetFactory(IAlgebra _algebra,
int nvars)
|
|
MDDMvSetFactory(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()
|
MvSet |
infoBot()
|
MvSet |
infoTop()
|
static MvSetFactory |
newMvSetFactory(IAlgebra algebra,
int nvars)
|
void |
renew()
|
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 |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public MDDMvSetFactory(IAlgebra _algebra, int nvars)
public MDDMvSetFactory(IAlgebra _algebra, MDDManager _mddManager)
Method Detail |
---|
public static MvSetFactory newMvSetFactory(IAlgebra algebra, int nvars)
public void renew()
renew
in interface MvSetFactory
renew
in class AbstractMvSetFactory
public void setCaching(boolean v)
public MvSet createConstant(AlgebraValue v)
public MvSet buildCube(int[] varIndex)
MvSetFactory
public MvSet top()
public MvSet bot()
public MvSet infoTop()
infoTop
in interface MvSetFactory
infoTop
in class AbstractMvSetFactory
public MvSet infoBot()
infoBot
in interface MvSetFactory
infoBot
in class AbstractMvSetFactory
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 |