Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 Deterministic ω-automata  





2 Nondeterministic ω-automata  





3 Acceptance conditions  





4 Example  





5 Expressive power of ω-automata  





6 Conversion between ω-automata  





7 Applications to decidability  





8 Further reading  





9 References  














ω-automaton






Čeština
Deutsch
فارسی
Français
Italiano
Português
 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 

(Redirected from Omega automaton)

Inautomata theory, a branch of theoretical computer science, an ω-automaton (orstream automaton) is a variation of a finite 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.

ω-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, one may want to specify a property such as "for every request, an acknowledge eventually follows", or its negation "there is a request that is not followed by an acknowledge". The former is a property of infinite words: one cannot say of a finite sequence that it satisfies this property.

Classes of ω-automata include the Büchi 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. They all recognize precisely the regular ω-languages except for the deterministic Büchi automata, which is strictly weaker than all the others. Although all these types of automata recognize the same set of ω-languages, they nonetheless differ in succinctness of representation for a given ω-language.

Deterministic ω-automata[edit]

Formally, a deterministic ω-automaton is a tuple A = (Q,Σ,δ,Q0,Acc) that consists of the following components:

Aninput for A is an infinite string over the alphabet Σ, i.e. it is an infinite sequence α = (a1,a2,a3,...). The runofA on such an input is an infinite sequence ρ = (r0,r1,r2,...) of states, defined as follows:

...

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 Acc. The set of accepted input ω-words is called the recognized ω-language by the automaton, which is denoted as L(A).

The definition of Acc as a subset of Qω is purely formal and not suitable for practice because normally such sets are infinite. The difference between various types of ω-automata (Büchi, Rabin etc.) consists in how they encode certain subsets AccofQω as finite sets, and therefore in which such subsets they can encode.

Nondeterministic ω-automata[edit]

Formally, a nondeterministic ω-automaton is a tuple A = (Q,Σ,Δ,Q0,Acc) that consists of the following components:

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 set P(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.

ArunofA on the input α = (a1,a2,a3,...) is any infinite sequence ρ = (r0,r1,r2,...) of states that satisfies the following conditions:

...

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 Acc, 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.

Acceptance conditions[edit]

Acceptance conditions may be infinite sets of ω-words. However, people mostly study acceptance conditions that are finitely representable. The following lists a variety of popular acceptance conditions.

Before discussing the list, let's make the following observation. In the case of infinitely running systems, one is often interested in whether certain behavior is repeated infinitely often. For example, if a network card receives infinitely many ping requests, then it may fail to respond to some of the requests but should respond to an infinite subset of received ping requests. This motivates the following definition: For any run ρ, let Inf(ρ) be the set of states that occur infinitely often in ρ. This notion of certain states being visited infinitely often will be helpful in defining the following acceptance conditions.

Büchi condition
A accepts exactly those runs ρ for which Inf(ρ) ∩ F is not empty, i.e. there is an accepting state that occurs infinitely often in ρ.
Rabin condition
A accepts exactly those runs ρ for which there exists a pair (Bi,Gi) in Ω such that Bi ∩ Inf(ρ) is empty and Gi ∩ Inf(ρ) is not empty.
Streett condition
A accepts exactly those runs ρ such that for all pairs (Bi,Gi) in Ω, Bi ∩ Inf(ρ) is empty or Gi ∩ Inf(ρ) is not empty.
Parity condition
A accepts ρ if and only if the smallest number in Inf(ρ) is even.
Muller condition
A accepts exactly those runs ρ for which Inf(ρ) is an element of F.

Every Büchi automaton can be regarded as a Muller automaton. It suffices to replace FbyF' consisting of all subsets of Q that contain at least one element of F. Similarly every Rabin, Streett or parity automaton can also be regarded as a Muller automaton.

Example[edit]

A non-deterministic Büchi automaton that recognizes (0∪1)*0ω

The following ω-language L over the alphabet Σ = {0,1}, which can be recognized by a nondeterministic Büchi automaton: L consists of all ω-words in Σω in which 1 occurs only finitely many times. A non-deterministic Büchi automaton recognizing L needs only two states q0 (the initial state) and q1. Δ consists of the triples (q0,0,q0), (q0,1,q0), (q0,0,q1) and (q1,0,q1). F = {q1}. For any input α in which 1 occurs only finitely many times, there is a run that stays in state q0 as long as there are 1s to read, and goes to state q1 afterwards. This run is successful. If there are infinitely many 1s, then there is only one possible run: the one that always stays in state q0. (Once the machine has left q0 and reached q1, it cannot return. If another 1 is read, there is no successor state.)

Notice that above language cannot be recognized by a deterministic Büchi automaton, which is strictly less expressive than its non-deterministic counterpart.

Expressive power of ω-automata[edit]

An ω-language over a finite alphabet Σ is a set of ω-words over Σ, i.e. it is a subset of Σω. 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 that can be recognized by some automaton in the class.

The nondeterministic Büchi, parity, Rabin, Streett, and Muller automata, respectively, all recognize exactly the same class of ω-languages.[1] These are known as the ω-Kleene closure of the regular languages or as the regular ω-languages. Using different proofs it can also be shown that the deterministic parity, Rabin, Streett, and Muller automata all recognize the regular ω-languages. It follows from this that the class of regular ω-languages is closed under complementation. However, the example above shows that the class of deterministic Büchi automata is strictly weaker.

Conversion between ω-automata[edit]

Because nondeterministic Muller, Rabin, Streett, parity, and Büchi automata are equally expressive, they can be translated to each other. Let us use the following abbreviation : for example, NB stands for nondeterministic Büchi ω-automaton, while DP stands for deterministic parity ω-automaton. Then the following holds.

A comprehensive overview of translations can be found on the referenced web source. [3]

Applications to decidability[edit]

ω-automata can be used to prove decidability of S1S, the monadic second-order (MSO) theory of natural numbers under successor. Infinite-tree automata extend ω-automata to infinite trees and can be used to prove decidability of S2S, the MSO theory with two successors, and this can be extended to the MSO theory of graphs with bounded (given a fixed bound) treewidth.

Further reading[edit]


References[edit]

  1. ^ Safra, S. (1988), "On the complexity of ω-automata", Proceedings of the 29th Annual Symposium on Foundations of Computer Science (FOCS '88), Washington, DC, USA: IEEE Computer Society, pp. 319–327, doi:10.1109/SFCS.1988.21948.
  • ^ Esparza, Javier (2017), Automata Theory: An Algorithmic Approach (PDF)
  • ^ Boker, Udi (18 April 2018). "Word-Automata Translations". Udi Boker's webpage. Retrieved 30 March 2019.

  • Retrieved from "https://en.wikipedia.org/w/index.php?title=Ω-automaton&oldid=1211011412"

    Category: 
    Finite automata
    Hidden categories: 
    Articles with short description
    Short description is different from Wikidata
     



    This page was last edited on 29 February 2024, at 11:31 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki