Unit-5: ω -regular properties B. Srivathsan Chennai Mathematical Institute NPTEL-course July - November 2015 1 / 19
Module 4: Simple properties of NBA 2 / 19
Determinization Product construction Emptiness Complementation Union 3 / 19
Deterministic Büchi Automata Words where b occurs infinitely often a b b q 0 q 1 a ◮ Single initial state ◮ From every state - on an alphabet, there is a unique transition 4 / 19
Question: Can every NBA be converted to an equivalent DBA? 5 / 19
( a + b ) ∗ b ω : a occurs only finitely often a , b b b q 0 q 1 6 / 19
( a + b ) ∗ b ω : a occurs only finitely often a , b b b q 0 q 1 ◮ Automaton has to guess the point from where only b occurs ◮ A deterministic Büchi automaton cannot make this guess 6 / 19
( a + b ) ∗ b ω : a occurs only finitely often a , b b b q 0 q 1 ◮ Automaton has to guess the point from where only b occurs ◮ A deterministic Büchi automaton cannot make this guess The above language cannot be accepted by a DBA 6 / 19
( a + b ) ∗ b ω : a occurs only finitely often a , b b b q 0 q 1 ◮ Automaton has to guess the point from where only b occurs ◮ A deterministic Büchi automaton cannot make this guess The above language cannot be accepted by a DBA Theorem 4.50 (Page 190) of Principles of Model Checking , Baier and Katoen. MIT Press (2008) 6 / 19
Determinization Product construction DBA less powerful than NBA Emptiness Complementation Union 7 / 19
b a b a b b a b p 0 p 1 p 2 q 0 q 1 a a Word ( ab ) ω is accepted by both automata 8 / 19
b a b a b b a b p 0 p 1 p 2 q 0 q 1 a a Word ( ab ) ω is accepted by both automata Coming next: The synchronous product construction 8 / 19
b a b a b b a b p 0 p 1 p 2 q 0 q 1 a a a a 〈 p 0 , q 0 〉 〈 p 1 , q 0 〉 a a b b 〈 p 2 , q 1 〉 〈 p 0 , q 1 〉 b b 9 / 19
b a b a b b a b p 0 p 1 p 2 q 0 q 1 a a a a 〈 p 1 , q 1 〉 is not present 〈 p 0 , q 0 〉 〈 p 1 , q 0 〉 a a b b 〈 p 2 , q 1 〉 〈 p 0 , q 1 〉 b b 9 / 19
b a b a b b a b p 0 p 1 p 2 q 0 q 1 a a a a 〈 p 1 , q 1 〉 is not present 〈 p 0 , q 0 〉 〈 p 1 , q 0 〉 No accepting state! a a b b 〈 p 2 , q 1 〉 〈 p 0 , q 1 〉 b b 9 / 19
b a b a b b a b p 0 p 1 p 2 q 0 q 1 a a a a 〈 p 1 , q 1 〉 is not present 〈 p 0 , q 0 〉 〈 p 1 , q 0 〉 No accepting state! a a b b 〈 p 2 , q 1 〉 〈 p 0 , q 1 〉 b b But intersection of the two automata is not empty 9 / 19
◮ Need to modify the product construction ◮ Track accepting states of both automata ◮ Ensure that both automata visit accepting states infinitely often 10 / 19
b a b a b b a b q 0 q 1 p 0 p 1 p 2 a a 11 / 19
b a b a b b a b q 0 q 1 p 0 p 1 p 2 a a p 0 p 1 p 0 p 1 p 0 p 1 q 0 q 0 q 0 q 0 q 0 q 0 1 1 2 2 3 3 p 2 p 0 p 2 p 0 p 2 p 0 q 1 q 1 q 1 q 1 q 1 q 1 1 1 2 2 3 3 11 / 19
b a b a b b a b q 0 q 1 p 0 p 1 p 2 a a p 0 p 1 p 0 p 1 p 0 p 1 a q 0 q 0 q 0 q 0 q 0 q 0 1 1 2 2 3 3 b p 2 p 0 p 2 p 0 p 2 p 0 q 1 q 1 q 1 q 1 q 1 q 1 1 1 2 2 3 3 11 / 19
b a b a b b a b q 0 q 1 p 0 p 1 p 2 a a a p 0 p 1 p 0 p 1 p 0 p 1 a q 0 q 0 q 0 q 0 q 0 q 0 1 1 2 2 3 3 b b p 2 p 0 p 2 p 0 p 2 p 0 q 1 q 1 q 1 q 1 q 1 q 1 1 1 2 2 3 3 11 / 19
b a b a b b a b q 0 q 1 p 0 p 1 p 2 a a a p 0 p 1 p 0 p 1 p 0 p 1 a q 0 q 0 q 0 q 0 q 0 q 0 1 1 2 2 3 3 b b a p 2 p 0 p 2 p 0 p 2 p 0 q 1 q 1 q 1 q 1 q 1 q 1 1 1 2 2 3 3 b 11 / 19
b a b a b b a b q 0 q 1 p 0 p 1 p 2 a a a a p 0 p 1 p 0 p 1 p 0 p 1 a q 0 q 0 q 0 q 0 q 0 q 0 1 1 2 2 3 3 b b b a p 2 p 0 p 2 p 0 p 2 p 0 q 1 q 1 q 1 q 1 q 1 q 1 1 1 2 2 3 3 b 11 / 19
b a b a b b a b q 0 q 1 p 0 p 1 p 2 a a a a p 0 p 1 p 0 p 1 p 0 p 1 a q 0 q 0 q 0 q 0 q 0 q 0 1 1 2 2 3 3 b b b a a p 2 p 0 p 2 p 0 p 2 p 0 q 1 q 1 q 1 q 1 q 1 q 1 1 1 2 2 3 3 b b 11 / 19
b a b a b b a b q 0 q 1 p 0 p 1 p 2 a a a a a p 0 p 1 p 0 p 1 p 0 p 1 a q 0 q 0 q 0 q 0 q 0 q 0 1 1 2 2 3 3 b b b b a a p 2 p 0 p 2 p 0 p 2 p 0 q 1 q 1 q 1 q 1 q 1 q 1 1 1 2 2 3 3 b b 11 / 19
b a b a b b a b q 0 q 1 p 0 p 1 p 2 a a a a a p 0 p 1 p 0 p 1 p 0 p 1 a q 0 q 0 q 0 q 0 q 0 q 0 1 1 2 2 3 3 b b b b a a p 2 p 0 p 2 p 0 p 2 p 0 q 1 q 1 q 1 q 1 q 1 q 1 1 1 2 2 3 3 b b b a 11 / 19
b a b a b b a b q 0 q 1 p 0 p 1 p 2 a a a a a p 0 p 1 p 0 p 1 p 0 p 1 a q 0 q 0 q 0 q 0 q 0 q 0 1 1 2 2 3 3 b b b b a a a p 2 p 0 p 2 p 0 p 2 p 0 q 1 q 1 q 1 q 1 q 1 q 1 b 1 1 2 2 3 3 b b b a 11 / 19
b a b a b b a b q 0 q 1 p 0 p 1 p 2 a a a a a p 0 p 1 p 1 p 0 a q 0 q 0 q 0 q 0 1 1 2 3 b b b b a a a p 2 p 0 p 2 p 2 q 1 q 1 q 1 q 1 b 1 1 2 3 b b b a 11 / 19
b a b a b b a b p 0 p 1 p 2 q 0 q 1 a a a a a a p 0 p 1 p 1 p 0 a q 0 q 0 q 0 q 0 1 1 2 3 b b b b a a a p 2 p 0 p 2 p 2 q 1 q 1 q 1 q 1 b 1 1 2 3 b b b a 12 / 19
b a b a b b a b p 0 p 1 p 2 q 0 q 1 a a a a a a p 0 p 1 p 1 p 0 a q 0 q 0 q 0 q 0 1 1 2 3 b b b b a a a p 2 p 0 p 2 p 2 q 1 q 1 q 1 q 1 b 1 1 2 3 b b b a Word is accepted by product ↔ it is accepted by both component automata 12 / 19
a b b b q 0 p 0 p 1 a 13 / 19
a b b b q 0 p 0 p 1 a p 0 p 1 p 1 p 1 b b b q 0 q 0 q 0 q 0 1 1 2 3 b 13 / 19
Determinization Product construction DBA less powerful than NBA Language intersection Emptiness Complementation Union 14 / 19
Determinization Product construction DBA less powerful than NBA Language intersection Emptiness Complementation Next unit ... Union 14 / 19
Language: b occurs infinitely often a b b p 0 p 1 a 15 / 19
Language: b occurs infinitely often a b b p 0 p 1 a Language: a occurs infinitely often a b b p 0 p 1 a 15 / 19
Language: b occurs infinitely often a b b p 0 p 1 a Language: a occurs infinitely often a b b p 0 p 1 a Not the complement! ( ab ) ω present in both 15 / 19
Challenges ◮ Mere interchange of accepting states does not work ◮ Moreoever, NBA are more expressive than DBA 16 / 19
Complementation Theorem Given an NBA � , there is an algorithm to compute the NBA accepting the complement language � ( � ) c Proof out of scope of this course 17 / 19
b a b a b b a b q 0 q 1 p 0 p 1 p 2 a a 18 / 19
b a b a b b a b q 0 q 1 p 0 p 1 p 2 a a For union , take the disjoint union of the two NBA 18 / 19
Determinization Product construction DBA less powerful than NBA Language intersection Emptiness Complementation Next unit ... Union 19 / 19
Recommend
More recommend