Package org.jacop.constraints.regular
Class RegStateDom
java.lang.Object
org.jacop.constraints.regular.RegState
org.jacop.constraints.regular.RegStateDom
It is a state representation which uses a domain representation
to represent all integers which can transition from this state
to the given successor state.
- Version:
- 4.9
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionRegStateDom
(int level, int id, int sucNumber, int posInArray) It constructs a state. -
Method Summary
Modifier and TypeMethodDescriptionvoid
It adds to domain values which are accepted by a given edge.void
addTransition
(RegState suc, Integer val) It specifies that for a given value an automata will move from the current state to the successor state.void
addTransitions
(RegState suc, IntervalDomain val) It specifies that for a given values from an interval an automata will move from the current state to the successor state.boolean
intersects
(IntDomain dom, int successorNo) It checks if the accepting values associated with an edge intersect.boolean
The function return if the state is still active.void
removeTransition
(int pos) It informs the state that the edge on the given position is no longer active.void
setSupports
(Map<Integer, RegEdge> hashMap, int i) sucDomToString
(int successorNo) boolean
updateSupport
(RegEdge edge, int v) It updates a support if given state supports given value.
-
Field Details
-
toSucDom
-
-
Constructor Details
-
RegStateDom
public RegStateDom(int level, int id, int sucNumber, int posInArray) It constructs a state.- Parameters:
level
- the position of the associated variable with the state.id
- the state id.sucNumber
- the number of successors for this state.posInArray
- the position within a states array for the level of this state.
-
-
Method Details
-
isActive
Description copied from class:RegState
The function return if the state is still active. It depends on how many active levels remains for state level and the position of the state. -
removeTransition
public void removeTransition(int pos) Description copied from class:RegState
It informs the state that the edge on the given position is no longer active.- Specified by:
removeTransition
in classRegState
- Parameters:
pos
- position of the edge.
-
addTransition
Description copied from class:RegState
It specifies that for a given value an automata will move from the current state to the successor state.- Specified by:
addTransition
in classRegState
- Parameters:
suc
- successor stateval
- an accepting value
-
addTransitions
Description copied from class:RegState
It specifies that for a given values from an interval an automata will move from the current state to the successor state.- Specified by:
addTransitions
in classRegState
- Parameters:
suc
- successor stateval
- interval of accepting values.
-
intersects
Description copied from class:RegState
It checks if the accepting values associated with an edge intersect.- Specified by:
intersects
in classRegState
- Parameters:
dom
- domain against which interesection is performed.successorNo
- a position of the edge.- Returns:
- true if at least one value associated with an edge intersects with domain.
-
setSupports
- Specified by:
setSupports
in classRegState
- Parameters:
hashMap
- It contains supports for all values of a given variable.i
- it specifies the edge position.
-
sucDomToString
- Specified by:
sucDomToString
in classRegState
- Parameters:
successorNo
- - edge position.- Returns:
- It return the string representation of the values accepted by specified edge.
-
add
Description copied from class:RegState
It adds to domain values which are accepted by a given edge. -
updateSupport
Description copied from class:RegState
It updates a support if given state supports given value.- Specified by:
updateSupport
in classRegState
- Parameters:
edge
- information about support is stored here.v
- value for which support is looked for.- Returns:
- It returns true if state has an edge which supports given value.
-