Package owl.automaton

Class AbstractMemoizingAutomaton.PartitionedEdgeTreeImplementation<A,​B,​C extends EmersonLeiAcceptance>

  • Type Parameters:
    A - the first state type
    B - the second state type
    C - the acceptance condition type
    All Implemented Interfaces:
    Automaton<Either<A,​B>,​C>
    Enclosing class:
    AbstractMemoizingAutomaton<S,​A extends EmersonLeiAcceptance>

    public abstract static class AbstractMemoizingAutomaton.PartitionedEdgeTreeImplementation<A,​B,​C extends EmersonLeiAcceptance>
    extends AbstractMemoizingAutomaton<Either<A,​B>,​C>
    This class provides a skeletal implementation of the Automaton interface to minimize the effort required to implement this interface.

    It assumes that the automaton is immutable, i.e., the set of initial states, the transition relation, and the acceptance condition is fixed. It makes use of this assumption by caching the set of states and by memoizing the transition relation as MtBdd.

    This class assumes that there are two separate parts of the automaton with state type A and B. Runs can move from A to B but not the other way.