@ParametersAreNonnullByDefault public final class Covers extends Object
Modifier and Type | Method and Description |
---|---|
static <I> void |
cover(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs,
Collection<? super Word<I>> states,
Collection<? super Word<I>> transitions)
Utility method that allows to compute a state and transition cover simultaneously.
|
static <I> boolean |
incrementalCover(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs,
Collection<? extends Word<I>> oldStateCover,
Collection<? extends Word<I>> oldTransCover,
Collection<? super Word<I>> newStateCover,
Collection<? super Word<I>> newTransCover)
Utility method that allows to compute an incremental state and transition cover simultaneously.
|
static <S,I> boolean |
incrementalStateCover(DeterministicAutomaton<S,I,?> automaton,
Collection<? extends I> inputs,
Collection<? extends Word<I>> oldStates,
Collection<? super Word<I>> newStates)
Computes an incremental state cover for a given automaton, i.e. a cover that only contains the missing sequences
for obtaining a complete state cover.
|
static <I> Iterator<Word<I>> |
incrementalStateCoverIterator(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs,
Collection<? extends Word<I>> stateCover)
Returns an iterator for the remaining sequences of a state cover.
|
static <I> boolean |
incrementalStructuralCover(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs,
Collection<? extends Word<I>> oldCover,
Collection<? super Word<I>> newCover)
Computes an incremental structural cover for a given automaton, i.e. a cover that only contains the missing
sequences for obtaining a complete structural cover.
|
static <I> boolean |
incrementalTransitionCover(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs,
Collection<? extends Word<I>> oldTransCover,
Collection<? super Word<I>> newTransCover)
Computes an incremental transition cover for a given automaton, i.e. a cover that only contains the missing
sequences for obtaining a complete transition cover.
|
static <I> Iterator<Word<I>> |
incrementalTransitionCoverIterator(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs,
Collection<? extends Word<I>> transitionCover)
Returns an iterator for the remaining sequences of a transition cover.
|
static <I> void |
stateCover(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs,
Collection<? super Word<I>> states)
Computes a state cover for a given automaton.
|
static <I> Iterator<Word<I>> |
stateCoverIterator(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs)
Returns an iterator for the sequences of a state cover.
|
static <I> void |
structuralCover(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs,
Collection<? super Word<I>> cover)
Computes a structural cover for a given automaton.
|
static <I> void |
transitionCover(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs,
Collection<? super Word<I>> transitions)
Computes a transition cover for a given automaton.
|
static <I> Iterator<Word<I>> |
transitionCoverIterator(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs)
Returns an iterator for the sequences of a transition cover.
|
public static <I> void stateCover(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs, Collection<? super Word<I>> states)
A state cover is a set C of input sequences, such that for each state s of an automaton, there exists an input sequence in C that transitions the automaton from its initial state to state s.
Note: if restrictions on the inputs
parameter do not allow to reach certain states, the computed cover is
not complete.
I
- input symbol typeautomaton
- the automaton for which the cover should be computedinputs
- the set of input symbols allowed in the cover sequencesstates
- the collection in which the sequences will be storedpublic static <I> Iterator<Word<I>> stateCoverIterator(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs)
next
method.I
- input symbol typeautomaton
- the automaton for which the cover should be computedinputs
- the set of input symbols allowed in the cover sequencesstateCover(DeterministicAutomaton, Collection, Collection)
public static <I> void transitionCover(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs, Collection<? super Word<I>> transitions)
A transition cover is a set C of input sequences, such that for each state s and each input symbol i of an automaton, there exists an input sequence in C that starts from the initial state of the automaton and ends with the transition that applies i to state s.
Note: if restrictions on the inputs
parameter do not allow to reach certain transitions, the computed
cover is not complete.
I
- input symbol typeautomaton
- the automaton for which the cover should be computedinputs
- the set of input symbols allowed in the cover sequencestransitions
- the collection in which the sequences will be storedpublic static <I> Iterator<Word<I>> transitionCoverIterator(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs)
next
method.I
- input symbol typeautomaton
- the automaton for which the cover should be computedinputs
- the set of input symbols allowed in the cover sequencestransitionCover(DeterministicAutomaton, Collection, Collection)
public static <I> void structuralCover(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs, Collection<? super Word<I>> cover)
A structural cover is the union of a state cover and a transition cover
I
- input symbol typeautomaton
- the automaton for which the cover should be computedinputs
- the set of input symbols allowed in the cover sequencescover
- the collection in which the sequences will be storedstateCover(DeterministicAutomaton, Collection, Collection)
,
transitionCover(DeterministicAutomaton, Collection, Collection)
public static <I> void cover(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs, Collection<? super Word<I>> states, Collection<? super Word<I>> transitions)
I
- input symbol typeautomaton
- the automaton for which the covers should be computedinputs
- the set of input symbols allowed in the cover sequencesstates
- the collection in which the state cover sequences will be storedtransitions
- the collection in which the transition cover sequences will be storedstateCover(DeterministicAutomaton, Collection, Collection)
,
transitionCover(DeterministicAutomaton, Collection, Collection)
public static <S,I> boolean incrementalStateCover(DeterministicAutomaton<S,I,?> automaton, Collection<? extends I> inputs, Collection<? extends Word<I>> oldStates, Collection<? super Word<I>> newStates)
I
- input symbol typeautomaton
- the automaton for which the cover should be computedinputs
- the set of input symbols allowed in the cover sequencesoldStates
- the collection containing the already existing sequences of the state covernewStates
- the collection in which the missing sequences will be storedtrue
if new sequences have been added to the state cover, false
otherwise.stateCover(DeterministicAutomaton, Collection, Collection)
public static <I> Iterator<Word<I>> incrementalStateCoverIterator(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs, Collection<? extends Word<I>> stateCover)
next
method.I
- input symbol typeautomaton
- the automaton for which the cover should be computedinputs
- the set of input symbols allowed in the cover sequencesstateCover
- the collection containing the already existing sequences of the state coverincrementalStateCover(DeterministicAutomaton, Collection, Collection, Collection)
public static <I> boolean incrementalTransitionCover(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs, Collection<? extends Word<I>> oldTransCover, Collection<? super Word<I>> newTransCover)
I
- input symbol typeautomaton
- the automaton for which the cover should be computedinputs
- the set of input symbols allowed in the cover sequencesoldTransCover
- the collection containing the already existing sequences of the transition covernewTransCover
- the collection in which the missing sequences will be storedtrue
if new sequences have been added to the state cover, false
otherwise.transitionCover(DeterministicAutomaton, Collection, Collection)
public static <I> Iterator<Word<I>> incrementalTransitionCoverIterator(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs, Collection<? extends Word<I>> transitionCover)
next
method.I
- input symbol typeautomaton
- the automaton for which the cover should be computedinputs
- the set of input symbols allowed in the cover sequencestransitionCover
- the collection containing the already existing sequences of the transition coverincrementalStateCover(DeterministicAutomaton, Collection, Collection, Collection)
public static <I> boolean incrementalStructuralCover(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs, Collection<? extends Word<I>> oldCover, Collection<? super Word<I>> newCover)
I
- input symbol typeautomaton
- the automaton for which the cover should be computedinputs
- the set of input symbols allowed in the cover sequencesoldCover
- the collection containing the already existing sequences of the structural covernewCover
- the collection in which the missing sequences will be storedtrue
if new sequences have been added to the structural cover, false
otherwise.structuralCover(DeterministicAutomaton, Collection, Collection)
public static <I> boolean incrementalCover(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs, Collection<? extends Word<I>> oldStateCover, Collection<? extends Word<I>> oldTransCover, Collection<? super Word<I>> newStateCover, Collection<? super Word<I>> newTransCover)
I
- input symbol typeautomaton
- the automaton for which the covers should be computedinputs
- the set of input symbols allowed in the cover sequencesoldStateCover
- the collection containing the already existing sequences of the state coveroldTransCover
- the collection containing the already existing sequences of the transition covernewStateCover
- the collection in which the missing state cover sequences will be storednewTransCover
- the collection in which the missing transition cover sequences will be storedtrue
if new sequences have been added to the structural cover, false
otherwise.incrementalStateCover(DeterministicAutomaton, Collection, Collection, Collection)
,
incrementalStateCover(DeterministicAutomaton, Collection, Collection, Collection)
Copyright © 2019. All rights reserved.