Package de.learnlib.query
Class OmegaQuery<I,D>
- java.lang.Object
-
- de.learnlib.query.OmegaQuery<I,D>
-
- Type Parameters:
I
- the input typeD
- the output type
public class OmegaQuery<I,D> extends Object
A query that represents information about infinite words in an ultimately periodic pattern. That is, for two finite strings u, v, this class represents the query of the infinite word uvω.When answering OmegaQueries, one needs to specify the periodicity p of the looping suffix v, i.e. for what p the answer contains information about the response to the query uvp which can then be generalized to the infinite case since u(vp)ω = uvω.
If one cannot determine this value (e.g. because the response exhibits a non-periodic pattern), one may specify a negative value for p.
isUltimatelyPeriodic()
then consequently returnsfalse
. In this case the output of the query (getOutput()
) may be undefined.- See Also:
DefaultQuery
,Query
,ObservableSUL.getState()
-
-
Constructor Summary
Constructors Constructor Description OmegaQuery(Word<I> prefix, Word<I> loop, int repeat)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
answer(@Nullable D output, int periodicity)
DefaultQuery<I,@Nullable D>
asDefaultQuery()
boolean
equals(@Nullable Object o)
Word<I>
getLoop()
@Nullable D
getOutput()
int
getPeriodicity()
Word<I>
getPrefix()
int
getRepeat()
int
hashCode()
boolean
isUltimatelyPeriodic()
String
toString()
-
-
-
Method Detail
-
answer
public void answer(@Nullable D output, int periodicity)
-
getRepeat
public int getRepeat()
-
getOutput
public @Nullable D getOutput()
-
getPeriodicity
public int getPeriodicity()
-
isUltimatelyPeriodic
public boolean isUltimatelyPeriodic()
-
asDefaultQuery
public DefaultQuery<I,@Nullable D> asDefaultQuery()
-
-