java.lang.Object
de.learnlib.algorithm.lambda.lstar.LLambdaDFA<I>
- All Implemented Interfaces:
AccessSequenceTransformer<I>,LearningAlgorithm<DFA<?,,I>, I, Boolean> LearningAlgorithm.DFALearner<I>,ObservationTableFeature<I,,Boolean> OTLearner<DFA<?,,I>, I, Boolean> OTLearner.OTLearnerDFA<I>,LearnerStateTracker,Resumable<LLambdaState<I,,Boolean>> SupportsGrowingAlphabet<I>,FiniteRepresentation
-
Nested Class Summary
Nested classes/interfaces inherited from interface de.learnlib.algorithm.LearningAlgorithm
LearningAlgorithm.DFALearner<I>, LearningAlgorithm.MealyLearner<I,O>, LearningAlgorithm.MooreLearner<I, O>, LearningAlgorithm.NFALearner<I> Nested classes/interfaces inherited from interface de.learnlib.datastructure.observationtable.OTLearner
OTLearner.OTLearnerDFA<I>, OTLearner.OTLearnerMealy<I,O>, OTLearner.OTLearnerMoore<I, O> -
Constructor Summary
ConstructorsConstructorDescriptionLLambdaDFA(Alphabet<I> sigma, MembershipOracle<I, Boolean> mqo) LLambdaDFA(Alphabet<I> sigma, MembershipOracle<I, Boolean> mqs, MembershipOracle<I, Boolean> ceqs) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddAlphabetSymbol(I symbol) Returns the current hypothesis model.getShortPrefixes(List<Boolean> rowData) booleanReturns whether the learning process has started yet.booleanrefineHypothesis(DefaultQuery<I, Boolean> counterexample) Triggers a refinement of the model by providing a counterexample.voidresume(LLambdaState<I, Boolean> state) Resume the data structure from a previously suspended point in time.rowForState(Word<I> input) intsize()voidStarts the model inference process, creating an initial hypothesis in the provided model object.suspend()Expose the state object.transformAccessSequence(Word<I> word) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface de.learnlib.AccessSequenceTransformer
isAccessSequence, longestASPrefixMethods inherited from interface de.learnlib.LearnerStateTracker
requireLearningProcessNotStarted, requireLearningProcessStartedMethods inherited from interface de.learnlib.algorithm.LearningAlgorithm
refineHypothesis, startLearningMethods inherited from interface de.learnlib.datastructure.observationtable.ObservationTableFeature
getObservationTable
-
Constructor Details
-
LLambdaDFA
-
LLambdaDFA
public LLambdaDFA(Alphabet<I> sigma, MembershipOracle<I, Boolean> mqs, MembershipOracle<I, Boolean> ceqs)
-
-
Method Details
-
size
public int size()- Specified by:
sizein interfaceFiniteRepresentation
-
rowForState
-
getHypothesisModel
Description copied from interface:LearningAlgorithmReturns the current hypothesis model.N.B.: By the contract of this interface, the model returned by this method should not be modified by external code (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.- Specified by:
getHypothesisModelin interfaceLearningAlgorithm<DFA<?,I>, I, Boolean> - Returns:
- the current hypothesis model.
-
transformAccessSequence
- Specified by:
transformAccessSequencein interfaceAccessSequenceTransformer<I>
-
addAlphabetSymbol
- Specified by:
addAlphabetSymbolin interfaceSupportsGrowingAlphabet<I>
-
startLearning
public void startLearning()Description copied from interface:LearningAlgorithmStarts the model inference process, creating an initial hypothesis in the provided model object.- Specified by:
startLearningin interfaceLearningAlgorithm<M extends SuffixOutput<I,D>, I, D>
-
refineHypothesis
Description copied from interface:LearningAlgorithmTriggers a refinement of the model by providing a counterexample. A counterexample is a query which exposes different behavior of the real SUL compared to the hypothesis.- Specified by:
refineHypothesisin interfaceLearningAlgorithm<M extends SuffixOutput<I,D>, I, D> - Parameters:
counterexample- the query which exposes diverging behavior, as posed to the real SUL (i.e. with the SULs output).- Returns:
trueif the counterexample triggered a refinement of the hypothesis,falseotherwise (i.e., it was no counterexample).
-
hasLearningProcessStarted
public boolean hasLearningProcessStarted()Description copied from interface:LearnerStateTrackerReturns whether the learning process has started yet.- Specified by:
hasLearningProcessStartedin interfaceLearnerStateTracker- Returns:
trueif the learning process has started,falseotherwise
-
getShortPrefixes
-
getObservationTable
- Specified by:
getObservationTablein interfaceObservationTableFeature<M extends SuffixOutput<I,D>, I>
-
suspend
Description copied from interface:ResumableExpose the state object.- Specified by:
suspendin interfaceResumable<M extends SuffixOutput<I,D>> - Returns:
- The state.
-
resume
Description copied from interface:ResumableResume the data structure from a previously suspended point in time.- Specified by:
resumein interfaceResumable<M extends SuffixOutput<I,D>> - Parameters:
state- The learner state.
-