Fourt–Woodlock equation

From formulasearchengine
Jump to navigation Jump to search

A tree walking automaton (TWA) is a type of finite automaton that deals with tree structures rather than strings. The concept was originally proposed in Template:Harvtxt.

The following article deals with tree walking automata. For a different notion of tree automaton, closely related to regular tree languages, see branching automaton.

Definition

All trees are assumed to be binary, with labels from a fixed alphabet Σ.

Informally, a tree walking automaton A (TWA) is a finite state device which walks over the tree in a sequential manner. At each moment A visits node v in state q. Depending on the state q, the label of the node v, and whether the node is the root, a left child, a right child or a leaf, A changes its state from q to q' and moves to the parent of v or its left or right child. A TWA accepts a tree if it enters an accepting state, and rejects if its enters a rejecting state or makes an infinite loop. As with string automata, a TWA may be deterministic or nondeterministic.

More formally, a (nondeterministic) tree walking automaton over alphabet Σ is a tuple: A=(Q,Σ,I,F,R,δ)

where Q is a finite set of states, I,F,RQ are the sets of respectively initial, accepting and rejecting states, and δ is the transition relation: δ(Q×{𝑟𝑜𝑜𝑡,𝑙𝑒𝑓𝑡,𝑟𝑖𝑔𝑡,𝑙𝑒𝑎𝑓}×Σ×{𝑢𝑝,𝑙𝑒𝑓𝑡,𝑟𝑖𝑔𝑡}×Q).

Example

A simple example of a tree walking automaton is a TWA that performs depth-first search (DFS) on the input tree. The automaton A has 3 states, Q={q0,q𝑙𝑒𝑓𝑡,q𝑟𝑖𝑔𝑡}. A begins in the root in state q0 and descends to the left subtree. Then it processes the tree recursively. Whenever A enters a node v in state q𝑙𝑒𝑓𝑡, it means that the left subtree of v has just been processed, so it proceeds to the right subtree of v. If A enters a node v in state q𝑟𝑖𝑔𝑡, it means that the whole subtree with root v has been processed and A walks to the parent of v and changes its state to q𝑙𝑒𝑓𝑡 or q𝑟𝑖𝑔𝑡, depending on whether v is a left or right child.

Properties

Unlike branching automata, tree walking automata are difficult to analyze and even simple properties are nontrivial to prove. The following list summarizes some known facts related to TWA:

  • As shown by Template:Harvtxt, deterministic TWA are strictly weaker than nondeterministic ones (𝐷𝑇𝑊𝐴𝑇𝑊𝐴)
  • deterministic TWA are closed under complementation (but it is not known whether the same holds for nondeterministic ones)
  • the set of languages recognized by TWA is strictly contained in regular tree languages (𝑇𝑊𝐴𝑅𝐸𝐺), i.e. there exist regular languages which are not recognized by any tree walking automaton Template:Harv.

See also

References