public class MealyDHC<I,O> extends Object implements LearningAlgorithm.MealyLearner<I,O>, AccessSequenceTransformer<I>, GlobalSuffixLearner.GlobalSuffixLearnerMealy<I,O>, SupportsGrowingAlphabet<I>, Resumable<MealyDHCState<I,O>>
| Modifier and Type | Class and Description |
|---|---|
static class |
MealyDHC.BuilderDefaults |
GlobalSuffixLearner.GlobalSuffixLearnerDFA<I>, GlobalSuffixLearner.GlobalSuffixLearnerMealy<I,O>LearningAlgorithm.DFALearner<I>, LearningAlgorithm.MealyLearner<I,O>| Constructor and 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.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addAlphabetSymbol(I symbol) |
boolean |
addGlobalSuffixes(Collection<? extends Word<I>> newGlobalSuffixes) |
protected boolean |
addSuffixesUnchecked(Collection<? extends Word<I>> newSuffixes) |
Collection<Word<I>> |
getGlobalSuffixes() |
CompactMealy<I,O> |
getHypothesisModel() |
boolean |
isAccessSequence(Word<I> word) |
boolean |
refineHypothesis(DefaultQuery<I,Word<O>> ceQuery) |
void |
resume(MealyDHCState<I,O> state) |
void |
startLearning() |
MealyDHCState<I,O> |
suspend() |
Word<I> |
transformAccessSequence(Word<I> word) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitlongestASPrefixpublic MealyDHC(Alphabet<I> alphabet, MembershipOracle<I,Word<O>> oracle)
alphabet - the learning alphabetoracle - the learning membership oraclepublic MealyDHC(Alphabet<I> alphabet, MembershipOracle<I,Word<O>> oracle, GlobalSuffixFinder<? super I,? super Word<O>> suffixFinder, Collection<? extends Word<I>> initialSplitters)
alphabet - the learning alphabetoracle - the learning membership oraclesuffixFinder - the suffix finder to use for analyzing counterexamplesinitialSplitters - the initial set of splitters, null or an empty collection will result in the set of splitters
being initialized as the set of alphabet symbols (interpreted as Words)public Collection<Word<I>> getGlobalSuffixes()
getGlobalSuffixes in interface GlobalSuffixFeature<I>public boolean addGlobalSuffixes(Collection<? extends Word<I>> newGlobalSuffixes)
addGlobalSuffixes in interface GlobalSuffixFeature<I>protected boolean addSuffixesUnchecked(Collection<? extends Word<I>> newSuffixes)
public void startLearning()
startLearning in interface LearningAlgorithm<MealyMachine<?,I,?,O>,I,Word<O>>public boolean refineHypothesis(DefaultQuery<I,Word<O>> ceQuery)
refineHypothesis in interface LearningAlgorithm<MealyMachine<?,I,?,O>,I,Word<O>>public CompactMealy<I,O> getHypothesisModel()
getHypothesisModel in interface LearningAlgorithm<MealyMachine<?,I,?,O>,I,Word<O>>public void addAlphabetSymbol(I symbol)
addAlphabetSymbol in interface SupportsGrowingAlphabet<I>public MealyDHCState<I,O> suspend()
suspend in interface Resumable<MealyDHCState<I,O>>public void resume(MealyDHCState<I,O> state)
resume in interface Resumable<MealyDHCState<I,O>>public Word<I> transformAccessSequence(Word<I> word)
transformAccessSequence in interface AccessSequenceTransformer<I>public boolean isAccessSequence(Word<I> word)
isAccessSequence in interface AccessSequenceTransformer<I>Copyright © 2020. All rights reserved.