2. What is ω-automaton Aω-automaton is a deterministic or nondeterministic automaton that runs on infinite, rather than finite, strings as input. Since ω-automata do not stop, they have a variety of acceptance conditions rather than simply a set of accepting states.
3. Classes Buchi automata, Rabin automata, Streett automata, parity automataand Muller automata, each deterministic or non-deterministic These classes of ω-automata differ only in terms of acceptance condition.
4. Deterministic ω-automata A = (Q,Σ,δ,q0,F) Q is a finite set. The elements of Q are called the states of A. Σ is a finite set called the alphabet of A. δ: Q × Σ -> Q is a function, called the transition function of A. q0is an element of Q, called the initial state. Fis the acceptance condition, formally a subset of Qω.
5. DBA(cont.) An input for A is an infinite string over the alphabet Σ, i.e. it is an infinite sequence α = (a1,a2,a3,...). The run of A on such an input is an infinite sequence β = (r0,r1,r2,...) of states, defined as follows: r0 = q0 r1= δ(r0,a1) r2= δ(r1,a2) ... rn = δ(rn-1,an)
6. DBA(cont.) The main purpose of an ω-automaton is to define a subset of the set of all inputs: The set of accepted inputs. Whereas in the case of an ordinary finite automaton every run ends with a state rn and the input is accepted if and only if rn is an accepting state, the definition of the set of accepted inputs is more complicated for ω-automata. Here we must look at the entire run β. The input is accepted if the corresponding run is in F. The set of accepted input ω-words is called the recognized ω-language by the automaton, which is denoted as L(A).
7. Acceptance Condition A Büchi automatonis an ω-automaton A that uses the following acceptance condition, for some subset F of Q: A accepts exactly those runs βfor which Inf(β) ∩ F is not empty, i.e. there is an accepting state that occurs infinitely often in β. Since F is finite, this is equivalent to the condition that βnis accepting for infinitely many natural numbers n.
9. Non-Deterministic ω-automata A = (Q,Σ,Δ,Q0,F) Q is a finite set. The elements of Q are called the states of A. Σ is a finite set called the alphabet of A. Δ is a subset of Q × Σ × Q and is called the transition relation of A. Q0 is a subset of Q, called the initial set of states. Fis the acceptance condition, a subset of Qω.
10. NBA (cont.) Unlike a deterministic ω-automaton which has a transition function δ, the non-deterministic version has a transition relation Δ. Note that Δ can be regarded as a function : Q × Σ -> P(Q) from Q × Σ to the power setP(Q). Thus, given a state qn and a symbol an, the next state qn+1 is not necessarily determined uniquely, rather there is a set of possible next states. A run of A on the input α = (a1,a2,a3,...) is any infinite sequence ρ = (r0,r1,r2,...) of states that satisfies the following conditions: r0is an element of Q0. r1is an element of Δ(r0,a1). r2is an element of Δ(r1,a2). ... rn is an element of Δ(rn-1,an).
11. NBA (cont.) A nondeterministic ω-automaton may admit many different runs on any given input, or none at all. The input is accepted if at least one of the possible runs is accepting. Whether a run is accepting depends only on F, as for deterministic ω-automata. Every deterministic ω-automaton can be regarded as a nondeterministic ω-automaton by taking Δ to be the graph of δ. The definitions of runs and acceptance for deterministic ω-automata are then special cases of the nondeterministic cases.
13. Power of ω-automata An ω-language over Σ is said to be recognized by an ω-automaton A (with the same alphabet) if it is the set of all ω-words accepted by A. The expressive power of a class of ω-automata is measured by the class of all ω-languages which can be recognized by some automaton in the class.
14. Applications ω-automata are useful for specifying behavior of systems that are not expected to terminate, such as hardware, operating systems and control systems. For such systems, you may want to specify a property such as "for every request, an acknowledge eventually follows", or its negation "there is a request which is not followed by an acknowledge". Thus the property of infinite words: one cannot say of a finite sequence that it satisfies this property.
A deterministic finite automaton is an automaton where for each state there exits exactly one following state for each possible input. A non-deterministic finite automaton may have multiple (or no) following states for a given state and input.