29
ω-automata By: Zafar Ali

ω Automaton

Embed Size (px)

Citation preview

Page 1: ω Automaton

ω-automataBy: Zafar Ali

Page 2: ω Automaton

What is ω-automata

• ω-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.

Page 3: ω Automaton

Classes of ω-automata

• Buchi automata, Rabin automata, Streett automata, parity automata and Muller automata, each deterministic or non-deterministic.

• These classes of ω-automata differ only in terms of acceptance condition.

Page 4: ω Automaton

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.

• F is the acceptance condition, formally a subset of Qω.

Page 5: ω Automaton

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)

Page 6: ω Automaton

Buchi Automaton

Page 7: ω Automaton

Buchi Formal definition

• Formally, a deterministic Büchi automaton is a tuple A = (Q,Σ,δ,q0,F) that consists of the following components:

• 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.

• q0 is an element of Q, called the initial state of A.

• F⊆Q is the acceptance condition. A accepts exactly those runs in which at least one of the infinitely often occurring states is in F.

Page 8: ω Automaton

non-deterministic Büchi automaton

• In a non-deterministic Büchi automaton, the transition function δ is replaced with a transition relation Δ that returns a set of states, and the single initial state q0 is replaced by a set I of initial states. Generally, the term Büchiautomaton without qualifier refers to non-deterministic Büchi automata.

Page 9: ω Automaton

Buchi Automaton Accepting condition.

•Word is accepting if it has run in which some accepting state occurs infinitely often.

Page 10: ω Automaton

On input aabbaabb . . .the Buchi automaton shown has only the run: ¨ ABCDABCDABCD . . .The final state ‘D’ is repeating infinitely many times, so string is accepted.

Page 11: ω Automaton

Example 2

A : = α ∈ a, b ω | α ends with either a ω or (ab) ω

Run: aabbbaaaaa….

Or

Run: aaabbbaababababababa…

Page 12: ω Automaton

Muller Automaton

Page 13: ω Automaton

Formal Definition of Muller Automaton

• Formally, a deterministic Muller-automaton is a tuple A = (Q,Σ,δ,q0,F) that consists of the following information:

• Q is a finite set. The elements of Q are called the states of Q.

• Σ is a finite set called the alphabet of A.

• δ: Q × Σ → Q is a function, called the transition function of A.

• q0 is an element of Q, called the initial state.

• F is a set of sets of states. Formally, F ⊆ P(Q) where P(Q) is powerset of Q. F defines the acceptance condition. A accepts exactly those runs in which the set of infinitely often occurring states is an element of F

Page 14: ω Automaton

non-deterministic Muller automaton

• In a non-deterministic Muller automaton, the transition function δ is replaced with a transition relation Δ that returns a set of states and initial state is q0 is replaced by a set of initial states Q0. Generally, Muller automaton refers to non-deterministic Muller automaton.

Page 15: ω Automaton

Muller Automata Accepting Conditions

• A accepts exactly those runs for which set of final states repeats infinity many times F.

In simple words

the set of all states visited infinitely often must be an element of the acceptance set.

Page 16: ω Automaton

Run: aaabbbaabaaa…

here F=S1, and it repeats several times. Above string is accepted.

Page 17: ω Automaton

Comparison between Buchiand Muller Automaton:Lets run: 01111100000…..

States are: 1->2->2->2->2->2->4->3->4->3->4->3->4…….

F=3,4

Buchi: accepts the string because the final states are repeating

Muller: Accepted because the set of final states is repeating.

Page 18: ω Automaton

Rabin automaton

Page 19: ω Automaton

Rabin Automaton

• 1- It is type of w-automaton.

• 2- It is defined by five elements i.e. A=(Q,Σ, δ, qo,Ω)

• 3- Acceptance condition is given by finite family pair Ω

• 4- Each set of pair is represented by (Ei, Fi) where i>=1 and Ei, Fi are set of states that is subset of Q.

• 5- the sets Ei should be exclude from an accepting run after a finite initial segment, while at least one state in Fi has to be visited infinitely often

• 5- The word is accepted if there exist a run of A on the word such that

• ∃(E,F) ∈ Ω(Inf(p) ∩ E equal to ∅) ∧ (Inf(p) ∩ F not equal to∅).

Page 20: ω Automaton

Rabin Automata(Cont)

• The Rabin automaton with state transition diagram above and Rabin condition Ω = ( qb, qa ) accepts all words that consist of infinitely many a’s but only finitely many b’s.

Page 21: ω Automaton

Streett Automaton

• An ω-automaton A = (Q,Σ, δ, qI,Ω) with acceptance component Ω = (E1, F1), . . . , (Ek, Fk) with Ei, Fi ⊆ Q is called Streett automaton if it is used with the following acceptance condition (Streett acceptance):A word α is accepted by A if there exists a run of A on α such that ∀(E,F) ∈ Ω .( Inf(p) ∩ E not equals to ∅) ∨ ( Inf(p) ∩ F equals to ∅)

• (equivalently: if Inf(p) ∩ F not equal to ∅, then Inf(p) ∩ E not equal to ∅).

• if some state from F is visited infinitely often, there has to be a state from E that is also visited infinitely often during an accepting run.

Page 22: ω Automaton

Streett Automata(Cont)

•Example 1.14. Let Σ = a, b. The language consisting of all words that contain infinitely many a’s if they contain infinitely many b’s can be recognized by a Streett automaton with the state graph from Figure 1.2. The appropriate Streett automaton is obtained by taking as acceptance component the set Ω = (qa, qb).

Page 23: ω Automaton

Parity Automaton

Page 24: ω Automaton

Non-deterministic Parity Automaton

•A nondeterministic parity automaton (NPA) is a A = (Q, Σ, q0, δ, Ω) where Q is a finite set of states, Σ is a finite alphabet, q0 ∈ Q is a designated starting state, δ ⊆ Q × Σ × Q is the transition relation, and Ω : Q → N is the priority function.

Page 25: ω Automaton

Cont…..

•A run of A on a word w = a0a1a2 . . . ∈ Σω is a sequence ρ = q0, q1, . . . s.t. q0 is the designated starting state and for all i ∈ N we have: (qi , ai , qi+1) ∈ δ. It is accepting if maxΩ(q) | ∀i ∈ N.∃j ≥ 1.qj = q is even. The language of A is L(A) = w | there is an accepting run of A on w.

Page 26: ω Automaton

Cont…

• NPA are a natural generalisation of the well-known nondeterministic B¨uchi automata

• traditionally defined using the concept of acceptance state rather than a priority function

• A nondeterministic B¨uchi automaton (NBA) is a special kind of an NPA

• For every NPA A of size n and index k there is an NBA B of size ≤ n · c s.t. L(A) = L(B) where c = k 2 + 1 if k is even and c = d k 2 e if k is odd.

Page 27: ω Automaton

Consider the following parity game, with coloringχ(a) = χ(e) = 0, χ(b) = χ(f) = 1, χ(c) = χ(g) = 2, χ(d) = 3:

Page 28: ω Automaton

Conclusion

• ω-automata are useful for specifying behaviour 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.

Page 29: ω Automaton