Autómata finito no determinista


Es el autómata finito que tiene transiciones vacías o que por cada símbolo desde un estado de origen se llega a más de un estado destino, es decir, es aquel que, a diferencia de los autómatas finitos deterministas, posee al menos un estado , tal que para un símbolo  del alfabeto, existe más de una transición  posible.

La definición formal de AFND se basa en la consideración de que a menudo según los algoritmos de transformación de expresiones y gramáticas regulares a AF terminan obteniéndose autómatas con transiciones múltiples para un mismo símbolo o transiciones vacías. Independientemente que sean indeseables, sobre todo para la implementación material, fundamentalmente mecánica, de los autómatas finitos, son imprescindibles durante la modelación de analizadores lexicográficos de los elementos gramaticales de los lenguajes de programación, llamados tókens, como literales numéricos, identificadores, cadenas de texto, operadores, etc.

Los AFND sondefiniciones no tan deseables dentro de los lenguajes regulares porquedificultan su implementación tanto mecánica como informática; aunque en la mayoría de las transformaciones a lo interno de los LR (expresiones regulares a AF, gramáticas regulares a AF) conducen a AFND. Los AFND, por tanto, son imprescindibles en el análisis lexicográfico y el diseño de los lenguajes de programación.

DEFINICIÓN: Sea un autómata finito definido por la quíntupla  A=(Q,Σ,q0 ,δ,F) donde:

Q: es el conjunto finito de estados

Σ: es un alfabeto finito

q0  Q: es el estado inicial

FQ: es un conjunto de estados finales o de aceptación

δ:Qx(∑{ε})→ P(Q): cuando contiene transiciones vacías

δ:Qx∑→ P(Q) ó δ: {qi,x,qj | qi ,qQ;x∑} - (del estado qi mediante el terminal x se va a qj  ), es la función de transición. 

Este tipo de autómatas se diferencia de los AFD, básicamente en como puede constituirse la función de transición:. Esta diferencias son las siguientes:









Comentarios

Entradas más populares de este blog

1.5 Fases de un compilador

Conceptos basicos del analizador Lexico