Package de.learnlib.oracle
Interface OmegaMembershipOracle<S,I,D>
-
- Type Parameters:
S- the state typeI- the input typeD- the output type
- All Superinterfaces:
BatchProcessor<OmegaQuery<I,D>>,OmegaQueryAnswerer<S,I,D>
- All Known Subinterfaces:
OmegaMembershipOracle.DFAOmegaMembershipOracle<S,I>,OmegaMembershipOracle.MealyOmegaMembershipOracle<S,I,O>,ParallelOmegaOracle<S,I,D>,SingleQueryOmegaOracle<S,I,D>,SingleQueryOmegaOracle.SingleQueryOmegaOracleDFA<S,I>,SingleQueryOmegaOracle.SingleQueryOmegaOracleMealy<S,I,O>
- All Known Implementing Classes:
AbstractSULOmegaOracle,DynamicParallelOmegaOracle,SimulatorOmegaOracle,SimulatorOmegaOracle.DFASimulatorOmegaOracle,SimulatorOmegaOracle.MealySimulatorOmegaOracle,StaticParallelOmegaOracle
public interface OmegaMembershipOracle<S,I,D> extends OmegaQueryAnswerer<S,I,D>, BatchProcessor<OmegaQuery<I,D>>
AnswersOmegaQuerys, similar to aMembershipOracle. Additionally, one can ask whether two states are equal to each other.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceOmegaMembershipOracle.DFAOmegaMembershipOracle<S,I>static interfaceOmegaMembershipOracle.MealyOmegaMembershipOracle<S,I,O>
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default Pair<@Nullable D,Integer>answerQuery(Word<I> prefix, Word<I> loop, int repeat)default OmegaMembershipOracle<S,I,D>asOracle()MembershipOracle<I,D>getMembershipOracle()Returns a regular membership oracle.booleanisSameState(Word<I> w1, S s1, Word<I> w2, S s2)Returns whether two states are equal, or if both access sequencesw1, andw2end up in the same state.default voidprocessBatch(Collection<? extends OmegaQuery<I,D>> batch)Process the batch.voidprocessQueries(Collection<? extends OmegaQuery<I,D>> queries)default voidprocessQuery(OmegaQuery<I,D> query)
-
-
-
Method Detail
-
answerQuery
default Pair<@Nullable D,Integer> answerQuery(Word<I> prefix, Word<I> loop, int repeat)
- Specified by:
answerQueryin interfaceOmegaQueryAnswerer<S,I,D>
-
processBatch
default void processBatch(Collection<? extends OmegaQuery<I,D>> batch)
Description copied from interface:BatchProcessorProcess the batch.- Specified by:
processBatchin interfaceBatchProcessor<S>- Parameters:
batch- the batch to process
-
processQuery
default void processQuery(OmegaQuery<I,D> query)
-
processQueries
void processQueries(Collection<? extends OmegaQuery<I,D>> queries)
-
asOracle
default OmegaMembershipOracle<S,I,D> asOracle()
- Specified by:
asOraclein interfaceOmegaQueryAnswerer<S,I,D>
-
getMembershipOracle
MembershipOracle<I,D> getMembershipOracle()
Returns a regular membership oracle.- Returns:
- a regular membership oracle.
-
isSameState
boolean isSameState(Word<I> w1, S s1, Word<I> w2, S s2)
Returns whether two states are equal, or if both access sequencesw1, andw2end up in the same state. If both access sequences end up in the same state thens1.equals(s2)must hold.- Parameters:
w1- the first access sequence.s1- the first state.w2- the second access sequence.s2- the second state.- Returns:
- whether both states, or states via the given access sequences are equal.
- See Also:
ObservableSUL.getState()
-
-