|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectde.ls5.jlearn.algorithms.dhcmodular.DHCModular
public class DHCModular
| Constructor Summary | |
|---|---|
DHCModular()
|
|
DHCModular(Alphabet startalphabet,
Oracle oracle)
|
|
| Method Summary | |
|---|---|
boolean |
addCounterExample(Word example,
Word output)
Take an counterexample, determine what prefix makes the difference, add that splitter to the alphabet, and reset the hypothesis automaton |
int |
addLetter(Symbol letter)
Add given Symbol to the internal Alphabet of this
Learner. |
void |
addSuffix(Word suffix)
Add given Word to the internal set of suffixes of this
Learner. |
Class<? extends Plottable>[] |
getFormats()
returns an array of currently available plotable formats. |
Automaton |
getResult()
Provides the current hypothesis as Automaton object |
int |
getSigma()
Return the size of the internal Alphabet this Learner
uses to construct a hypothesis. |
void |
learn()
Starts the learning algorithm, returns once a hypothesis has been constructed |
String |
plotAsDot()
returns a dot view on the plotable objejt |
de.ls5.layouter.api.model.Graph |
plotAsGraph()
Will plot this polatbale as Graph |
String |
plotAsString()
Will plot this polatbale as String |
void |
setAlphabet(Alphabet alphabet)
Specifies the Alphabet used for construction of the hypothesis |
void |
setEquivalenceConcept(EquivalenceConcept ec)
|
void |
setMaximumStatesInBatch(int maxstates)
|
void |
setOracle(Oracle oracle)
Set the Oracle to be queried during the learning process |
void |
setOutputSymbolCreator(OutputSymbolCreator osc)
|
void |
setQueryCreator(QueryCreator qc)
|
void |
setQueueGuard(QueueGuard guard)
|
void |
setSplitterCreator(SplitterCreator splitterCreator)
Setter for the SplitterCreator, which encapsulates logic for
dealing with counterexamples (logic that, e.g., determines a suffix of
the counterexample that witnesses unequality of states, thus "splitting"
a state in the hypothesis). |
void |
setTransitionSelector(TransitionSelector ts)
|
String |
toDot()
return current state of data structure as dot text. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public DHCModular()
public DHCModular(Alphabet startalphabet,
Oracle oracle)
| Method Detail |
|---|
public final void setOracle(Oracle oracle)
LearnerOracle to be queried during the learning process
setOracle in interface Learneroracle - Oracle to be queriedpublic final void setAlphabet(Alphabet alphabet)
LearnerAlphabet used for construction of the hypothesis
setAlphabet in interface Learneralphabet - Alphabet to be used for constructionpublic void setSplitterCreator(SplitterCreator splitterCreator)
LearnerSplitterCreator, which encapsulates logic for
dealing with counterexamples (logic that, e.g., determines a suffix of
the counterexample that witnesses unequality of states, thus "splitting"
a state in the hypothesis).
setSplitterCreator in interface LearnersplitterCreator - instance of SplitterCreator to be used for processing counterexamplespublic Automaton getResult()
LearnerAutomaton object
getResult in interface Learner
public void learn()
throws LearningException
Learner
learn in interface LearnerLearningException - if any learning-related exception occurs an instance of this exception will be thrown
public boolean addCounterExample(Word example,
Word output)
throws ObservationConflictException
addCounterExample in interface Learnerexample - counterexample provided by the equivalence oracleoutput - output produced by the SUT when processing the counterexample
ObservationConflictException - exception that is thrown if the counterexample and its output diverges from already observed behaviorpublic int addLetter(Symbol letter)
LearnerSymbol to the internal Alphabet of this
Learner.
addLetter in interface Learnerletter - Symbol to be additionally considered when construction a hypothesis
Alphabet this letter was added topublic int getSigma()
LearnerAlphabet this Learner
uses to construct a hypothesis.
getSigma in interface Learnerpublic void setEquivalenceConcept(EquivalenceConcept ec)
public void setOutputSymbolCreator(OutputSymbolCreator osc)
public void setQueryCreator(QueryCreator qc)
public void setTransitionSelector(TransitionSelector ts)
public void setMaximumStatesInBatch(int maxstates)
public void setQueueGuard(QueueGuard guard)
public void addSuffix(Word suffix)
LearnerWord to the internal set of suffixes of this
Learner.
addSuffix in interface Learnersuffix - Word to be additionally considered when constructing a hypothesispublic String toDot()
ObservableDataStructure
toDot in interface ObservableDataStructurepublic Class<? extends Plottable>[] getFormats()
Plottable
getFormats in interface Plottablepublic String plotAsDot()
DotPlottable
plotAsDot in interface DotPlottablepublic String plotAsString()
TextPlottable
plotAsString in interface TextPlottablepublic de.ls5.layouter.api.model.Graph plotAsGraph()
GraphPlottable
plotAsGraph in interface GraphPlottable
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||