Infinite tree automaton

In computer science and mathematical logic, an infinite tree automaton is a state machine that deals with infinite tree structures. It can be viewed as an extension from a finite tree automaton, which accepts only finite tree structures. It can also be viewed as an extension of some infinite word automatons such as the Büchi automaton and the Muller automaton.

A finite automaton which runs on an infinite tree was first used by Rabin[1] for proving decidability of monadic second order logic. It has been further observed that tree automaton and logical theories are closely connected and it allows decision problems in logic to be reduced into decision problems for automata.

Definition

Infinite tree automaton runs of over a \Sigma-labeled tree. There are many slightly different formulations of tree automaton. Here one of the formulation is described. An infinite tree automaton is a tuple A = (\Sigma, D, Q, \delta, q_0, F ) where,

Run

A run of tree automaton A over a \Sigma-labeled tree (T,V ) is a  Q-labeled tree (T_r, r ). Lets suppose that the tree automaton is at state  q and it has reached to a node t labeled with  \sigma \in \Sigma of input tree.  d(t) is degree of node t. Then, the automaton proceeds by selecting a tuple (q_1,...,q_{d(t)}) from set \delta( q, \sigma, d(t)) and splitting into d(t) copies of itself. For each  0 < i \leq d(t), one copy enters into q_i state and proceeds to the node t.i. This process produces a run over a tree.

Formally, a run (T_r, r ) on the input tree satisfy following two conditions:

  1. r(\epsilon) =  q_0
  2. For every t \in T_r with r(t) = q, there exists a (q_1,...,q_{d(t)}) \in \delta(q,V(t),d(t)) such that for every  0 < i \leq d(t) , we have t.i \in T_r and  r(t.i) = q_i

Acceptance condition

In a run (T_r, r ), an infinite path is labeled by a sequence of states. This sequence of states form an infinite word over states. If all these infinite words belong to accepting condition F, then the run is accepting. The interesting accepting conditions are Büchi, Rabin, Streett and Muller. If for an input \Sigma-labeled tree (T,V ) there exist an accepting run then the input tree is accepted by the automaton. The set of all the accepted \Sigma-labeled trees is called tree language \mathcal{L}(A) which is recognized by tree automaton A.

Remarks

The set D may seem unusual to some people. Some times D is omitted from the definition when it is a singleton set that means input tree has fixed branching at each node. For example, if D = {2} then the input tree has to be a full binary tree.

Infinite tree automaton is deterministic if for some q \in Q, \sigma \in \Sigma , and  d \in D transition relation \delta( q, \sigma, d) has exactly one element. Otherwise the automaton is non-deterministic.

Accepting tree languages

Muller, parity, Rabin, and Streett accepting conditions in an infinite tree automaton recognize the same tree languages.

But, Büchi accepting condition is strictly weaker than other accepting conditions, i.e., there exists a tree language which can be recognized by Muller accepting condition in infinite tree automata but can't be recognized by any Büchi accepting condition in some infinite tree automaton.[2]

Tree languages which are recognized by Muller accepting conditions are closed under union, intersection, projection and complementation.

Reference list

  1. Rabin, M. O.: Decidability of second order theories and automata on infinite trees,Transactions of the American Mathematical Society, vol. 141, pp. 1–35, 1969.
  2. Rabin, M. O.: Weakly definable relations and special automata,Mathematical logic and foundation of set theory, pp. 1–23, 1970.
This article is issued from Wikipedia - version of the Sunday, December 13, 2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.