La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Autómatas finitos (AF) Los AF constan de 5 elementos fundamentales AF=( , E, F, s,  ).  Un alfabeto (  )  Un conjunto de estados (E)  Un conjunto.

Presentaciones similares


Presentación del tema: "Autómatas finitos (AF) Los AF constan de 5 elementos fundamentales AF=( , E, F, s,  ).  Un alfabeto (  )  Un conjunto de estados (E)  Un conjunto."— Transcripción de la presentación:

1 Autómatas finitos (AF) Los AF constan de 5 elementos fundamentales AF=( , E, F, s,  ).  Un alfabeto (  )  Un conjunto de estados (E)  Un conjunto de estados finales (F)  Un estado inicial (s)  y una función  = E x F  E que permite determinar cuál es el estado siguiente.

2 Diagrama de transición En los diagramas de transición, los estados se representan por medio de un circulo con el nombre del estado dentro de él. Los estados de aceptación o finales se distinguen porque tienen doble circulo, las transiciones se representan por aristas y se etiquetan con un símbolo del alfabeto. El estado inicial se distingue porque se hace incidir sobre él una flecha. Por ejemplo, el diagrama de transición que permite representar a la expresión regular (0  1)*01 es el siguiente:

3 Diagrama de transición del autómata finito que reconoce cadenas de ceros y unos y cuya expresión regular es: (0  1)*01 z

4 Aquí se tiene que:  = {0, 1} es el alfabeto E = {qo, q1, q2} es el conjunto de estados S = q0 es el estado inicial, que se reconoce por la flecha que incide en él. F = {q2} conjunto de estados finales o de aceptación que se distinguen por el circulo doble.  = E x   E es la función para determinar el estado siguiente. z

5 En el diagrama de transición se puede observar que pertenecen al lenguaje indicado por la expresión regular (o  1)*01 cadenas de caracteres que terminan con 01. Por ejemplo: 10001101 Las cadenas 10001 y 101 pertenecen al lenguaje. La función de transición  = E x   E permite determinar el estado siguiente, partiendo del par estado (E)y un símbolo del alfabeto (  ) para acceder a otro estado del conjunto E.

6 Por ejemplo: si la cadena es 10001, la ruta que se sigue para reconocer la cadena es:  (q0, 1 ) = q0 Se inicia en el estado inicial q0 y con el símbolo 1 nuevamente el estado siguiente es q0, como se puede ver en el diagrama de transición.  ( q0, 0 ) = q1 De q0 y con el símbolo 0 se traslada a estado q1.  ( q1, 0 ) = q1 De q1 y con el símbolo 0 permanece en q1.  ( q1, 1 ) = q2 De q1 y con el símbolo 1 se traslada a q2. q2 estado de aceptación Como q2 es un estado de aceptación, se dice que la cadena 10001 pertenece al lenguaje.

7 Algunas veces es más fácil indicar la ruta que se sigue para evaluar la cadena de la siguiente manera: 1 0 0 0 1 q0  q0  q1  q1  q1  q2 De esta misma forma la cadena 1011010 no pertenece al lenguaje, como se muestra a continuación. 1 0 1 1 0 1 0 q0  q0  q1  q2  q0  q1  q2  q1 Ya que el estado q1 donde queda finalmente, no es un estado de aceptación.

8 Tabla de transición La información de un autómata, así como los valores que puede tomar la función , también se puede representar por medio de una tabla de transición. La tabla de transición que representa al AF anterior es: s = q0 y F= {q2} También por medio de esta tabla de transición, el estado inicial y los estados de aceptación, es posible determinar si alguna cadena pertenece o no a un lenguaje.  01 q0q1q0 q1 q2 q1q0

9 Autómata Finito Determinista (AFD) Se dice que un autómata finito es determinístico si por medio de la función de transición  : E X   E es posible determinar claramente cuál es el estado siguiente. Es aquel que solo puede estar en un único estado después de leer cualquier secuencia de entradas. El termino “ determinista ” hace referencia al hecho de que para cada entrada solo existe uno y sólo un estado al que el autómata puede hacer la transición a partir de su estado actual. El autómata anterior es un AFD.

10 Otro ejemplo de un AFD.  = {x, y} E ={q0, q1, q2, q3, q4} s = q0 F = {q3} Cuyo diagrama de transición es:

11 Se observa que partiendo de cualquier estado del conjunto E y con un símbolo del alfabeto , es posible acceder al estado siguiente por medio de la función de transición  = E x   E. Con la tabla de transiciones, dicho AFD queda indicado completamente de la siguiente manera: s = q0 y F={q3}  xy q0q1q4 q1 q2 q3q2 q3q1q2 q4

12 Dicho AFD acepta cadenas de caracteres que comienzan con x y terminan con yx. Aquí el lenguaje regular esta representado por la expresión regular x(x  y)*yx, de forma que cadenas como x xxyxyy yx, xyx, x yy yx, pertenecen al lenguaje pero las cadenas yyxyx, xyxxy no son reconocidas por el AFD. Evaluando la ruta de la cadena: xxxyxyyyx x x x y x y y y x q0  q1  q1  q1  q2  q3  q2  q2  q2  q3 Ejercicios: determinar las rutas de las cadenas que faltan.

13 Autómatas finitos no determinísticos (AFN) La diferencia fundamentalmente un autómata finito determinístico (AFD)n y un autómata finito no determinístico (AFN), es que en el AFN la función de estado siguiente no conduce a un estado único determinado. Considerando el siguiente diagrama:

14 Como se ve se trata de un AFN porque no está determinado en todos los casos cuál es el estado siguiente para los diferentes símbolos del alfabeto. Por ejemplo en los estados q0 y q2 para un símbolo de a hay dos posibilidades de cambiar de estado o quedarse en el mismo. En el estado q1 también hay problemas ya que no se sabe que pasa en caso de que se presente el símbolo a. Con una indeterminación que se presente es suficiente para decir que se trata de un AFN.

15 Para este autómata:  = {a, b} E ={q0, q1, q2} s = q0 F = {q0, q1} su tabla de transición es: Una cadena es aceptada por un AFN si existe algún camino para esa cadena que comience en el estado inicial y termine en el estado aceptado.  ab q0{q0, q1}q2 q1  q2{q1, q2} 

16 CadenaRuta¿Se acepta? aabaabbb bbba bbab 


Descargar ppt "Autómatas finitos (AF) Los AF constan de 5 elementos fundamentales AF=( , E, F, s,  ).  Un alfabeto (  )  Un conjunto de estados (E)  Un conjunto."

Presentaciones similares


Anuncios Google