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 Classes Modifier and Type Interface Description static class
PartialTransitionAnalyzer.HypothesisModificationException
A helper exception to interrupt computations on an invalid hypothesis.
-
Field Summary
Fields Modifier and Type Field Description static PartialTransitionAnalyzer.HypothesisModificationException
HYPOTHESIS_MODIFICATION_EXCEPTION
Global exception instance to avoid (unnecessary) re-instantiation.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description 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).boolean
isTransitionDefined(S state, I input)
Check whether the transition in question is defined or not.
-
-
-
Field Detail
-
HYPOTHESIS_MODIFICATION_EXCEPTION
static final PartialTransitionAnalyzer.HypothesisModificationException HYPOTHESIS_MODIFICATION_EXCEPTION
Global exception instance to avoid (unnecessary) re-instantiation.
-
-
Method Detail
-
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 questioninput
- 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 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
-
-