Chapter II ω-Automata 1. ω-Automata and ω-Languages ω-automata accept (or reject) words of infinite length ω-languages consisting of infinite words appear: — in verification, as encodings of non-terminating executions of a program — in arithmetic, as encodings of sets of real numbers AFS c je/ewm 1 ω-Automata and ω-Languages 345/431 ω-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: ∅ = ∅. AFS c je/ewm 1 ω-Automata and ω-Languages 346/431 ω-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 . AFS c je/ewm 1 ω-Automata and ω-Languages 347/431 Büchi Automata • Invented by J.R. Büchi, swiss logician. AFS c je/ewm 1 ω-Automata and ω-Languages 348/431 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. AFS c je/ewm 1 ω-Automata and ω-Languages 349/431 Some examples AFS c je/ewm 1 ω-Automata and ω-Languages 350/431 From ω-Regular Expressions to NBAs AFS c je/ewm 1 ω-Automata and ω-Languages 351/431 From ω-Regular Expressions to NBAs AFS c je/ewm 1 ω-Automata and ω-Languages 352/431 From ω-Regular Expressions to NBAs AFS c je/ewm 1 ω-Automata and ω-Languages 353/431 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 AFS c je/ewm denote a regular expression for 1 ω-Automata and ω-Languages . 354/431 From NBAs to ω-Regular Expressions • Example: AFS c je/ewm 1 ω-Automata and ω-Languages 355/431 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. AFS c je/ewm 1 ω-Automata and ω-Languages 356/431 From NBAs to ω-Regular Expressions • Example: = AFS c je/ewm 1 ω-Automata and ω-Languages + 357/431