Package owl.automaton
Class BooleanOperations
- java.lang.Object
-
- owl.automaton.BooleanOperations
-
public final class BooleanOperations extends Object
This class provides standard boolean operations (union, intersection, complementation) on automata. The returned automata are constructed on-the-fly and it assumed that the underlying automata are not changed during the lifetime of the returned objects.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <S> Automaton<Optional<S>,?>
deterministicComplement(Automaton<S,?> automaton)
static <S,A extends EmersonLeiAcceptance>
Automaton<Optional<S>,? extends A>deterministicComplement(Automaton<S,?> automaton, Class<? extends A> expectedAcceptance)
static <S> Automaton<S,?>
deterministicComplementOfCompleteAutomaton(Automaton<S,?> completeAutomaton)
static <S,A extends EmersonLeiAcceptance>
Automaton<S,? extends A>deterministicComplementOfCompleteAutomaton(Automaton<S,?> completeAutomaton, Class<? extends A> expectedAcceptance)
static <S> Automaton<Map<Integer,S>,?>
deterministicUnion(List<? extends Automaton<S,?>> automata)
static <S1,S2>
Automaton<NullablePair<S1,S2>,?>deterministicUnion(Automaton<S1,?> automaton1, Automaton<S2,?> automaton2)
static <S> Automaton<List<S>,?>
intersection(List<? extends Automaton<S,?>> automata)
static <S1,S2>
Automaton<Pair<S1,S2>,?>intersection(Automaton<S1,?> automaton1, Automaton<S2,?> automaton2)
-
-
-
Method Detail
-
deterministicComplementOfCompleteAutomaton
public static <S> Automaton<S,?> deterministicComplementOfCompleteAutomaton(Automaton<S,?> completeAutomaton)
-
deterministicComplementOfCompleteAutomaton
public static <S,A extends EmersonLeiAcceptance> Automaton<S,? extends A> deterministicComplementOfCompleteAutomaton(Automaton<S,?> completeAutomaton, Class<? extends A> expectedAcceptance)
-
deterministicComplement
public static <S> Automaton<Optional<S>,?> deterministicComplement(Automaton<S,?> automaton)
-
deterministicComplement
public static <S,A extends EmersonLeiAcceptance> Automaton<Optional<S>,? extends A> deterministicComplement(Automaton<S,?> automaton, Class<? extends A> expectedAcceptance)
-
intersection
public static <S1,S2> Automaton<Pair<S1,S2>,?> intersection(Automaton<S1,?> automaton1, Automaton<S2,?> automaton2)
-
intersection
public static <S> Automaton<List<S>,?> intersection(List<? extends Automaton<S,?>> automata)
-
deterministicUnion
public static <S1,S2> Automaton<NullablePair<S1,S2>,?> deterministicUnion(Automaton<S1,?> automaton1, Automaton<S2,?> automaton2)
-
-