Autómata finito determinista

Un autómata finito determinista (abreviado AFD) es un caso especial  de un autómata finito  no determinista  en el cual.

Ningún estado  tiene una transición Є es decir, una transición con la entrada Є,

Para cada  estado s y cada símbolo  de entrada a, hay  a lo sumo  un arista  etiquetada a que sale  de s.

Un autómata finito tiene a lo sumo una transición  desde cada  estado con cualquier entrada. Si se esta usando una tabla de transiciones para representar  la función  de transición de un AFD, entonces cada entrada en la tabla de transiciones es solo un solo estado. Como consecuencia, es muy fácil determinar si un autómata finito determinista acepta o no  una cadena de entrada, puesto que hay a lo sumo un camino desde el estado de inicio etiquetado con esa cadena.  El siguiente  algoritmo  muestra  como simular el comportamiento de un AFD con una cadena de entrada.

  • ENTRADA: Una cadena de entrada x, que se termina con un carácter de fin de archivo eof. Un AFDD con el estado inicial S0, que acepta estados F, y la función de transición mover.
  • SALIDA: Responde “sí” en caso de que D acepte a x  “no” en caso contrario.
  • MÉTODO: Aplíquese el algoritmo siguiente a la cadena de entrada x. La función mueve: (s, c) da el estado al cual hay una transición desde el estado S en un carácter de entrada c. La función sigtecar devuelve el siguiente carácter de la cadena de entrada x.

S: =S0;

C: =sigtecar;

While c ≠ eof do

S: = mueve (s,c);

C: =sigtecar;

End:

If s esta en F then

Return “si”

Else return “no”;















Comentarios

Entradas más populares de este blog

1.5 Fases de un compilador

Conceptos basicos del analizador Lexico