Articulo de referencia

Autómata que camina sobre los árboles

Un autómata de recorrido de árboles (TWA, por sus siglas en inglés) es un tipo de autómata finito que trabaja con estructuras de árbol en lugar de cadenas. El concepto fue propu...

Un autómata de recorrido de árboles (TWA, por sus siglas en inglés) es un tipo de autómata finito que trabaja con estructuras de árbol en lugar de cadenas. El concepto fue propuesto originalmente por Aho y Ullman . [ 1 ]

El siguiente artículo trata sobre autómatas de recorrido de árboles. Para una noción diferente de autómata de árbol, estrechamente relacionada con los lenguajes de árboles regulares , véase autómata de ramificación .

Definición

Se supone que todos los árboles son binarios , con etiquetas de un alfabeto fijo Σ.

De manera informal, un autómata de recorrido de árboles (TWA) A es un dispositivo de estados finitos que recorre un árbol de entrada de forma secuencial. En cada instante, A visita un nodo v en estado q . Dependiendo del estado q , la etiqueta del nodo v y si el nodo es la raíz, un hijo izquierdo, un hijo derecho o una hoja, A cambia su estado de q a q ' y se mueve al padre de v o a su hijo izquierdo o derecho. Un TWA acepta un árbol si entra en un estado de aceptación y lo rechaza si entra en un estado de rechazo o entra en un bucle infinito. Al igual que los autómatas de cadenas, un TWA puede ser determinista o no determinista.

De manera más formal, un autómata de recorrido de árbol (no determinista) sobre un alfabeto Σ es una tupla A = ( Q , Σ, I , F , R , δ ) donde Q es un conjunto finito de estados, sus subconjuntos I , F , y R son los conjuntos de estados inicial, de aceptación y de rechazo, respectivamente, y δ ⊆ ( Q × { raíz , izquierda , derecha , hoja } × Σ × { arriba , izquierda , derecha } × Q ) es la relación de transición.

Ejemplo

Un ejemplo sencillo de un autómata de recorrido de árboles es un TWA que realiza una búsqueda en profundidad (DFS) en el árbol de entrada. El autómataA{\displaystyle A}tiene tres estados,Q={q0,qlmiFt,qrigramoht}{\displaystyle Q=\{q_{0},q_{\mathit {left}},q_{\mathit {right}}\}}.A{\displaystyle A}comienza en la raíz en estadoq0{\displaystyle q_{0}}y desciende al subárbol izquierdo. Luego procesa el árbol recursivamente. Siempre queA{\displaystyle A}entra en un nodov{\displaystyle v}en el estadoqlmiFt{\displaystyle q_{\mathit {left}}}, significa que el subárbol izquierdo dev{\displaystyle v}acaba de ser procesado, por lo que procede al subárbol derecho dev{\displaystyle v}. SiA{\displaystyle A}entra en un nodov{\displaystyle v}en el estadoqrigramoht{\displaystyle q_{\mathit {right}}}, significa que todo el subárbol con raízv{\displaystyle v}ha sido procesado yA{\displaystyle A}camina hacia el padre dev{\displaystyle v}y cambia su estado aqlmiFt{\displaystyle q_{\mathit {left}}}oqrigramoht{\displaystyle q_{\mathit {right}}}, dependiendo de siv{\displaystyle v}es un niño izquierdo o derecho.

Propiedades

A diferencia de los autómatas ramificados , los autómatas de recorrido de árboles son difíciles de analizar: incluso las propiedades simples son difíciles de demostrar. La siguiente lista resume algunos hechos conocidos relacionados con los autómatas de recorrido de árboles:

  • Como demostraron Bojańczyk y Colcombet , [ 2 ] las TWA deterministas son estrictamente más débiles que las no deterministas (DTWATWA{\displaystyle {\mathit {DTWA}}\subsetneq {\mathit {TWA}}})
  • Las TWA deterministas son cerradas bajo complementación (pero se desconoce si lo mismo ocurre con las no deterministas [ 3 ] ).
  • El conjunto de lenguajes reconocidos por TWA está estrictamente contenido en lenguajes de árbol regulares (TWARmiGRAMO{\displaystyle {\mathit {TWA}}\subsetneq {\mathit {REG}}}), es decir, existen lenguajes regulares que no son reconocidos por ningún autómata de recorrido de árboles, véase Bojańczyk y Colcombet. [ 4 ]

Véase también

Referencias

  1. Aho, A; Ullman, J (1971). "Traducciones en una gramática libre de contexto" . Information and Control . 19 (5): 439– 475. doi : 10.1016/S0019-9958(71)90706-6 .
  2. Bojańczyk, Mikołaj; Colcombet, Thomas (2006). "Los autómatas de recorrido de árboles no se pueden determinizar" (PDF) . Theoretical Computer Science . 350 ( 2–3 ): 164–173 . doi : 10.1016/j.tcs.2005.10.031 .
  3. Bojańczyk, Mikołaj (2008). Martín-Vide, Carlos; Otto, Friedrich; Fernau, Henning (eds.). "Autómatas que caminan por árboles" (PDF) . Teoría y aplicaciones del lenguaje y los autómatas . Notas de clase en informática. Berlín, Heidelberg: Springer: 1–2 . doi : 10.1007/978-3-540-88282-4_1 . ISBN 978-3-540-88282-4.Icono de acceso gratuito
  4. Bojańczyk, Mikołaj; Colcombet, Thomas (2008). "Los autómatas que caminan sobre árboles no reconocen todos los lenguajes habituales" (PDF) . SIAM J. Computación. 38 (2): 658– 701. doi : 10.1137/050645427 .
  • Mikołaj Bojańczyk: Autómatas que caminan por los árboles . Una breve encuesta.