Package de.learnlib.algorithm.dhc.mealy
Class MealyDHC<I,O>
- java.lang.Object
-
- de.learnlib.algorithm.dhc.mealy.MealyDHC<I,O>
-
- All Implemented Interfaces:
AccessSequenceTransformer<I>,GlobalSuffixLearner<MealyMachine<?,I,?,O>,I,Word<O>>,GlobalSuffixLearner.GlobalSuffixLearnerMealy<I,O>,LearningAlgorithm<MealyMachine<?,I,?,O>,I,Word<O>>,LearningAlgorithm.MealyLearner<I,O>,Resumable<MealyDHCState<I,O>>,SupportsGrowingAlphabet<I>
public class MealyDHC<I,O> extends Object implements LearningAlgorithm.MealyLearner<I,O>, AccessSequenceTransformer<I>, GlobalSuffixLearner.GlobalSuffixLearnerMealy<I,O>, SupportsGrowingAlphabet<I>, Resumable<MealyDHCState<I,O>>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface de.learnlib.algorithm.GlobalSuffixLearner
GlobalSuffixLearner.GlobalSuffixLearnerDFA<I extends Object>, GlobalSuffixLearner.GlobalSuffixLearnerMealy<I extends Object,O extends Object>
-
Nested classes/interfaces inherited from interface de.learnlib.algorithm.LearningAlgorithm
LearningAlgorithm.DFALearner<I extends Object>, LearningAlgorithm.MealyLearner<I extends Object,O extends Object>, LearningAlgorithm.MooreLearner<I extends Object,O extends Object>, LearningAlgorithm.NFALearner<I extends Object>
-
-
Constructor Summary
Constructors Constructor Description MealyDHC(Alphabet<I> alphabet, MembershipOracle<I,Word<O>> oracle)Constructor, provided for backwards compatibility reasons.MealyDHC(Alphabet<I> alphabet, MembershipOracle<I,Word<O>> oracle, GlobalSuffixFinder<? super I,? super Word<O>> suffixFinder, Collection<? extends Word<I>> initialSplitters)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddAlphabetSymbol(I symbol)booleanaddGlobalSuffixes(Collection<? extends Word<I>> newGlobalSuffixes)protected booleanaddSuffixesUnchecked(Collection<? extends Word<I>> newSuffixes)Collection<Word<I>>getGlobalSuffixes()CompactMealy<I,O>getHypothesisModel()booleanrefineHypothesis(DefaultQuery<I,Word<O>> ceQuery)voidresume(MealyDHCState<I,O> state)voidstartLearning()MealyDHCState<I,O>suspend()Word<I>transformAccessSequence(Word<I> word)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.learnlib.AccessSequenceTransformer
isAccessSequence, longestASPrefix
-
-
-
-
Constructor Detail
-
MealyDHC
public MealyDHC(Alphabet<I> alphabet, MembershipOracle<I,Word<O>> oracle)
Constructor, provided for backwards compatibility reasons.- Parameters:
alphabet- the learning alphabetoracle- the learning membership oracle
-
MealyDHC
public MealyDHC(Alphabet<I> alphabet, MembershipOracle<I,Word<O>> oracle, GlobalSuffixFinder<? super I,? super Word<O>> suffixFinder, Collection<? extends Word<I>> initialSplitters)
Constructor.- Parameters:
alphabet- the learning alphabetoracle- the learning membership oraclesuffixFinder- thesuffix finderto use for analyzing counterexamplesinitialSplitters- the initial set of splitters,nullor an empty collection will result in the set of splitters being initialized as the set of alphabet symbols (interpreted asWords)
-
-
Method Detail
-
getGlobalSuffixes
public Collection<Word<I>> getGlobalSuffixes()
- Specified by:
getGlobalSuffixesin interfaceGlobalSuffixLearner<MealyMachine<?,I,?,O>,I,Word<O>>
-
addGlobalSuffixes
public boolean addGlobalSuffixes(Collection<? extends Word<I>> newGlobalSuffixes)
- Specified by:
addGlobalSuffixesin interfaceGlobalSuffixLearner<MealyMachine<?,I,?,O>,I,Word<O>>
-
addSuffixesUnchecked
protected boolean addSuffixesUnchecked(Collection<? extends Word<I>> newSuffixes)
-
startLearning
public void startLearning()
- Specified by:
startLearningin interfaceLearningAlgorithm<MealyMachine<?,I,?,O>,I,Word<O>>
-
refineHypothesis
public boolean refineHypothesis(DefaultQuery<I,Word<O>> ceQuery)
- Specified by:
refineHypothesisin interfaceLearningAlgorithm<MealyMachine<?,I,?,O>,I,Word<O>>
-
getHypothesisModel
public CompactMealy<I,O> getHypothesisModel()
- Specified by:
getHypothesisModelin interfaceLearningAlgorithm<MealyMachine<?,I,?,O>,I,Word<O>>
-
addAlphabetSymbol
public void addAlphabetSymbol(I symbol)
- Specified by:
addAlphabetSymbolin interfaceSupportsGrowingAlphabet<I>
-
resume
public void resume(MealyDHCState<I,O> state)
-
transformAccessSequence
public Word<I> transformAccessSequence(Word<I> word)
- Specified by:
transformAccessSequencein interfaceAccessSequenceTransformer<I>
-
-