Package net.maswag.falcaun
Class AdaptiveSTLList<I>
java.lang.Object
net.maswag.falcaun.AbstractAdaptiveSTLUpdater<I>
net.maswag.falcaun.AdaptiveSTLList<I>
- Type Parameters:
I
- Type of the input at each step
- All Implemented Interfaces:
de.learnlib.oracle.BlackBoxOracle<net.automatalib.automaton.transducer.MealyMachine<?,
,String, ?, String>, String, net.automatalib.word.Word<String>> de.learnlib.oracle.BlackBoxOracle.MealyBlackBoxOracle<String,
,String> de.learnlib.oracle.EquivalenceOracle<net.automatalib.automaton.transducer.MealyMachine<?,
,String, ?, String>, String, net.automatalib.word.Word<String>> de.learnlib.oracle.EquivalenceOracle.MealyEquivalenceOracle<String,
,String> de.learnlib.oracle.InclusionOracle<net.automatalib.automaton.transducer.MealyMachine<?,
,String, ?, String>, String, net.automatalib.word.Word<String>> de.learnlib.oracle.InclusionOracle.MealyInclusionOracle<String,
,String> AdaptiveSTLUpdater<I>
Adaptive updater of STL/LTL formulas
- Author:
- Junya Shijubo
- See Also:
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from interface de.learnlib.oracle.BlackBoxOracle
de.learnlib.oracle.BlackBoxOracle.DFABlackBoxOracle<I>, de.learnlib.oracle.BlackBoxOracle.MealyBlackBoxOracle<I,
O> Nested classes/interfaces inherited from interface de.learnlib.oracle.EquivalenceOracle
de.learnlib.oracle.EquivalenceOracle.DFAEquivalenceOracle<I>, de.learnlib.oracle.EquivalenceOracle.MealyEquivalenceOracle<I,
O>, de.learnlib.oracle.EquivalenceOracle.MooreEquivalenceOracle<I, O> Nested classes/interfaces inherited from interface de.learnlib.oracle.InclusionOracle
de.learnlib.oracle.InclusionOracle.DFAInclusionOracle<I>, de.learnlib.oracle.InclusionOracle.MealyInclusionOracle<I,
O> -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final List
<List<TemporalLogic<I>>> private final List
<TemporalLogic<I>> private final List
<TemporalLogic<I>> private final List
<List<AdaptiveSTLList.IntervalTL<I>>> private final List
<List<TemporalLogic<I>>> private final List
<TemporalLogic<I>> private final int
Fields inherited from class net.maswag.falcaun.AbstractAdaptiveSTLUpdater
EDGE_PARSER, emptinessOracle, inclusionOracle, initialized, inputAlphabet, memOracle, modelChecker
-
Constructor Summary
ConstructorsConstructorDescriptionAdaptiveSTLList
(Collection<? extends TemporalLogic<I>> STLProperties) AdaptiveSTLList
(Collection<? extends TemporalLogic<I>> STLProperties, int timeWindow) AdaptiveSTLList
(TemporalLogic<I> propertyOracle) -
Method Summary
Modifier and TypeMethodDescriptionboolean
Returns if all the properties are disprovedprivate List
<AdaptiveSTLList.IntervalTL<I>> findIntervalSTL
(TemporalLogic<I> stl, Function<TemporalLogic<I>, TemporalLogic<I>> frame) find intervals that can be strengthenedprivate List
<TemporalLogic<I>> generateStrengthenedSTL
(TemporalLogic<I> targetStl) generate syntactically strengthened STL formulasprivate List
<AdaptiveSTLList.IntervalTL<I>> initializeIntervalSTLproperties
(TemporalLogic<I> targetSTL) list up intervals of temporal operators in target STL formulas that can be strengthenedprivate TemporalLogic
<I> nextStrengthenedSTL
(int targetIdx) protected void
notifyFalsifiedProperty
(List<Integer> falsifiedIndices) Notify that subset of this.getLTLProperties are falsified by the currently learned model.void
reset()
Remove all the non-initial STL formulasprivate List
<TemporalLogic<I>> strengthenSTL
(TemporalLogic<I> stl) syntactically strengthen an STL/LTL formulaMethods inherited from class net.maswag.falcaun.AbstractAdaptiveSTLUpdater
addSTLProperties, addSTLProperty, findCounterExample, getPropertyOracles, newlyFalsifiedFormula, removeSTLProperties, removeSTLProperty, setMemOracle, stream, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface net.maswag.falcaun.AdaptiveSTLUpdater
getLTLProperties, getSTLProperties, list, setInputAlphabet, size
Methods inherited from interface de.learnlib.oracle.InclusionOracle
isCounterExample
-
Field Details
-
initialSTLs
-
targetSTLs
-
strengthenedSTLProperties
-
candidateSTLProperties
-
intervalSTLProperties
-
falsifiedSTLProperties
-
timeWindow
private final int timeWindow
-
-
Constructor Details
-
AdaptiveSTLList
public AdaptiveSTLList() -
AdaptiveSTLList
-
AdaptiveSTLList
-
AdaptiveSTLList
- Parameters:
STLProperties
- The list of STL/LTL formulas to verifytimeWindow
- The maximum time window of the STL formulas. This is typically the number of steps in each simulation.
-
-
Method Details
-
strengthenSTL
syntactically strengthen an STL/LTL formula- Parameters:
stl
- a target STL formula to be strengthen- Returns:
- list of
TemporalLogic<I>
objects
-
notifyFalsifiedProperty
Notify that subset of this.getLTLProperties are falsified by the currently learned model.- Overrides:
notifyFalsifiedProperty
in classAbstractAdaptiveSTLUpdater<I>
- Parameters:
falsifiedIndices
- The set of indices of the falsified LTL formulas
-
generateStrengthenedSTL
generate syntactically strengthened STL formulas- Parameters:
targetStl
- a target STL/LTL formula- Returns:
- list of strengthened formulas
-
initializeIntervalSTLproperties
private List<AdaptiveSTLList.IntervalTL<I>> initializeIntervalSTLproperties(TemporalLogic<I> targetSTL) list up intervals of temporal operators in target STL formulas that can be strengthened- Parameters:
targetSTL
- a target STL/LTL formula- Returns:
- list of
-
findIntervalSTL
private List<AdaptiveSTLList.IntervalTL<I>> findIntervalSTL(TemporalLogic<I> stl, Function<TemporalLogic<I>, TemporalLogic<I>> frame) find intervals that can be strengthened- Parameters:
stl
- target STL formulaframe
- outer frame of param 'stl'- Returns:
- list of
AdaptiveSTLList.IntervalTL
object
-
nextStrengthenedSTL
-
allDisproved
public boolean allDisproved()Description copied from interface:AdaptiveSTLUpdater
Returns if all the properties are disproved -
reset
public void reset()Remove all the non-initial STL formulas
-