## Uses of Class
dk.brics.automaton.Automaton

- Packages that use Automaton
  Package | Description
  --- | ---
  Automata |
  dk.brics.automaton |

- - ### Uses of Automaton in Automata

    Methods in Automata that return Automaton
    Modifier and Type | Method and Description
    --- | ---
    `Automaton` | Automaton.`to_dk_bricks_automaton()` Transform this automaton from Automaton to dk.bricks.automaton.Automaton.

  - ### Uses of Automaton in dk.brics.automaton

    Methods in dk.brics.automaton that return Automaton
    Modifier and Type | Method and Description
    --- | ---
    `Automaton` | Automaton.`clone()` Returns a clone of this automaton.
    `Automaton` | Automaton.`complement()` See `BasicOperations.complement(Automaton)`.
    `static Automaton` | BasicOperations.`complement(Automaton a)` Returns a (deterministic) automaton that accepts the complement of the language of the given automaton.
    `static Automaton` | SpecialOperations.`compress(Automaton a, java.lang.String set, char c)` Returns an automaton that accepts the compressed language of the given automaton.
    `Automaton` | Automaton.`compress(java.lang.String set, char c)` See `SpecialOperations.compress(Automaton, String, char)`.
    `Automaton` | Automaton.`concatenate(Automaton a)` See `BasicOperations.concatenate(Automaton, Automaton)`.
    `static Automaton` | BasicOperations.`concatenate(Automaton a1, Automaton a2)` Returns an automaton that accepts the concatenation of the languages of the given automata.
    `static Automaton` | BasicOperations.`concatenate(java.util.List<Automaton> l)` Returns an automaton that accepts the concatenation of the languages of the given automata.
    `static Automaton` | Automaton.`concatenate(java.util.List<Automaton> l)` See `BasicOperations.concatenate(List)`.
    `static Automaton` | Datatypes.`get(java.lang.String name)` Returns pre-built automaton.
    `Automaton` | DatatypesAutomatonProvider.`getAutomaton(java.lang.String name)`
    `Automaton` | AutomatonProvider.`getAutomaton(java.lang.String name)` Returns automaton of the given name.
    `static Automaton` | SpecialOperations.`hexCases(Automaton a)` Constructs automaton that accepts the same strings as the given automaton but ignores upper/lower case of A-F.
    `static Automaton` | Automaton.`hexCases(Automaton a)` See `SpecialOperations.hexCases(Automaton)`.
    `static Automaton` | SpecialOperations.`homomorph(Automaton a, char[] source, char[] dest)` Returns an automaton accepting the homomorphic image of the given automaton using the given function.
    `Automaton` | Automaton.`homomorph(char[] source, char[] dest)` See `SpecialOperations.homomorph(Automaton, char[], char[])`.
    `Automaton` | Automaton.`intersection(Automaton a)` See `BasicOperations.intersection(Automaton, Automaton)`.
    `static Automaton` | BasicOperations.`intersection(Automaton a1, Automaton a2)` Returns an automaton that accepts the intersection of the languages of the given automata.
    `static Automaton` | Automaton.`load(java.io.InputStream stream)` Retrieves a serialized `Automaton` from a stream.
    `static Automaton` | Automaton.`load(java.net.URL url)` Retrieves a serialized `Automaton` located by a URL.
    `static Automaton` | BasicAutomata.`makeAnyChar()` Returns a new (deterministic) automaton that accepts any single character.
    `static Automaton` | Automaton.`makeAnyChar()` See `BasicAutomata.makeAnyChar()`.
    `static Automaton` | BasicAutomata.`makeAnyString()` Returns a new (deterministic) automaton that accepts all strings.
    `static Automaton` | Automaton.`makeAnyString()` See `BasicAutomata.makeAnyString()`.
    `static Automaton` | BasicAutomata.`makeChar(char c)` Returns a new (deterministic) automaton that accepts a single character of the given value.
    `static Automaton` | Automaton.`makeChar(char c)` See `BasicAutomata.makeChar(char)`.
    `static Automaton` | BasicAutomata.`makeCharRange(char min, char max)` Returns a new (deterministic) automaton that accepts a single char whose value is in the given interval (including both end points).
    `static Automaton` | Automaton.`makeCharRange(char min, char max)` See `BasicAutomata.makeCharRange(char, char)`.
    `static Automaton` | BasicAutomata.`makeCharSet(java.lang.String set)` Returns a new (deterministic) automaton that accepts a single character in the given set.
    `static Automaton` | Automaton.`makeCharSet(java.lang.String set)` See `BasicAutomata.makeCharSet(String)`.
    `static Automaton` | BasicAutomata.`makeDecimalValue(java.lang.String value)` Constructs automaton that accept strings representing the given decimal number.
    `static Automaton` | Automaton.`makeDecimalValue(java.lang.String value)` See `BasicAutomata.makeDecimalValue(String)`.
    `static Automaton` | BasicAutomata.`makeEmpty()` Returns a new (deterministic) automaton with the empty language.
    `static Automaton` | Automaton.`makeEmpty()` See `BasicAutomata.makeEmpty()`.
    `static Automaton` | BasicAutomata.`makeEmptyString()` Returns a new (deterministic) automaton that accepts only the empty string.
    `static Automaton` | Automaton.`makeEmptyString()` See `BasicAutomata.makeEmptyString()`.
    `static Automaton` | BasicAutomata.`makeFractionDigits(int i)` Constructs automaton that accept strings representing decimal numbers that can be written with at most the given number of digits in the fraction part.
    `static Automaton` | Automaton.`makeFractionDigits(int i)` See `BasicAutomata.makeFractionDigits(int)`.
    `static Automaton` | BasicAutomata.`makeIntegerValue(java.lang.String value)` Constructs automaton that accept strings representing the given integer.
    `static Automaton` | Automaton.`makeIntegerValue(java.lang.String value)` See `BasicAutomata.makeIntegerValue(String)`.
    `static Automaton` | BasicAutomata.`makeInterval(int min, int max, int digits)` Returns a new automaton that accepts strings representing decimal non-negative integers in the given interval.
    `static Automaton` | Automaton.`makeInterval(int min, int max, int digits)` See `BasicAutomata.makeInterval(int, int, int)`.
    `static Automaton` | BasicAutomata.`makeMaxInteger(java.lang.String n)` Constructs automaton that accept strings representing nonnegative integers that are not larger than the given value.
    `static Automaton` | Automaton.`makeMaxInteger(java.lang.String n)` See `BasicAutomata.makeMaxInteger(String)`.
    `static Automaton` | BasicAutomata.`makeMinInteger(java.lang.String n)` Constructs automaton that accept strings representing nonnegative integers that are not less that the given value.
    `static Automaton` | Automaton.`makeMinInteger(java.lang.String n)` See `BasicAutomata.makeMinInteger(String)`.
    `static Automaton` | BasicAutomata.`makeString(java.lang.String s)` Returns a new (deterministic) automaton that accepts the single given string.
    `static Automaton` | Automaton.`makeString(java.lang.String s)` See `BasicAutomata.makeString(String)`.
    `static Automaton` | BasicAutomata.`makeStringMatcher(java.lang.String s)` Constructs deterministic automaton that matches strings that contain the given substring.
    `static Automaton` | Automaton.`makeStringMatcher(java.lang.String s)` See `BasicAutomata.makeStringMatcher(String)`.
    `static Automaton` | BasicAutomata.`makeStringUnion(java.lang.CharSequence... strings)` Returns a new (deterministic and minimal) automaton that accepts the union of the given set of strings.
    `static Automaton` | Automaton.`makeStringUnion(java.lang.CharSequence... strings)` See `BasicAutomata.makeStringUnion(CharSequence...)`.
    `static Automaton` | BasicAutomata.`makeTotalDigits(int i)` Constructs automaton that accept strings representing decimal numbers that can be written with at most the given number of digits.
    `static Automaton` | Automaton.`makeTotalDigits(int i)` See `BasicAutomata.makeTotalDigits(int)`.
    `static Automaton` | Automaton.`minimize(Automaton a)` See `MinimizationOperations.minimize(Automaton)`.
    `Automaton` | Automaton.`minus(Automaton a)` See `BasicOperations.minus(Automaton, Automaton)`.
    `static Automaton` | BasicOperations.`minus(Automaton a1, Automaton a2)` Returns a (deterministic) automaton that accepts the intersection of the language of `a1` and the complement of the language of `a2`.
    `Automaton` | Automaton.`optional()` See `BasicOperations.optional(Automaton)`.
    `static Automaton` | BasicOperations.`optional(Automaton a)` Returns an automaton that accepts the union of the empty string and the language of the given automaton.
    `Automaton` | Automaton.`overlap(Automaton a)` See `SpecialOperations.overlap(Automaton, Automaton)`.
    `static Automaton` | SpecialOperations.`overlap(Automaton a1, Automaton a2)` Returns an automaton that accepts the overlap of strings that in more than one way can be split into a left part being accepted by `a1` and a right part being accepted by `a2`.
    `static Automaton` | SpecialOperations.`projectChars(Automaton a, java.util.Set<java.lang.Character> chars)` Returns an automaton with projected alphabet.
    `Automaton` | Automaton.`projectChars(java.util.Set<java.lang.Character> chars)` See `SpecialOperations.projectChars(Automaton, Set)`.
    `Automaton` | Automaton.`repeat()` See `BasicOperations.repeat(Automaton)`.
    `static Automaton` | BasicOperations.`repeat(Automaton a)` Returns an automaton that accepts the Kleene star (zero or more concatenated repetitions) of the language of the given automaton.
    `static Automaton` | BasicOperations.`repeat(Automaton a, int min)` Returns an automaton that accepts `min` or more concatenated repetitions of the language of the given automaton.
    `static Automaton` | BasicOperations.`repeat(Automaton a, int min, int max)` Returns an automaton that accepts between `min` and `max` (including both) concatenated repetitions of the language of the given automaton.
    `Automaton` | Automaton.`repeat(int min)` See `BasicOperations.repeat(Automaton, int)`.
    `Automaton` | Automaton.`repeat(int min, int max)` See `BasicOperations.repeat(Automaton, int, int)`.
    `static Automaton` | SpecialOperations.`replaceWhitespace(Automaton a)` Constructs automaton that accepts 0x20, 0x9, 0xa, and 0xd in place of each 0x20 transition in the given automaton.
    `static Automaton` | Automaton.`replaceWhitespace(Automaton a)` See `SpecialOperations.replaceWhitespace(Automaton)`.
    `Automaton` | Automaton.`shuffle(Automaton a)` See `ShuffleOperations.shuffle(Automaton, Automaton)`.
    `static Automaton` | ShuffleOperations.`shuffle(Automaton a1, Automaton a2)` Returns an automaton that accepts the shuffle (interleaving) of the languages of the given automata.
    `Automaton` | Automaton.`singleChars()` See `SpecialOperations.singleChars(Automaton)`.
    `static Automaton` | SpecialOperations.`singleChars(Automaton a)` Returns an automaton that accepts the single chars that occur in strings that are accepted by the given automaton.
    `static Automaton` | SpecialOperations.`subst(Automaton a, char c, java.lang.String s)` Returns an automaton where all transitions of the given char are replaced by a string.
    `static Automaton` | SpecialOperations.`subst(Automaton a, java.util.Map<java.lang.Character,java.util.Set<java.lang.Character>> map)` Returns an automaton where all transition labels have been substituted.
    `Automaton` | Automaton.`subst(char c, java.lang.String s)` See `SpecialOperations.subst(Automaton, char, String)`.
    `Automaton` | Automaton.`subst(java.util.Map<java.lang.Character,java.util.Set<java.lang.Character>> map)` See `SpecialOperations.subst(Automaton, Map)`.
    `Automaton` | RegExp.`toAutomaton()` Constructs new `Automaton` from this `RegExp`.
    `Automaton` | RegExp.`toAutomaton(AutomatonProvider automaton_provider)` Constructs new `Automaton` from this `RegExp`.
    `Automaton` | RegExp.`toAutomaton(AutomatonProvider automaton_provider, boolean minimize)` Constructs new `Automaton` from this `RegExp`.
    `Automaton` | RegExp.`toAutomaton(boolean minimize)` Constructs new `Automaton` from this `RegExp`.
    `Automaton` | RegExp.`toAutomaton(java.util.Map<java.lang.String,Automaton> automata)` Constructs new `Automaton` from this `RegExp`.
    `Automaton` | RegExp.`toAutomaton(java.util.Map<java.lang.String,Automaton> automata, boolean minimize)` Constructs new `Automaton` from this `RegExp`.
    `static Automaton` | SpecialOperations.`trim(Automaton a, java.lang.String set, char c)` Returns an automaton that accepts the trimmed language of the given automaton.
    `Automaton` | Automaton.`trim(java.lang.String set, char c)` See `SpecialOperations.trim(Automaton, String, char)`.
    `Automaton` | Automaton.`union(Automaton a)` See `BasicOperations.union(Automaton, Automaton)`.
    `static Automaton` | BasicOperations.`union(Automaton a1, Automaton a2)` Returns an automaton that accepts the union of the languages of the given automata.
    `static Automaton` | BasicOperations.`union(java.util.Collection<Automaton> l)` Returns an automaton that accepts the union of the languages of the given automata.
    `static Automaton` | Automaton.`union(java.util.Collection<Automaton> l)` See `BasicOperations.union(Collection)`.

    Methods in dk.brics.automaton with parameters of type Automaton
    Modifier and Type | Method and Description
    --- | ---
    `static void` | BasicOperations.`addEpsilons(Automaton a, java.util.Collection<StatePair> pairs)` Adds epsilon transitions to the given automaton.
    `static Automaton` | BasicOperations.`complement(Automaton a)` Returns a (deterministic) automaton that accepts the complement of the language of the given automaton.
    `static Automaton` | SpecialOperations.`compress(Automaton a, java.lang.String set, char c)` Returns an automaton that accepts the compressed language of the given automaton.
    `Automaton` | Automaton.`concatenate(Automaton a)` See `BasicOperations.concatenate(Automaton, Automaton)`.
    `static Automaton` | BasicOperations.`concatenate(Automaton a1, Automaton a2)` Returns an automaton that accepts the concatenation of the languages of the given automata.
    `static void` | BasicOperations.`determinize(Automaton a)` Determinizes the given automaton.
    `static java.lang.String` | SpecialOperations.`getCommonPrefix(Automaton a)` Returns the longest string that is a prefix of all accepted strings and visits each state at most once.
    `static java.util.Set<java.lang.String>` | SpecialOperations.`getFiniteStrings(Automaton a)` Returns the set of accepted strings, assuming this automaton has a finite language.
    `static java.util.Set<java.lang.String>` | SpecialOperations.`getFiniteStrings(Automaton a, int limit)` Returns the set of accepted strings, assuming that at most `limit` strings are accepted.
    `static java.lang.String` | BasicOperations.`getShortestExample(Automaton a, boolean accepted)` Returns a shortest accepted/rejected string.
    `static java.util.Set<java.lang.String>` | SpecialOperations.`getStrings(Automaton a, int length)` Returns the set of accepted strings of the given length.
    `static Automaton` | SpecialOperations.`hexCases(Automaton a)` Constructs automaton that accepts the same strings as the given automaton but ignores upper/lower case of A-F.
    `static Automaton` | Automaton.`hexCases(Automaton a)` See `SpecialOperations.hexCases(Automaton)`.
    `static Automaton` | SpecialOperations.`homomorph(Automaton a, char[] source, char[] dest)` Returns an automaton accepting the homomorphic image of the given automaton using the given function.
    `Automaton` | Automaton.`intersection(Automaton a)` See `BasicOperations.intersection(Automaton, Automaton)`.
    `static Automaton` | BasicOperations.`intersection(Automaton a1, Automaton a2)` Returns an automaton that accepts the intersection of the languages of the given automata.
    `static boolean` | BasicOperations.`isEmpty(Automaton a)` Returns true if the given automaton accepts no strings.
    `static boolean` | BasicOperations.`isEmptyString(Automaton a)` Returns true if the given automaton accepts the empty string and nothing else.
    `static boolean` | SpecialOperations.`isFinite(Automaton a)` Returns true if the language of this automaton is finite.
    `static boolean` | BasicOperations.`isTotal(Automaton a)` Returns true if the given automaton accepts all strings.
    `static void` | MinimizationOperations.`minimize(Automaton a)` Minimizes (and determinizes if not already deterministic) the given automaton.
    `static Automaton` | Automaton.`minimize(Automaton a)` See `MinimizationOperations.minimize(Automaton)`.
    `static void` | MinimizationOperations.`minimizeBrzozowski(Automaton a)` Minimizes the given automaton using Brzozowski's algorithm.
    `static void` | MinimizationOperations.`minimizeHopcroft(Automaton a)` Minimizes the given automaton using Hopcroft's algorithm.
    `static void` | MinimizationOperations.`minimizeHuffman(Automaton a)` Minimizes the given automaton using Huffman's algorithm.
    `Automaton` | Automaton.`minus(Automaton a)` See `BasicOperations.minus(Automaton, Automaton)`.
    `static Automaton` | BasicOperations.`minus(Automaton a1, Automaton a2)` Returns a (deterministic) automaton that accepts the intersection of the language of `a1` and the complement of the language of `a2`.
    `static Automaton` | BasicOperations.`optional(Automaton a)` Returns an automaton that accepts the union of the empty string and the language of the given automaton.
    `Automaton` | Automaton.`overlap(Automaton a)` See `SpecialOperations.overlap(Automaton, Automaton)`.
    `static Automaton` | SpecialOperations.`overlap(Automaton a1, Automaton a2)` Returns an automaton that accepts the overlap of strings that in more than one way can be split into a left part being accepted by `a1` and a right part being accepted by `a2`.
    `static void` | SpecialOperations.`prefixClose(Automaton a)` Prefix closes the given automaton.
    `static Automaton` | SpecialOperations.`projectChars(Automaton a, java.util.Set<java.lang.Character> chars)` Returns an automaton with projected alphabet.
    `static Automaton` | BasicOperations.`repeat(Automaton a)` Returns an automaton that accepts the Kleene star (zero or more concatenated repetitions) of the language of the given automaton.
    `static Automaton` | BasicOperations.`repeat(Automaton a, int min)` Returns an automaton that accepts `min` or more concatenated repetitions of the language of the given automaton.
    `static Automaton` | BasicOperations.`repeat(Automaton a, int min, int max)` Returns an automaton that accepts between `min` and `max` (including both) concatenated repetitions of the language of the given automaton.
    `static Automaton` | SpecialOperations.`replaceWhitespace(Automaton a)` Constructs automaton that accepts 0x20, 0x9, 0xa, and 0xd in place of each 0x20 transition in the given automaton.
    `static Automaton` | Automaton.`replaceWhitespace(Automaton a)` See `SpecialOperations.replaceWhitespace(Automaton)`.
    `static java.util.Set<State>` | SpecialOperations.`reverse(Automaton a)` Reverses the language of the given (non-singleton) automaton while returning the set of new initial states.
    `static boolean` | BasicOperations.`run(Automaton a, java.lang.String s)` Returns true if the given string is accepted by the automaton.
    `Automaton` | Automaton.`shuffle(Automaton a)` See `ShuffleOperations.shuffle(Automaton, Automaton)`.
    `static Automaton` | ShuffleOperations.`shuffle(Automaton a1, Automaton a2)` Returns an automaton that accepts the shuffle (interleaving) of the languages of the given automata.
    `static java.lang.String` | ShuffleOperations.`shuffleSubsetOf(java.util.Collection<Automaton> ca, Automaton a, java.lang.Character suspend_shuffle, java.lang.Character resume_shuffle)` Returns a string that is an interleaving of strings that are accepted by `ca` but not by `a`.
    `static java.lang.String` | Automaton.`shuffleSubsetOf(java.util.Collection<Automaton> ca, Automaton a, java.lang.Character suspend_shuffle, java.lang.Character resume_shuffle)` See `ShuffleOperations.shuffleSubsetOf(Collection, Automaton, Character, Character)`.
    `static Automaton` | SpecialOperations.`singleChars(Automaton a)` Returns an automaton that accepts the single chars that occur in strings that are accepted by the given automaton.
    `boolean` | Automaton.`subsetOf(Automaton a)` See `BasicOperations.subsetOf(Automaton, Automaton)`.
    `static boolean` | BasicOperations.`subsetOf(Automaton a1, Automaton a2)` Returns true if the language of `a1` is a subset of the language of `a2`.
    `static Automaton` | SpecialOperations.`subst(Automaton a, char c, java.lang.String s)` Returns an automaton where all transitions of the given char are replaced by a string.
    `static Automaton` | SpecialOperations.`subst(Automaton a, java.util.Map<java.lang.Character,java.util.Set<java.lang.Character>> map)` Returns an automaton where all transition labels have been substituted.
    `static Automaton` | SpecialOperations.`trim(Automaton a, java.lang.String set, char c)` Returns an automaton that accepts the trimmed language of the given automaton.
    `Automaton` | Automaton.`union(Automaton a)` See `BasicOperations.union(Automaton, Automaton)`.
    `static Automaton` | BasicOperations.`union(Automaton a1, Automaton a2)` Returns an automaton that accepts the union of the languages of the given automata.

    Method parameters in dk.brics.automaton with type arguments of type Automaton
    Modifier and Type | Method and Description
    --- | ---
    `static Automaton` | BasicOperations.`concatenate(java.util.List<Automaton> l)` Returns an automaton that accepts the concatenation of the languages of the given automata.
    `static Automaton` | Automaton.`concatenate(java.util.List<Automaton> l)` See `BasicOperations.concatenate(List)`.
    `static java.lang.String` | ShuffleOperations.`shuffleSubsetOf(java.util.Collection<Automaton> ca, Automaton a, java.lang.Character suspend_shuffle, java.lang.Character resume_shuffle)` Returns a string that is an interleaving of strings that are accepted by `ca` but not by `a`.
    `static java.lang.String` | Automaton.`shuffleSubsetOf(java.util.Collection<Automaton> ca, Automaton a, java.lang.Character suspend_shuffle, java.lang.Character resume_shuffle)` See `ShuffleOperations.shuffleSubsetOf(Collection, Automaton, Character, Character)`.
    `Automaton` | RegExp.`toAutomaton(java.util.Map<java.lang.String,Automaton> automata)` Constructs new `Automaton` from this `RegExp`.
    `Automaton` | RegExp.`toAutomaton(java.util.Map<java.lang.String,Automaton> automata, boolean minimize)` Constructs new `Automaton` from this `RegExp`.
    `static Automaton` | BasicOperations.`union(java.util.Collection<Automaton> l)` Returns an automaton that accepts the union of the languages of the given automata.
    `static Automaton` | Automaton.`union(java.util.Collection<Automaton> l)` See `BasicOperations.union(Collection)`.

    Constructors in dk.brics.automaton with parameters of type Automaton
    Constructor and Description
    `RunAutomaton(Automaton a)` Constructs a new `RunAutomaton` from a deterministic `Automaton`.
    `RunAutomaton(Automaton a, boolean tableize)` Constructs a new `RunAutomaton` from a deterministic `Automaton`.