Module de.learnlib.algorithm.adt
Package de.learnlib.algorithm.adt.api
Interface PartialTransitionAnalyzer<S,I>
- Type Parameters:
S- (hypothesis) state typeI- 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.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic classA helper exception to interrupt computations on an invalid hypothesis. -
Field Summary
FieldsModifier and TypeFieldDescriptionGlobal exception instance to avoid (unnecessary) re-instantiation. -
Method Summary
Modifier and TypeMethodDescriptionvoidcloseTransition(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).booleanisTransitionDefined(S state, I input) Check whether the transition in question is defined or not.
-
Field Details
-
HYPOTHESIS_MODIFICATION_EXCEPTION
static final PartialTransitionAnalyzer.HypothesisModificationException HYPOTHESIS_MODIFICATION_EXCEPTIONGlobal exception instance to avoid (unnecessary) re-instantiation.
-
-
Method Details
-
isTransitionDefined
Check whether the transition in question is defined or not.- Parameters:
state- the (source) state of the transition in questioninput- the input symbol of the transition in question- Returns:
trueif the transition (and thus the successor/output) is defined,falseotherwise
-
closeTransition
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 questioninput- 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
-