de.ls5.jlearn.splittercreators
Class ShahbazStyleSplitterCreator

java.lang.Object
  extended by de.ls5.jlearn.splittercreators.ShahbazStyleSplitterCreator
All Implemented Interfaces:
SplitterCreator

public class ShahbazStyleSplitterCreator
extends Object
implements SplitterCreator

Author:
fh

Constructor Summary
ShahbazStyleSplitterCreator()
           
 
Method Summary
 boolean applyGlobally()
          Indicates that a set of suffixes is ought to be applied globally (to all states or components - or whatever data structure is used).
 List<State> applyToStates()
          Return a list of states from the hypothesis which are identified to be affected by splitters formely having been created using the createSplitters-method.
 List<Word> createSplitters(Word counterexample, Word output, Oracle o, Automaton hypothesis)
          Determine splitters that reveal diverging behavior between the learner's hypothesis and the target system.
 void setOracle(Oracle o)
          allows to set the oracle explicitly.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ShahbazStyleSplitterCreator

public ShahbazStyleSplitterCreator()
Method Detail

createSplitters

public List<Word> createSplitters(Word counterexample,
                                  Word output,
                                  Oracle o,
                                  Automaton hypothesis)
Description copied from interface: SplitterCreator
Determine splitters that reveal diverging behavior between the learner's hypothesis and the target system. Those splitters are used by the learning algorithm to split states which formerly have been considered to be one state.

Specified by:
createSplitters in interface SplitterCreator
Parameters:
counterexample - counterexample provided by the equivalence oracle
output - output of the target system in reaction to the target system
o - connector to the target system
hypothesis - current hypothesis of the learner
Returns:
list of sequences of input symbols revealing divering behavior

setOracle

public void setOracle(Oracle o)
Description copied from interface: SplitterCreator
allows to set the oracle explicitly. It is expected that when the oracle is set explicitly, this will override the oracle that is set by the learning algorithm. This is useful to count the queries used by the splittercreator seperately.

Specified by:
setOracle in interface SplitterCreator

applyToStates

public List<State> applyToStates()
Description copied from interface: SplitterCreator
Return a list of states from the hypothesis which are identified to be affected by splitters formely having been created using the createSplitters-method.

Specified by:
applyToStates in interface SplitterCreator
Returns:
list of states

applyGlobally

public boolean applyGlobally()
Description copied from interface: SplitterCreator
Indicates that a set of suffixes is ought to be applied globally (to all states or components - or whatever data structure is used). In case applyGlobally() is false, applyToStates() may be considered.

Specified by:
applyGlobally in interface SplitterCreator
Returns:
true if suffixes should be applied globally


Copyright © 2011. All Rights Reserved.