Package de.learnlib.filter.cache.moore
Class MooreCacheConsistencyTest<I,O>
- java.lang.Object
-
- de.learnlib.filter.cache.moore.MooreCacheConsistencyTest<I,O>
-
- Type Parameters:
I
- input symbol classO
- output symbol class
- All Implemented Interfaces:
EquivalenceOracle<MooreMachine<?,I,?,O>,I,Word<O>>
,EquivalenceOracle.MooreEquivalenceOracle<I,O>
public class MooreCacheConsistencyTest<I,O> extends Object implements EquivalenceOracle.MooreEquivalenceOracle<I,O>
AnEquivalenceOracle
that tests a hypothesis for consistency with the contents of aMooreCacheOracle
.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface de.learnlib.oracle.EquivalenceOracle
EquivalenceOracle.DFAEquivalenceOracle<I>, EquivalenceOracle.MealyEquivalenceOracle<I,O>, EquivalenceOracle.MooreEquivalenceOracle<I,O>
-
-
Constructor Summary
Constructors Constructor Description MooreCacheConsistencyTest(IncrementalMooreBuilder<I,O> incMoore)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description @Nullable DefaultQuery<I,Word<O>>
findCounterExample(MooreMachine<?,I,?,O> hypothesis, Collection<? extends I> inputs)
Searches for a counterexample disproving the subjected hypothesis.
-
-
-
Constructor Detail
-
MooreCacheConsistencyTest
public MooreCacheConsistencyTest(IncrementalMooreBuilder<I,O> incMoore)
Constructor.- Parameters:
incMoore
- theIncrementalMooreBuilder
data structure underlying the cache
-
-
Method Detail
-
findCounterExample
public @Nullable DefaultQuery<I,Word<O>> findCounterExample(MooreMachine<?,I,?,O> hypothesis, Collection<? extends I> inputs)
Description copied from interface:EquivalenceOracle
Searches for a counterexample disproving the subjected hypothesis. A counterexample is query which, when performed on the SUL, yields a different output than what was predicted by the hypothesis. If no counterexample could be found (this does not necessarily mean that none exists),null
is returned.- Specified by:
findCounterExample
in interfaceEquivalenceOracle<MooreMachine<?,I,?,O>,I,Word<O>>
- Parameters:
hypothesis
- the conjectureinputs
- the set of inputs to consider, this should be a subset of the input alphabet of the provided hypothesis- Returns:
- a query exposing different behavior, or
null
if no counterexample could be found. In case a non-null
value is returned, the output field in theDefaultQuery
contains the SUL output for the respective query.
-
-