|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectrwth.i2.ltlrv.formula.base.AbstractFormula
rwth.i2.ltlrv.afastate.base.AbstractAFAState
rwth.i2.ltlrv.afastate.base.BinaryAFAState
rwth.i2.ltlrv.afastate.impl.Release
public class Release
Release - Implements the Release operator in LTL. Release and Until subformulae are the essence of an AFA representation of a LTL formula. They represent the actual states of an AFA.s
Until
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface rwth.i2.ltlrv.afastate.interfaze.IAFAState |
---|
IAFAState.ValidationException, IAFAState.VariableKind |
Field Summary |
---|
Fields inherited from class rwth.i2.ltlrv.afastate.base.BinaryAFAState |
---|
subformula1, subformula2, substate1, substate2 |
Fields inherited from class rwth.i2.ltlrv.formula.base.AbstractFormula |
---|
factory |
Constructor Summary | |
---|---|
Release(IFormula subFormula1,
IFormula subFormula2)
Constructs a new formula with the given subformulae. |
Method Summary | |
---|---|
void |
doTransition(Set<String> context,
PropositionSet currentProps,
WeakValuesMap<String,Object> currentBinding,
Set<Set<IAFAState>> result)
Performs the actual transition based on the current context. |
boolean |
isFinalStateInAFA()
Returns true if this formula represents a final
state in the AFA. |
IAFAState |
negationNormalForm()
Produces a formula in negation normal form, where negations occur only in front of propositions. This form also holds only IUntil, IRelease, IAnd, IOr, INot, IProposition subformulae. This must return a copy of the original formula. The major work is done in Not.negationNormalForm() . |
void |
providesNeg(Set<String> result)
This returns the set of negatively provided variables at the current temporal levels. |
void |
providesPos(Set<String> result)
This returns the set of positively provided variables at the current temporal levels. |
IAFAState |
reconstruct(IFormula t1,
IFormula t2)
Creates a formula with the same operator as this |
String |
symbol()
Returns the symbol for this term constructor. |
String |
toString()
|
Methods inherited from class rwth.i2.ltlrv.afastate.base.BinaryAFAState |
---|
equals, getSubformula1, getSubformula2, hashCode, requires, specializeBindings, unboundVariablesAtCurrentJoinpoint, validate |
Methods inherited from class rwth.i2.ltlrv.afastate.base.AbstractAFAState |
---|
provides, transition, updateContext, validate |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface rwth.i2.ltlrv.formula.interfaze.IBinaryTerm |
---|
getSubformula1, getSubformula2 |
Methods inherited from interface rwth.i2.ltlrv.afastate.interfaze.IAFAState |
---|
provides, requires, specializeBindings, transition, unboundVariablesAtCurrentJoinpoint, validate |
Constructor Detail |
---|
public Release(IFormula subFormula1, IFormula subFormula2)
subFormula1
- left subformulasubFormula2
- right subformulaMethod Detail |
---|
public IAFAState negationNormalForm()
Not.negationNormalForm()
.
negationNormalForm
in interface IFormula
negationNormalForm
in class BinaryAFAState
IUntil
,
IRelease
,
IAnd
,
IOr
,
IProposition
public boolean isFinalStateInAFA()
true
if this formula represents a final
state in the AFA. This is the case if the formula is either
a Release subformula, TT, or a boolean combination of
subformulae evaluating to true
.
isFinalStateInAFA
in interface IAFAState
true
if this formula represents a final
state in the AFAIRelease
,
ITT
public void doTransition(Set<String> context, PropositionSet currentProps, WeakValuesMap<String,Object> currentBinding, Set<Set<IAFAState>> result)
doTransition
in class AbstractAFAState
context
- @see #transition(Set, PropositionSet, WeakValuesMap, Set)currentProps
- @see #transition(Set, PropositionSet, WeakValuesMap, Set)currentBinding
- @see #transition(Set, PropositionSet, WeakValuesMap, Set)result
- @see #transition(Set, PropositionSet, WeakValuesMap, Set)IAFAState.transition(Set, PropositionSet, WeakValuesMap, Set)
,
AbstractAFAState.transition(Set, PropositionSet, WeakValuesMap, Set)
,
AbstractAFAState.updateContext(Set)
public void providesPos(Set<String> result)
providesPos( phi /\ psi ) = providesPos( phi ) join providesPos( psi ) providesPos( phi \/ psi ) = providesPos( phi ) intersect providesPos( psi ) providesPos( phi R psi ) = providesPos( (psi /\ phi) \/ (psi /\ X(phi R psi)) ) = providesPos( psi ) providesPos( phi U psi ) = providesPos( psi \/ (phi /\ X(phi U psi) ) = providesPos( psi ) intersect providesPos( phi ) providesPos( X phi ) = emptyset providesPos( !prop ) = emptyset providesPos( prop ) = provided variables of prop
providesPos
in interface IAFAState
result
- The result will be placed here.public void providesNeg(Set<String> result)
providesNeg( phi /\ psi ) = providesNeg( phi ) intersect providesNeg( psi ) providesNeg( phi \/ psi ) = providesNeg( phi ) join providesNeg( psi ) providesNeg( phi R psi ) = providesNeg( psi ) intersect providesNeg( phi ) providesNeg( phi U psi ) = providesNeg( psi ) providesNeg( X phi ) = emptyset providesNeg( !prop ) = provided variables of prop providesNeg( prop ) = emptyset
providesNeg
in interface IAFAState
result
- The result will be placed here.public IAFAState reconstruct(IFormula t1, IFormula t2)
this
but different subformulae. This is used for recursion with
nondestructive updates.
- Specified by:
reconstruct
in interface IBinaryAFAState
- Parameters:
t1
- left subformulat2
- right subformula
- Returns:
- the new instance
public String symbol()
symbol
in interface IFormula
public String toString()
toString
in class BinaryAFAState
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |