Package de.learnlib.algorithm
Interface GlobalSuffixLearner<M,I,D>
-
- Type Parameters:
M- hypothesis model typeI- input symbol typeD- output domain type
- All Superinterfaces:
LearningAlgorithm<M,I,D>
- All Known Subinterfaces:
GlobalSuffixLearner.GlobalSuffixLearnerDFA<I>,GlobalSuffixLearner.GlobalSuffixLearnerMealy<I,O>
public interface GlobalSuffixLearner<M,I,D> extends LearningAlgorithm<M,I,D>
Common interface for learning algorithms that use a global suffix set. These are mostly algorithms using an observation table, such as Dana Angluin's L* and its derivatives.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceGlobalSuffixLearner.GlobalSuffixLearnerDFA<I>static interfaceGlobalSuffixLearner.GlobalSuffixLearnerMealy<I,O>-
Nested classes/interfaces inherited from interface de.learnlib.algorithm.LearningAlgorithm
LearningAlgorithm.DFALearner<I>, LearningAlgorithm.MealyLearner<I,O>, LearningAlgorithm.MooreLearner<I,O>, LearningAlgorithm.NFALearner<I>
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description booleanaddGlobalSuffixes(Collection<? extends Word<I>> globalSuffixes)Add the provided suffixes to the collection of global suffixes.Collection<Word<I>>getGlobalSuffixes()Retrieves the global suffixes of this learner.-
Methods inherited from interface de.learnlib.algorithm.LearningAlgorithm
getHypothesisModel, refineHypothesis, startLearning
-
-
-
-
Method Detail
-
getGlobalSuffixes
Collection<Word<I>> getGlobalSuffixes()
Retrieves the global suffixes of this learner. Calling this method beforeLearningAlgorithm.startLearning()should return an empty collection.The return value should not be modified; attempting to do so may result in an
UnsupportedOperationException. It is the implementation's responsibility to ensure attempted modifications do not corrupt the learner's internal state.- Returns:
- the global suffixes used by this algorithm
-
addGlobalSuffixes
boolean addGlobalSuffixes(Collection<? extends Word<I>> globalSuffixes)
Add the provided suffixes to the collection of global suffixes. As this method is designed to possibly trigger a refinement, it is illegal to invoke it beforeLearningAlgorithm.startLearning()has been called.The implementation may choose to (but is not required to) omit suffixes which are already present (that is, manage the global suffixes as a proper set).
- Parameters:
globalSuffixes- the global suffixes to add- Returns:
trueif a refinement was triggered by adding the global suffixes,false otherwise.
-
-