Class OPLearnerMoore<I,O>
- java.lang.Object
-
- de.learnlib.algorithm.observationpack.AbstractOPLearner<MooreMachine<?,I,?,O>,I,Word<O>,O,Void>
-
- de.learnlib.algorithm.observationpack.moore.OPLearnerMoore<I,O>
-
- Type Parameters:
I
- input symbol typeO
- output symbol type
- All Implemented Interfaces:
LearningAlgorithm<MooreMachine<?,I,?,O>,I,Word<O>>
,LearningAlgorithm.MooreLearner<I,O>
,Resumable<OPLearnerState<I,Word<O>,O,Void>>
,SupportsGrowingAlphabet<I>
public class OPLearnerMoore<I,O> extends AbstractOPLearner<MooreMachine<?,I,?,O>,I,Word<O>,O,Void> implements LearningAlgorithm.MooreLearner<I,O>
AMooreMachine
-based specialization of the DT learner.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class de.learnlib.algorithm.observationpack.AbstractOPLearner
AbstractOPLearner.BuilderDefaults
-
Nested classes/interfaces inherited from interface de.learnlib.algorithm.LearningAlgorithm
LearningAlgorithm.DFALearner<I>, LearningAlgorithm.MealyLearner<I,O>, LearningAlgorithm.MooreLearner<I,O>, LearningAlgorithm.NFALearner<I>
-
-
Constructor Summary
Constructors Constructor Description OPLearnerMoore(Alphabet<I> alphabet, MembershipOracle<I,Word<O>> oracle, LocalSuffixFinder<? super I,? super Word<O>> suffixFinder, boolean repeatedCounterexampleEvaluation)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MooreMachine<?,I,?,O>
getHypothesisModel()
Returns the current hypothesis model.protected @Nullable Query<I,Word<O>>
spQuery(HState<I,Word<O>,O,Void> state)
protected @Nullable Query<I,Word<O>>
tpQuery(HTransition<I,Word<O>,O,Void> transition)
-
Methods inherited from class de.learnlib.algorithm.observationpack.AbstractOPLearner
addAlphabetSymbol, createState, getDiscriminationTree, getHypothesisDS, initializeState, refineHypothesis, refineHypothesisSingle, resume, startLearning, suspend, updateHypothesis, updateTransitions
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.learnlib.algorithm.LearningAlgorithm
refineHypothesis, startLearning
-
-
-
-
Constructor Detail
-
OPLearnerMoore
public OPLearnerMoore(Alphabet<I> alphabet, MembershipOracle<I,Word<O>> oracle, LocalSuffixFinder<? super I,? super Word<O>> suffixFinder, boolean repeatedCounterexampleEvaluation)
-
-
Method Detail
-
spQuery
protected @Nullable Query<I,Word<O>> spQuery(HState<I,Word<O>,O,Void> state)
- Specified by:
spQuery
in classAbstractOPLearner<MooreMachine<?,I,?,O>,I,Word<O>,O,Void>
-
tpQuery
protected @Nullable Query<I,Word<O>> tpQuery(HTransition<I,Word<O>,O,Void> transition)
- Specified by:
tpQuery
in classAbstractOPLearner<MooreMachine<?,I,?,O>,I,Word<O>,O,Void>
-
getHypothesisModel
public MooreMachine<?,I,?,O> getHypothesisModel()
Description copied from interface:LearningAlgorithm
Returns the current hypothesis model.N.B.: By the contract of this interface, the model returned by this method may not be modified (i.e., M generally should refer to an immutable interface), and its validity is retained only until the next invocation of
LearningAlgorithm.refineHypothesis(DefaultQuery)
. If older hypotheses have to be maintained, a copy of the returned model must be made.Please note that it should be illegal to invoke this method before an initial invocation of
LearningAlgorithm.startLearning()
.- Specified by:
getHypothesisModel
in interfaceLearningAlgorithm<MooreMachine<?,I,?,O>,I,Word<O>>
- Returns:
- the current hypothesis model.
-
-