public abstract class BoundEncoding extends BDDEncoding
Note: The concrete implementation of a minimum/maximum vertex/edge encoding can be found in classes extending this abstract class.
DefaultMaximumBoundEncoding
,
DefaultMinimumBoundEncoding
,
MaximumEdgeAutomaton
,
MaximumVertexAutomaton
,
MinimumEdgeAutomaton
,
MinimumVertexAutomaton
Modifier and Type | Class and Description |
---|---|
static class |
BoundEncoding.Type
Enumeration of the different types of bound encodings.
|
BDDEncoding.StateType
Modifier and Type | Method and Description |
---|---|
int |
getBound()
Returns the bound.
|
int |
getBoundBitLength()
Returns the length of the encoding of the bound
|
static String |
getBoundType()
Returns the type string indicating the bound bits.
|
static BoundEncoding |
getDefaultMaximumEncoding(int maximumInterface,
int innerInterface,
int outerInterface,
int bound) |
static BoundEncoding |
getDefaultMinimumEncoding(int maximumInterface,
int innerInterface,
int outerInterface,
int bound) |
static BoundEncoding |
getEncoding(int maximumInterface,
int innerInterface,
int outerInterface,
int bound,
BoundEncoding.Type type,
String encodingName)
Returns the BDD encoding for a bound instance given by the class name
name with a maximum interface size of maximumInterface and a
modulo number of modNumber . |
abstract RavenBDD |
getValueBit(BDDEncoding.StateType type,
int pos)
Returns a BDD which encodes the
pos -th bit of the value of the node/edge counter. |
getBit, getBitType, getCurrentStateDomain, getInnerInterface, getInterfaceBit, getInterfaceEncodingBDD, getInterfaceLength, getInterfaceSize, getInterfaceSizeIsGreaterOrEqual, getInterfaceSizeIsLessOrEqual, getInterfaceSizeType, getLength, getMaximumInterface, getOuterInterface, getStateBit, getStateEncodingBDD, getStateLength, getStateType, getSuccessorStateDomain, one, printStates, toString, zero
public static final String getBoundType()
public static final BoundEncoding getDefaultMinimumEncoding(int maximumInterface, int innerInterface, int outerInterface, int bound)
maximumInterface
- the maximum interface sizeinnerInterface
- size of the inner interfaceouterInterface
- size of the outer interfacebound
- the bound on the number of vertices/edgespublic static final BoundEncoding getDefaultMaximumEncoding(int maximumInterface, int innerInterface, int outerInterface, int bound)
maximumInterface
- the maximum interface sizeinnerInterface
- size of the inner interfaceouterInterface
- size of the outer interfacebound
- the bound on the number of vertices/edgespublic static final BoundEncoding getEncoding(int maximumInterface, int innerInterface, int outerInterface, int bound, BoundEncoding.Type type, String encodingName)
name
with a maximum interface size of maximumInterface
and a
modulo number of modNumber
. If no vertex count encoding with the
given name can be found the default encoding is returned.maximumInterface
- size of the maximum interfaceinnerInterface
- size of the inner interfaceouterInterface
- size of the outer interfacebound
- the bound on the number of vertices/edgestype
- minimum or maximum encodingencodingName
- the class name of the encoding classpublic abstract RavenBDD getValueBit(BDDEncoding.StateType type, int pos)
pos
-th bit of the value of the node/edge counter.type
- the state type, either current state or successor statepos
- the position of the value bitpublic final int getBoundBitLength()
public int getBound()