public class ExtensibleLStarMealy<I,O> extends ExtensibleAutomatonLStar<MealyMachine<?,I,?,O>,I,Word<O>,Integer,CompactMealyTransition<O>,Void,O,CompactMealy<I,O>> implements OTLearner.OTLearnerMealy<I,O>
ExtensibleAutomatonLStar.BuilderDefaultsOTLearner.OTLearnerDFA<I>, OTLearner.OTLearnerMealy<I,O>LearningAlgorithm.DFALearner<I>, LearningAlgorithm.MealyLearner<I,O>GlobalSuffixLearner.GlobalSuffixLearnerDFA<I>, GlobalSuffixLearner.GlobalSuffixLearnerMealy<I,O>cexHandler, closingStrategy, initialPrefixes, initialSuffixesinternalHyp, stateInfosalphabet, oracle, table| Constructor and Description |
|---|
ExtensibleLStarMealy(Alphabet<I> alphabet,
MembershipOracle<I,Word<O>> oracle,
List<Word<I>> initialPrefixes,
List<Word<I>> initialSuffixes,
ObservationTableCEXHandler<? super I,? super Word<O>> cexHandler,
ClosingStrategy<? super I,? super Word<O>> closingStrategy) |
ExtensibleLStarMealy(Alphabet<I> alphabet,
MembershipOracle<I,Word<O>> oracle,
List<Word<I>> initialSuffixes,
ObservationTableCEXHandler<? super I,? super Word<O>> cexHandler,
ClosingStrategy<? super I,? super Word<O>> closingStrategy) |
| Modifier and Type | Method and Description |
|---|---|
protected MealyMachine<?,I,?,O> |
exposeInternalHypothesis() |
CompactMealy<I,O> |
getHypothesisModel()
Returns the current hypothesis model.
|
protected SuffixOutput<I,Word<O>> |
hypothesisOutput() |
protected List<Word<I>> |
initialSuffixes()
Returns the list of initial suffixes which are used to initialize the table.
|
protected Void |
stateProperty(Row<I> stateRow)
Derives a state property from the corresponding row.
|
protected O |
transitionProperty(Row<I> stateRow,
int inputIdx)
Derives a transition property from the corresponding transition.
|
protected void |
updateInternalHypothesis()
Performs the L*-style hypothesis construction.
|
protected void |
updateOutputs() |
initialPrefixes, refineHypothesisInternal, selectClosingRowscreateState, doRefineHypothesis, setTransition, startLearningaddGlobalSuffixes, analyzeInconsistency, completeConsistentTable, getGlobalSuffixes, getObservationTable, incorporateCounterExample, refineHypothesisclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitrefineHypothesis, startLearninggetObservationTablepublic ExtensibleLStarMealy(Alphabet<I> alphabet, MembershipOracle<I,Word<O>> oracle, List<Word<I>> initialSuffixes, ObservationTableCEXHandler<? super I,? super Word<O>> cexHandler, ClosingStrategy<? super I,? super Word<O>> closingStrategy)
protected void updateInternalHypothesis()
AbstractAutomatonLStarAbstractAutomatonLStar.stateProperty(Row) and
AbstractAutomatonLStar.transitionProperty(Row, int) methods are used to derive the
respective properties.updateInternalHypothesis in class AbstractAutomatonLStar<MealyMachine<?,I,?,O>,I,Word<O>,Integer,CompactMealyTransition<O>,Void,O,CompactMealy<I,O>>protected Void stateProperty(Row<I> stateRow)
AbstractAutomatonLStarstateProperty in class AbstractAutomatonLStar<MealyMachine<?,I,?,O>,I,Word<O>,Integer,CompactMealyTransition<O>,Void,O,CompactMealy<I,O>>stateRow - the row for which the state is createdprotected O transitionProperty(Row<I> stateRow, int inputIdx)
AbstractAutomatonLStar
N.B.: Not the transition row is passed to this method, but the
row for the outgoing state. The transition row can be retrieved
using Row.getSuccessor(int).
transitionProperty in class AbstractAutomatonLStar<MealyMachine<?,I,?,O>,I,Word<O>,Integer,CompactMealyTransition<O>,Void,O,CompactMealy<I,O>>stateRow - the row for the source stateinputIdx - the index of the input symbol to considerprotected List<Word<I>> initialSuffixes()
AbstractLStarinitialSuffixes in class ExtensibleAutomatonLStar<MealyMachine<?,I,?,O>,I,Word<O>,Integer,CompactMealyTransition<O>,Void,O,CompactMealy<I,O>>protected void updateOutputs()
protected MealyMachine<?,I,?,O> exposeInternalHypothesis()
exposeInternalHypothesis in class AbstractAutomatonLStar<MealyMachine<?,I,?,O>,I,Word<O>,Integer,CompactMealyTransition<O>,Void,O,CompactMealy<I,O>>public CompactMealy<I,O> getHypothesisModel()
LearningAlgorithm
N.B.: By the contract of this interface, the model returned by this method may not be
modified (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.
Please note that it should be illegal to invoke this method before an initial invocation
of LearningAlgorithm.startLearning().
getHypothesisModel in interface LearningAlgorithm<MealyMachine<?,I,?,O>,I,Word<O>>getHypothesisModel in class AbstractAutomatonLStar<MealyMachine<?,I,?,O>,I,Word<O>,Integer,CompactMealyTransition<O>,Void,O,CompactMealy<I,O>>protected SuffixOutput<I,Word<O>> hypothesisOutput()
hypothesisOutput in class AbstractLStar<MealyMachine<?,I,?,O>,I,Word<O>>Copyright © 2015. All rights reserved.