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>
- All Known Implementing Classes:
AbstractAutomatonLStar
,AbstractExtensibleAutomatonLStar
,AbstractLStar
,ClassicLStarDFA
,ClassicLStarMealy
,ClassicLStarMoore
,ExtensibleLStarDFA
,ExtensibleLStarMealy
,ExtensibleLStarMoore
,LStarBaseAdapterDFA
,LStarBaseAdapterMealy
,MalerPnueliDFA
,MalerPnueliMealy
,MalerPnueliMoore
,MealyDHC
,RivestSchapireAdapterDFA
,RivestSchapireAdapterMealy
,RivestSchapireDFA
,RivestSchapireMealy
,RivestSchapireMoore
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 interface
GlobalSuffixLearner.GlobalSuffixLearnerDFA<I>
static interface
GlobalSuffixLearner.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 boolean
addGlobalSuffixes(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:
true
if a refinement was triggered by adding the global suffixes,false otherwise
.
-
-