public final class MinimizationUtil
extends java.lang.Object
Modifier and Type | Class | Description |
---|---|---|
static class |
MinimizationUtil.MinimizationLevel |
Modifier and Type | Method | Description |
---|---|---|
static <S,A extends OmegaAcceptance> |
applyMinimization(MutableAutomaton<S,? extends A> automaton,
java.util.List<Minimization<S,A>> minimizationList) |
|
static <S,A extends OmegaAcceptance> |
minimizeDefault(MutableAutomaton<S,A> automaton,
MinimizationUtil.MinimizationLevel level) |
|
static <S> void |
removeAndRemapIndices(MutableAutomaton<S,?> automaton,
it.unimi.dsi.fastutil.ints.IntSet indicesToRemove) |
|
static <S> void |
removeDeadStates(MutableAutomaton<S,?> automaton) |
|
static <S> void |
removeDeadStates(MutableAutomaton<S,?> automaton,
java.util.function.Predicate<? super S> isProtected,
java.util.function.Consumer<? super S> removedStatesConsumer) |
|
static <S> void |
removeDeadStates(MutableAutomaton<S,?> automaton,
java.util.Set<S> initialStates,
java.util.function.Predicate<? super S> isProtected,
java.util.function.Consumer<? super S> removedStatesConsumer) |
Remove states from the automaton which are unreachable from the set of initial states or that
cannot belong to an infinite accepting path.
|
public static <S,A extends OmegaAcceptance> void applyMinimization(MutableAutomaton<S,? extends A> automaton, java.util.List<Minimization<S,A>> minimizationList)
public static <S,A extends OmegaAcceptance> MutableAutomaton<S,A> minimizeDefault(MutableAutomaton<S,A> automaton, MinimizationUtil.MinimizationLevel level)
public static <S> void removeAndRemapIndices(MutableAutomaton<S,?> automaton, it.unimi.dsi.fastutil.ints.IntSet indicesToRemove)
public static <S> void removeDeadStates(MutableAutomaton<S,?> automaton)
public static <S> void removeDeadStates(MutableAutomaton<S,?> automaton, java.util.function.Predicate<? super S> isProtected, java.util.function.Consumer<? super S> removedStatesConsumer)
public static <S> void removeDeadStates(MutableAutomaton<S,?> automaton, java.util.Set<S> initialStates, java.util.function.Predicate<? super S> isProtected, java.util.function.Consumer<? super S> removedStatesConsumer)
automaton
- The automaton considered by the analysis.initialStates
- The set of states that are the initial states for the reachability analysis. Required to be
part of the automaton.isProtected
- If a state is marked as protected and reachable, it won't be removed.removedStatesConsumer
- A consumer called exactly once for each state removed from the automaton in no particular
order.