Interface PartialTransitionAnalyzer<S,I>

Type Parameters:
S - (hypothesis) state type
I - input alphabet type
All Known Implementing Classes:
ADTLearner

public interface PartialTransitionAnalyzer<S,I>
During the refinement process of the hypothesis, ADS/Ts may be computed on partially defined automata. These computations may want to skip undefined transitions (as closing them results in resets which we want to omit) and only determine the information if necessary. This interface mediates between the learner and ADS/T computations by defining the basic forms of communication.
  • Field Details

  • Method Details

    • isTransitionDefined

      boolean isTransitionDefined(S state, I input)
      Check whether the transition in question is defined or not.
      Parameters:
      state - the (source) state of the transition in question
      input - the input symbol of the transition in question
      Returns:
      true if the transition (and thus the successor/output) is defined, false otherwise
    • closeTransition

      void closeTransition(S state, I input)
      Determine the successor/output of the transition in question (which is usually achieved by sifting the corresponding long-prefix through the ADT).
      Parameters:
      state - the (source) state of the transition in question
      input - the input symbol of the transition in question
      Throws:
      PartialTransitionAnalyzer.HypothesisModificationException - if closing the transition (sifting in the ADT) discovered a new hypothesis state and thus potentially invalidates previously observed behavior