Package owl.automaton.acceptance
Class RabinAcceptance
- java.lang.Object
-
- owl.automaton.acceptance.OmegaAcceptance
-
- owl.automaton.acceptance.GeneralizedRabinAcceptance
-
- owl.automaton.acceptance.RabinAcceptance
-
public final class RabinAcceptance extends GeneralizedRabinAcceptance
This class represents a Rabin acceptance. It consists of multipleGeneralizedRabinAcceptance.RabinPairs, which in turn basically comprise a (potentially lazily allocated) Fin and Inf set. A Rabin pair is accepting, if it's Inf set is seen infinitely often and it's Fin set is seen finitely often. The corresponding Rabin acceptance is accepting if any Rabin pair is accepting. Note that therefore a Rabin acceptance without any pairs rejects every word.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classRabinAcceptance.Builder-
Nested classes/interfaces inherited from class owl.automaton.acceptance.GeneralizedRabinAcceptance
GeneralizedRabinAcceptance.RabinPair
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanisWellFormedEdge(Edge<?> edge)This method determines if the given edge is a well defined edge for this acceptance condition.Stringname()List<Object>nameExtra()static RabinAcceptanceof(int count)static RabinAcceptanceof(List<GeneralizedRabinAcceptance.RabinPair> pairs)static RabinAcceptanceof(jhoafparser.ast.BooleanExpression<jhoafparser.ast.AtomAcceptance> expression)static RabinAcceptanceof(GeneralizedRabinAcceptance.RabinPair... pairs)-
Methods inherited from class owl.automaton.acceptance.GeneralizedRabinAcceptance
acceptanceSets, acceptingSet, booleanExpression, filter, pairs, rejectingSet
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from class owl.automaton.acceptance.OmegaAcceptance
isWellFormedAutomaton, toString
-
-
-
-
Method Detail
-
of
public static RabinAcceptance of(int count)
-
of
public static RabinAcceptance of(List<GeneralizedRabinAcceptance.RabinPair> pairs)
-
of
public static RabinAcceptance of(GeneralizedRabinAcceptance.RabinPair... pairs)
-
of
public static RabinAcceptance of(jhoafparser.ast.BooleanExpression<jhoafparser.ast.AtomAcceptance> expression)
-
name
public String name()
- Overrides:
namein classGeneralizedRabinAcceptance
-
nameExtra
public List<Object> nameExtra()
- Overrides:
nameExtrain classGeneralizedRabinAcceptance
-
isWellFormedEdge
public boolean isWellFormedEdge(Edge<?> edge)
Description copied from class:OmegaAcceptanceThis method determines if the given edge is a well defined edge for this acceptance condition. E.g. a parity condition might check that the edge has at most one acceptance index and the index is less than the colour count.- Overrides:
isWellFormedEdgein classGeneralizedRabinAcceptance- Parameters:
edge- The edge to be checked.- Returns:
- Whether the edge acceptance is well defined.
-
-