Algoritmo de Thompson

Revisión del 16:18 30 nov 2013 de Jhonlier12017 jc.hlg (discusión | contribuciones) (Página creada con '{{Definición|nombre=Algoritmo de Thompson|imagen=noAFND.png|concepto=Algoritmo para obtener AFND-V a partir de expresiones regulares.}} <div align="justify"> '''Algoritmo de Th...')
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Algoritmo de Thompson
Información sobre la plantilla
NoAFND.png
Concepto:Algoritmo para obtener AFND-V a partir de expresiones regulares.

Algoritmo de Thompson. Algoritmo que permite a partir de una expresión regular obtener un autómata finito no determinista con transiciones vacías (AFND-V) equivalente.

Definición

Sea una expresión regular E se recorre la misma según el orden de precedencia operacional (*, +, |) y los agrupadores para obtener un AFND-V definido por su diagrama de estado según los pasos:

  1. Se coloca el estado inicial Q0:AF Estado Inicio.gif.
  2. Si la expresión admite la cadena vacía, Q0 se indica como un estado final: AF Estado Inicio Final.gif
  3. Concatenación. Cada símbolo terminal se representa mediante una transición AFD Transicion.gif.
  4. Clausura (*).
  5. Clausura positiva (+).
  6. Disjunción (|).

Vease también

Fuentes

  1. Tanembaum, A. Compilers: Principles, Tecniques, and Tools. Tomo 1. ACM Press. 5ta Edición.
  2. Conferencias de la Asignatura "Compilación 1" del Departamento de Ciencias de la Computación de la Universidad de Oriente. Santiago de Cuba, 2000.
  3. Autómata finito en Wikipedia. Consultado el 25 de noviembre de 2013.
  4. Acevedo Martínez, Liesner; Osorio Ramírez, Karel. Manual de apoyo a la docencia. Técnicas de Compilación: Manual Práctico para estudiantes de Informática. Libro electrónico en PDF. UCI. La Habana, 2011.
  5. Algoritmo de Thompson en Wikipedia. Consultado el 30 de noviembre de 2013.