Package de.learnlib.oracle.property
Class LoggingPropertyOracle<I,A extends Output<I,D>,P,D>
- java.lang.Object
-
- de.learnlib.oracle.property.LoggingPropertyOracle<I,A,P,D>
-
- Type Parameters:
I- the input typeA- the automaton typeP- the property typeD- the output type
- All Implemented Interfaces:
EquivalenceOracle<A,I,D>,InclusionOracle<A,I,D>,PropertyOracle<I,A,P,D>
- Direct Known Subclasses:
LoggingPropertyOracle.DFALoggingPropertyOracle,LoggingPropertyOracle.MealyLoggingPropertyOracle
public class LoggingPropertyOracle<I,A extends Output<I,D>,P,D> extends Object implements PropertyOracle<I,A,P,D>
A PropertyOracle that performs logging.This class will log whenever the property is disproved, or when a counterexample to an automaton is found (i.e. a spurious counterexample is found).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classLoggingPropertyOracle.DFALoggingPropertyOracle<I,P>static classLoggingPropertyOracle.MealyLoggingPropertyOracle<I,O,P>-
Nested classes/interfaces inherited from interface de.learnlib.oracle.EquivalenceOracle
EquivalenceOracle.DFAEquivalenceOracle<I extends Object>, EquivalenceOracle.MealyEquivalenceOracle<I extends Object,O extends Object>, EquivalenceOracle.MooreEquivalenceOracle<I extends Object,O extends Object>
-
Nested classes/interfaces inherited from interface de.learnlib.oracle.InclusionOracle
InclusionOracle.DFAInclusionOracle<I extends Object>, InclusionOracle.MealyInclusionOracle<I extends Object,O extends Object>
-
Nested classes/interfaces inherited from interface de.learnlib.oracle.PropertyOracle
PropertyOracle.DFAPropertyOracle<I extends Object,P extends Object>, PropertyOracle.MealyPropertyOracle<I extends Object,O extends Object,P extends Object>
-
-
Constructor Summary
Constructors Constructor Description LoggingPropertyOracle(PropertyOracle<I,A,P,D> propertyOracle)Constructs a new LoggingPropertyOracle.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description @Nullable DefaultQuery<I,D>disprove(A hypothesis, Collection<? extends I> inputs)Try to disprove this propertyOracle, and log whenever it is disproved.@Nullable DefaultQuery<I,D>doFindCounterExample(A hypothesis, Collection<? extends I> inputs)Try to find a counterexample to the given hypothesis, and log whenever such a spurious counterexample is found.@Nullable DefaultQuery<I,D>getCounterExample()PgetProperty()booleanisDisproved()voidsetProperty(P property)StringtoString()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface de.learnlib.oracle.InclusionOracle
isCounterExample
-
Methods inherited from interface de.learnlib.oracle.PropertyOracle
findCounterExample
-
-
-
-
Constructor Detail
-
LoggingPropertyOracle
public LoggingPropertyOracle(PropertyOracle<I,A,P,D> propertyOracle)
Constructs a new LoggingPropertyOracle.- Parameters:
propertyOracle- thePropertyOracleto wrap around.
-
-
Method Detail
-
isDisproved
public boolean isDisproved()
- Specified by:
isDisprovedin interfacePropertyOracle<I,A extends Output<I,D>,P,D>
-
setProperty
public void setProperty(P property)
- Specified by:
setPropertyin interfacePropertyOracle<I,A extends Output<I,D>,P,D>
-
getProperty
public P getProperty()
- Specified by:
getPropertyin interfacePropertyOracle<I,A extends Output<I,D>,P,D>
-
getCounterExample
public @Nullable DefaultQuery<I,D> getCounterExample()
- Specified by:
getCounterExamplein interfacePropertyOracle<I,A extends Output<I,D>,P,D>
-
disprove
public @Nullable DefaultQuery<I,D> disprove(A hypothesis, Collection<? extends I> inputs)
Try to disprove this propertyOracle, and log whenever it is disproved.- Specified by:
disprovein interfacePropertyOracle<I,A extends Output<I,D>,P,D>- See Also:
PropertyOracle.disprove(Output, Collection)
-
doFindCounterExample
public @Nullable DefaultQuery<I,D> doFindCounterExample(A hypothesis, Collection<? extends I> inputs)
Try to find a counterexample to the given hypothesis, and log whenever such a spurious counterexample is found.- Specified by:
doFindCounterExamplein interfacePropertyOracle<I,A extends Output<I,D>,P,D>- See Also:
PropertyOracle.findCounterExample(Output, Collection)
-
-