-automata - theoretical computer science · ω-automata • automata that accept (or reject) words...
TRANSCRIPT
![Page 1: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/1.jpg)
ω-Automata
![Page 2: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/2.jpg)
ω-Automata
• Automata that accept (or reject) words of infinite length.
• Languages of infinite words appear:– in verification, as encodings of non-terminating
executions of a program.– in arithmetic, as encodings of sets of real
numbers.
![Page 3: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/3.jpg)
ω-Languages
• An ω-word is an infinite sequence of letters.• The set of all ω-words is denoted by Σ .• An ω-language is a set of ω-words, i.e., a subset
of Σ .• A language 퐿 can be concatenated with an
ω-language 퐿 to yield the ω-language 퐿 퐿 , but two ω-languages cannot be concatenated.
• The ω-iteration of a language 퐿 ⊆ Σ⋆, denoted by 퐿 , is an ω-language.
• Observe: ∅ = 휖 = ∅
![Page 4: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/4.jpg)
ω-Regular Expressions
• ω-regular expressions have syntax
푠 ∷= 푟 |푟푠 |푠 + 푠
where 푟 is an (ordinary) regular expression.
• The ω-language 퐿 (푠) of an ω-regular expression 푠is inductively defined by
퐿 푟 = 퐿 푟 퐿 푟푠 = 퐿 푟 퐿 (푠 )
퐿 푠 + 푠 = 퐿 푠 ∪ 퐿 (푠 )• A language is ω-regular if it is the language of some
ω-regular expression .
![Page 5: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/5.jpg)
Büchi Automata
• Invented by J.R. Büchi, swiss logician.
![Page 6: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/6.jpg)
Büchi Automata
• Same syntax as DFAs and NFAs, but different acceptance condition.
• A run of a Büchi automaton on an ω-word is an infinite sequence of states and transitions.
• A run is accepting if it visits the set of final states infinitely often.– Final states renamed to accepting states.
• A DBA or NBA 퐴 accepts an ω-word if it has an accepting run on it; the ω-language 퐿 퐴 of 퐴 is the set of ω-words it accepts.
![Page 7: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/7.jpg)
Some examples
![Page 8: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/8.jpg)
From ω-Regular Expressions to NBAs
![Page 9: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/9.jpg)
From ω-Regular Expressions to NBAs
![Page 10: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/10.jpg)
From ω-Regular Expressions to NBAs
![Page 11: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/11.jpg)
From NBAs to ω-Regular Expressions
• Lemma: Let 퐴 be a NFA, and let 푞, 푞 be states of 퐴 . The language 퐿 of words with runs leading from 푞 to 푞 and visiting 푞 exactly once is regular.
• Let 푟 denote a regular expression for 퐿 .
![Page 12: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/12.jpg)
From NBAs to ω-Regular Expressions
• Example:
![Page 13: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/13.jpg)
From NBAs to ω-Regular Expressions
• Given a NBA 퐴 , we look at it as a NFA, and compute regular expressions 푟 .
• We show:
퐿 퐴 = 퐿 푟 푟∈
– An ω-word belongs to 퐿 퐴 iff it is accepted by a run that starts at 푞 and visits some accepting state 푞 infinitely often.
![Page 14: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/14.jpg)
From NBAs to ω-Regular Expressions
• Example:
퐿 퐴 = 푟 푟 + 푟 푟
![Page 15: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/15.jpg)
DBAs are less expressive than NBAs
• Prop.: The ω-language 푎 + 푏 ∗푏 is not recognized by any DBA.
• Proof: By contradiction. Assume some DBA recognizes 푎 + 푏 ∗푏 .– DBA accepts 푏 → DFA accepts 푏
DBA accepts 푏 푎 푏 → DFA accepts푏 푎 푏DBA accepts 푏 푎 푏 푎푏 → DFA accepts푏 푎 푏 푎 푏 etc.
– By determinism and finite number of states, the DBA accepts푏 푎 푏 푎 푏 …푎 푏 푎푏 … 푎푏
which does not belong to 푎 + 푏 ∗푏 .
![Page 16: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/16.jpg)
Generalized Büchi Automata
• Same power as Büchi automata, but more adequate for some constructions.
• Several sets of accepting states.• A run is accepting if it visits each set of accepting
states infinitely often.
![Page 17: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/17.jpg)
From NGAs to NBAs
• Important fact:
All the sets 퐹 , … ,퐹 are visited infinitely often
is equivalent to
퐹 is eventually visitedand
every visit to 퐹 is eventually followed by a visit to 퐹⊕
![Page 18: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/18.jpg)
From NGAs to NBAs
퐹
퐹
퐹
퐹
퐹
퐹
퐹
퐹
퐹
퐹
퐹
퐹
NGA with 3 sets of accepting states
Equivalent NBA with 3 copies of the NGA
![Page 19: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/19.jpg)
![Page 20: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/20.jpg)
![Page 21: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/21.jpg)
• Question: Are there other classes of omega-automata with – the same expressive power as NBAs or NGAs, and – with equivalent deterministic and
nondeterministic versions?
DGAs have the same expressive power as DBAs, and so are not equivalent to NGAs.
We are only willing to change the acceptance condition!
![Page 22: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/22.jpg)
Co-Büchi automata
• A nondeterministic co-Büchi automaton (NCA) is syntactically identical to a NBA, but a run is accepting iff it only visits accepting states finitely often.
![Page 23: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/23.jpg)
Which are the languages?
![Page 24: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/24.jpg)
Determinizing co-Büchi automata
• Given a NCA 퐴 we construct a DCA 퐵 such that 퐿 퐴 = 퐿 퐵 .
• We proceed in three steps:– We assign to every ω-word 푤 a directed acyclic
graph 푑푎푔(푤) that ``contains´´ all runs of 퐴 on 푤.– We prove that 푤 is accepted by 퐴 iff 푑푎푔(푤) is
infinite but contains only finitely many breakpoints.– We construct a DCA 퐵 that accepts an ω-word 푤 iff 푑푎푔(푤) is infinite and contains finitely many breakpoints.
![Page 25: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/25.jpg)
• Running example:
![Page 26: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/26.jpg)
푑푎푔(푎푏푎 )
푑푎푔 푎푏
![Page 27: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/27.jpg)
• 퐴 accepts w iff some infinite path of 푑푎푔 푤only visits accepting states finitely often
![Page 28: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/28.jpg)
Levels of a 푑푎푔
Level 0 Level 1 Level 2 Level 3 Level 4
![Page 29: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/29.jpg)
Breakpoints of a 푑푎푔
• We defined inductively the set of levels that are breakpoints:– Level 0 is always a breakpoint– If level 푙is a breakpoint, then the next level 푙′ such
that every path between 푙 and 푙 visits an accepting state is also a breakpoint.
![Page 30: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/30.jpg)
Only two breakpoints
Infinitely many breakpoints
![Page 31: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/31.jpg)
Lemma: 퐴 accepts 푤 iff 푑푎푔 푤 is infinite and has only finitely many breakpoints.Proof: If 퐴 accepts w, then it has at least one run on 푤, and so 푑푎푔 푤 is infinite. Moreover, the run visits accepting states only finitely often, and so after it stops visiting accepting states there are no further breakpoints.If 푑푎푔 푤 is infinite, then it has an infinite path, and so 퐴 has at least one run on 푤. Since 푑푎푔 푤 has finitely many breakpoints, then every infinite path visits accepting states only finitely often.
![Page 32: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/32.jpg)
Constructing the DCA
• If we could tell if a level is a breakpoint by looking at it, we could take the set of breakpoints as states of the DCA.
• However, we also need some information about its ``history´´.
• Solution: add that information to the level!
![Page 33: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/33.jpg)
Constructing the DCA
• States: pairs [푃,푂] where:– 푃 is the set of states of a level, and– 푂 ⊆ 푃 is the set of states ``that owe a visit to the
set of accepting states‘‘.
• Formally: 푞 ∈ 푂 if 푞 is the endpoint of a path starting at the last breakpoint that has not yet visited any accepting state.
![Page 34: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/34.jpg)
Constructing the DCA
• States: pairs [푃,푂]• Initial state: pair [ 푞 ,∅] if 푞 ∈ 퐹, and
[ 푞 , 푞 ] otherwise.• Transitions: 훿 푃,푄 ,푎 = [푃 ,푂 ] where 푃′ = 훿(푃,푎) , and – 푂 = 훿 푂,푎 ∖ 퐹 if 푂 ≠ ∅(automaton updates set of owing states)– 푂 = 훿 푃,푎 ∖ 퐹 if 푂 = ∅(automaton starts search for next breakpoint)
• Accepting states: pairs [푃,∅] (no owing states)
![Page 35: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/35.jpg)
• Complexity: at most 3 states
![Page 36: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/36.jpg)
Running example
![Page 37: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/37.jpg)
• Question: Are there other classes of omega-automata with – the same expressive power as NBAs or NGAs, and – with equivalent deterministic and
nondeterministic versions?
Are co-Büchi automata a positive answer?
Recall ...
![Page 38: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/38.jpg)
Unfortunately no ...
Lemma: No DCA recognizes the language 푏∗푎 .Proof: Assume the contrary. Then the same automaton seen as a DBA recognizes the complement 푎 + 푏 ∗푏 . Contradiction.
So the quest goes on ...
![Page 39: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/39.jpg)
Muller automata
• A nondeterministic Muller automaton (NMA) has a collection 퐹 ,퐹 , … ,퐹 of sets of accepting states.
• A run is accepting if the set of states it visits infinitely often is equal to one of the sets in the collection.
![Page 40: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/40.jpg)
From Büchi to Muller automata
• Let 퐴 be a NBA with set 퐹 of accepting states.• A set of states of 퐴 is good if it contains some state of 퐹. • Let 풢 be the set of all good sets of 퐴.• Let 퐴′ be "the same automaton" as 퐴, but with Muller
condition 풢.• Let 휌 be an arbitrary run of 퐴 and퐴′. We have
휌 is accepting in 퐴iff inf(휌) contains some state of 퐹iff inf(휌) is a good set of 퐴iff 휌 is accepting in 퐴′
![Page 41: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/41.jpg)
From Muller to Büchi automata
• Let 퐴 be a NMA with condition 퐹 ,퐹 , … ,퐹 .• Let 퐴 , … ,퐴 be NMAs with the same structure
as 퐴 but Muller conditions 퐹 , 퐹 , … , 퐹respectively.
• We have: 퐿 퐴 = 퐿 퐴 ∪…∪ 퐿 퐴• We proceed in two steps:
1. we construct for each NMA 퐴 an NGA 퐴 such that 퐿 퐴 = 퐿(퐴 )
2. we construct an NGA 퐴′ such that 퐿 퐴′ = 퐿 퐴′ ∪…∪ 퐿 퐴′
![Page 42: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/42.jpg)
퐹 NMA
NGA with accepting condition{ 푞 , … , q }
Transitions leaving퐹 are duplicatedand resent to thecopy of 퐹
푞
푞
푞
푞
![Page 43: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/43.jpg)
![Page 44: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/44.jpg)
![Page 45: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/45.jpg)
Equivalence of NMAs and DMAs
• Theorem (Safra): Any NBA with 푛 states can be effectively transformed into a DMA of size 푛 ( ).Proof: Omitted.
• DMA for 푎 + 푏 ∗푏 :
with accepting condition 푞
![Page 46: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/46.jpg)
• Question: Are there other classes of omega-automata with – the same expressive power as NBAs or NGAs, and – with equivalent deterministic and
nondeterministic versions?
• Answer: Yes, Muller automata
![Page 47: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/47.jpg)
Is the quest over?
• Recall the translation NBA ⇒NMA • The NMA has the same structure as the NBA;
its accepting condition are all the good sets of states.
• The translation has exponential complexity.
New question: Is there a class of ω-automata with – the same expressive power as NBAs, – equivalent deterministic and nondeterministic
versions, and– polynomial conversions to and from Büchi automata?
![Page 48: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/48.jpg)
Rabin automata
• The acceptance condition is a set of pairs { 퐹 ,퐺 , … , 퐹 ,퐺 }
• A run 휌 is accepting if there is a pair 퐹 ,퐺 such that 휌visits the set 퐹 infinitely
often and the set 퐺 finitely often.• Translations NBA ⇒NRA and NRA ⇒NBA are
left as an exercise.• Theorem (Safra): Any NBA with 푛 states can be
effectively transformed into a DRA with 푛 states and 푂(푛) accepting pairs.
![Page 49: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/49.jpg)
Is the quest over?• The accepting condition of Rabin automata is not closed
under negation: the negation of∃푖 ∈ 1, … ,푚 : inf 휌 ∩ 퐹 ≠ ∅ ∧ inf 휌 ∩ 퐺 = ∅
is of the form∀푖 ∈ 1, … ,푚 : inf 휌 ∩ 퐹 = ∅ ∨ inf 휌 ∩ 퐺 ≠ ∅
or, equivalently ∀푖 ∈ 1, … ,푚 : inf 휌 ∩ 퐺 = ∅ ⇒ inf 휌 ∩ 퐹 = ∅
• This is the Streett condition.• The Büchi condition is a special case of the Streett
condition.• However, the translation from Streett to Bchi is
exponential.
![Page 50: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/50.jpg)
Is the quest over?
New question: Is there a class of ω-automata with – the same expressive power as NBAs, – equivalent deterministic and nondeterministic versions, – polynomial conversions to and from Büchi automata, and– an accepting condition closed under negation?
![Page 51: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/51.jpg)
Parity automata
• The acceptance condition is a sequence (퐹 , … ,퐹 ) ofsets of states such that 퐹 ⊆ 퐹 ⊆ ⋯ ⊆ 퐹 = 푄.
• NBA→NPA. 퐹 → (∅,퐹,푄,푄)• NPA→NBA. NPA→NRA →NBA.• NPA→NRA. (퐹 , … ,퐹 ) → 퐹 ,퐹 , … , 퐹 ,퐹 , 퐹 ,퐹• Theorem (Safra,Piterman): Any NBA with 푛 states can be
effectively transformed into a DPA with 푛 states and 푂(푛) accepting sets.
• Complementation of NPAs. (퐹 , … ,퐹 ) → (∅,퐹 , … ,퐹 ,푄)
![Page 52: -Automata - Theoretical Computer Science · ω-Automata • Automata that accept (or reject) words of infinite length. • Languages of infinite words appear: – in verification,](https://reader034.vdocuments.us/reader034/viewer/2022042520/5f3f48c04376b6086f2f7934/html5/thumbnails/52.jpg)
Parity automata
New question: Is there a class of ω-automata with – the same expressive power as NBAs, – equivalent deterministic and nondeterministic versions, – polynomial conversions to and from Büchi automata, and– an accepting condition closed under negation?
• Answer: Yes, parity automata