La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Simulación de un AFD Conversión de un AFND a un AFD.

Presentaciones similares


Presentación del tema: "Simulación de un AFD Conversión de un AFND a un AFD."— Transcripción de la presentación:

1 Simulación de un AFD Conversión de un AFND a un AFD

2 Equivalencia entre autómatas finitos
Teoremas Un lenguaje es aceptado por un AFND si y sólo si es aceptado por un AFD Un lenguaje es aceptado por un AFND-λ si y sólo si es aceptado por un AFND.

3 Simulación de un AFD Entrada: una cadena de entrada x, que termina con un carácter de fin de línea “\n”. Un AFD D con el estado inicial q0, que acepta estados F, y la función de transición mover. Salida: Responde “si” en cada de que D acepte la cadena x, “no” en caso contrario. Método: s=q0;//s recibe el estado inicial de D c=sigCar();//se lee el primer símbolo de palabra while (c != ‘\n’)//repetir hasta que c se encuentre el fin de línea “\n” { s=mover(s,c); //consulta la tabla de transición dado el estado y el símbolo, retorno //el nuevo estado c=sigCar(); //se el siguiente símbolo de palabra } If (s esta en F) return “si” ; else return “no”;

4 AFD a 1 b 2 3 AFD que acepta a (a|b)*abb

5 Conversión de un AFND a AFD
Entrada: Un AFND N. Salida: Un AFD D que acepta el mismo lenguaje que N. Método: Construir la tabla de transición Dtrans para D. Cada estado de D es un conjunto de estados de N. s es un estado individual de N, mientras que T es un conjunto de estados de N. El estado inicial de D es λ-cerradura(s0). operación Descripción λ-cerradura(s) Conjunto de estados del AFND a los que se puede llegar desde el estado s de AFND, sólo con transiciones λ. λ-cerradura(T) Conjunto de estados del AFND a los que se puede llegar desde cierto estado s del AFND en el conjunto T, sólo con las transiciones λ; =Us en T mover(T,a) Conjunto de estados del AFND para los cuales hay una transición sobre el símbolo de entrada a, a partir de cierto estado s de T.

6 Algoritmo Calculamos λ-cerradura(s0) para obtener un nuevo estado A, añadir A a DEstados. Marcamos A. para toda ai ∈ V Calcular Dtran[A, ai ]= λ-cerradura(mover(A, ai ))=Bi Añadir Bi a DEstados Fin del para Mientras hallan estados sin marcar en Destados Sea Bi un estado de DEstados Calcular Dtran[Bi, ai ]= λ-cerradura(mover(Bi, ai ))=Di Añadir Di a DEstados Marcar Bi Fin del Mientras Los estados de aceptación de D son aquellos conjuntos de estados de N que incluyen al menos un estado de aceptación de N.


Descargar ppt "Simulación de un AFD Conversión de un AFND a un AFD."

Presentaciones similares


Anuncios Google