- java.lang.Object
-
- net.automatalib.util.automaton.ads.ADSUtil
-
public final class ADSUtil extends Object
Utility class, that offers some operations revolving around adaptive distinguishing sequences.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <S,I,T,O>
Pair<ADSNode<S,I,O>,ADSNode<S,I,O>>buildFromTrace(MealyMachine<S,I,T,O> automaton, Word<I> trace, S state)
static <S,I,T,O,N extends RecursiveADSNode<S,I,O,N>>
Pair<N,N>buildFromTrace(MealyMachine<S,I,T,O> automaton, Word<I> trace, S state, BiFunction<@Nullable N,I,N> creator)
static <S,I,O>
Pair<Word<I>,Word<O>>buildTraceForNode(ADSNode<S,I,O> node)
static <S,I,O,N extends RecursiveADSNode<S,I,O,N>>
Pair<Word<I>,Word<O>>buildTraceForNode(N node, Predicate<N> predicate)
static <S,I,O>
Set<ADSNode<S,I,O>>collectLeaves(ADSNode<S,I,O> root)
static int
computeLength(ADSNode<?,?,?> node)
static long
computeMaximumSplittingWordLength(int n, int i, int m)
Computes an upper bound for the length of a splitting word.static int
countSymbolNodes(ADSNode<?,?,?> node)
static <O,N extends RecursiveADSNode<?,?,O,N>>
OgetOutputForSuccessor(N node, N successor)
-
-
-
Method Detail
-
computeLength
public static int computeLength(ADSNode<?,?,?> node)
-
countSymbolNodes
public static int countSymbolNodes(ADSNode<?,?,?> node)
-
buildFromTrace
public static <S,I,T,O> Pair<ADSNode<S,I,O>,ADSNode<S,I,O>> buildFromTrace(MealyMachine<S,I,T,O> automaton, Word<I> trace, S state)
-
buildFromTrace
public static <S,I,T,O,N extends RecursiveADSNode<S,I,O,N>> Pair<N,N> buildFromTrace(MealyMachine<S,I,T,O> automaton, Word<I> trace, S state, BiFunction<@Nullable N,I,N> creator)
-
buildTraceForNode
public static <S,I,O> Pair<Word<I>,Word<O>> buildTraceForNode(ADSNode<S,I,O> node)
-
buildTraceForNode
public static <S,I,O,N extends RecursiveADSNode<S,I,O,N>> Pair<Word<I>,Word<O>> buildTraceForNode(N node, Predicate<N> predicate)
-
getOutputForSuccessor
public static <O,N extends RecursiveADSNode<?,?,O,N>> O getOutputForSuccessor(N node, N successor)
-
computeMaximumSplittingWordLength
public static long computeMaximumSplittingWordLength(int n, int i, int m)
Computes an upper bound for the length of a splitting word. Based onI.V. Kogan. "Estimated Length of a Minimal Simple Conditional Diagnostic Experiment". In: Automation and Remote Control 34 (1973)
- Parameters:
n
- the size of the automaton (number of states)i
- the number of states that should be distinguished by the current splitting wordm
- the number of states that should originally be distinguished- Returns:
- upper bound for the length of a splitting word
-
-