Package owl.automaton.minimizations
Class GeneralizedRabinMinimizations
- java.lang.Object
-
- owl.automaton.minimizations.GeneralizedRabinMinimizations
-
public final class GeneralizedRabinMinimizations extends Object
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <S> void
minimizeComplementaryInf(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Delete all Inf sets which are the complement of their corresponding Fin set.static <S> void
minimizeEdgeImplications(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Remove all Inf edges which are implied by another Inf index of the same pair.static <S> void
minimizeGloballyIrrelevant(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Remove pairs which cannot accept globally (e.g.static <S> void
minimizeMergePairs(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Merge independent pairs.static <S> void
minimizeOverlap(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Remove edges in a Fin set from all corresponding Inf sets.static <S> void
minimizePairImplications(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Delete all pairs which only accept if another pair accepts.static <S> void
minimizeSccIrrelevant(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Remove all indices from edges of an SCC which can't accept (e.g.static <S> void
minimizeTrivial(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Identify Fin-only pairs and SCCs which trivially accept with them.
-
-
-
Method Detail
-
minimizeComplementaryInf
public static <S> void minimizeComplementaryInf(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Delete all Inf sets which are the complement of their corresponding Fin set.
-
minimizeEdgeImplications
public static <S> void minimizeEdgeImplications(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Remove all Inf edges which are implied by another Inf index of the same pair.
-
minimizeGloballyIrrelevant
public static <S> void minimizeGloballyIrrelevant(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Remove pairs which cannot accept globally (e.g. an Inf set does not occur)
-
minimizeMergePairs
public static <S> void minimizeMergePairs(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Merge independent pairs.
-
minimizeOverlap
public static <S> void minimizeOverlap(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Remove edges in a Fin set from all corresponding Inf sets.
-
minimizePairImplications
public static <S> void minimizePairImplications(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Delete all pairs which only accept if another pair accepts.
-
minimizeSccIrrelevant
public static <S> void minimizeSccIrrelevant(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Remove all indices from edges of an SCC which can't accept (e.g. if the SCC does not contain all Inf sets of the pair).
-
minimizeTrivial
public static <S> void minimizeTrivial(MutableAutomaton<S,GeneralizedRabinAcceptance> automaton)
Identify Fin-only pairs and SCCs which trivially accept with them.
-
-