In automata theory, a Muller automaton is a type of an ÃÂ-automaton. The acceptance condition separates a Muller automaton from other ÃÂ-automata. The Muller automaton is defined using a Muller acceptance condition, i.e. the set of all states visited infinitely often must be an element of the acceptance set. Both deterministic and non-deterministic Muller automata recognize the ÃÂ-regular languages. They are named after David E. Muller, an American mathematician and computer scientist, who invented them in 1963.
Formally, a deterministic Muller-automaton is a tuple A = (Q,ã,ô,q<sub>0</sub>,F) that consists of the following information:
In a non-deterministic Muller automaton, the transition function ô is replaced with a transition relation àthat returns a set of states and the initial state q<sub>0</sub> is replaced by a set of initial states Q<sub>0</sub>. Generally, 'Muller automaton' refers to a non-deterministic Muller automaton.
For more comprehensive formalisation look at ÃÂ-automaton.
The Muller automata are equally expressive as parity automata, Rabin automata, Streett automata, and non-deterministic Büchi automata, to mention some, and strictly more expressive than the deterministic Büchi automata. The equivalence of the above automata and non-deterministic Muller automata can be shown very easily as the accepting conditions of these automata can be emulated using the acceptance condition of Muller automata and vice versa.
McNaughton's theorem demonstrates the equivalence of non-deterministic Büchi automaton and deterministic Muller automaton. Thus, deterministic and non-deterministic Muller automata are equivalent in terms of the languages they can accept.
Following is a list of automata constructions that each transforms a type of ÃÂ-automata to a non-deterministic Muller automaton.
McNaughton's theorem provides a procedure to transform any non-deterministic Büchi automaton into a deterministic Muller automaton.