Automata finito y leguaje de operación, ana belgica y saudy miguel

13
Universidad Iberoamericana (UNIBE) Lenguajes Formales y Teoría Formales Prof:. Rina Familia Integrantes Ana Bélgica Vallejo 13-1006 Saudy Miguel Flores 13-1006

Transcript of Automata finito y leguaje de operación, ana belgica y saudy miguel

Universidad Iberoamericana (UNIBE)

Lenguajes Formales y Teoría FormalesProf:. Rina Familia

Integrantes Ana Bélgica Vallejo 13-1006Saudy Miguel Flores 13-1006

Introducción

La idea general consiste en modelar un sistema que Recibe un conjunto de elementos de entrada (estímulos), Realiza algún proceso (cómputo) y Se produce una salida.

Los autómatas son una representación formal muy útil, que permite modelar el comportamiento de diferentes dispositivos, máquinas, programas, etc.

Algunos ejemplos son las Maquinas expendedoras de refrescos, El comportamiento de un programa (software), El comportamiento de semáforos, entre otros.

Autómatas Finítos Determinísticos (AFD)

• Un AFD es un quintuple M = (Q, S, d, q0, F), donde Q es una máquina de estados finíta, S es el alfabeto, q0 es el estado inicial, F es el estado(s) final(es) y d es una función de Q x S a Q llamada la función de transición.

• Es una maquina o sistema que puede aceptar unaentrada y posiblemente producir una salida, y que tendrá algúntipo de memoria interna que podrá registrar cierta información delas entradas previas.

• Ejemplo: El siguiente AFD acepta el conjunto de cadenas que contienen la subcadena bb y donde S={a,b}. Esto quiere decir que L(M) = (a|b)*bb(a|b)* .

M: Q = {q0, q1, q2 }

S = {a, b}

F = {q2}

(Continuación)

M: Q = {q0, q1, q2 } S = {a, b} F = {q2}

La función de transición d es dada en forma tabular y llamada tabla de transición.

d a b q0 q0

q1

q1 q0 q2

q2 q2 q2

Para las cadenas abba y abab tenemos las siguientes operaciones (computaciones) en la tabla:

[q0, abba] [q0, abab]-[q0, bba] -[q0, bab]-[q1, ba] -[q1, ab]-[q2, a] -[q0, b]-[q2, l] -[q1, l] acepta rechazado

La cadena abba es aceptada ya que la computación se para (halts) en estado q2.Una cadena de entrada es aceptada si existe una computación que procesa toda la cadena de entrada y para en un estado final o aceptador.

Ejemplo: El DFA siguiente acepta el lenguaje que no contiene la subcadena aa y donde S={a,b}.

q0 q1 q2

a,b

a

b

a

b

AUTÓMATA FINITOS DETERMINISTICO

Representación: Existen dos formas de representar un AFD. Diagrama de Transición de Estado(DTE): Es una colección finita de círculos los cuales se pueden rotular(anotar, apuntar) con fines de referencia, conectados con flechas que reciben el nombre de arcos. Cada uno de estos arcos se etiqueta con un simbo0lo o categoría de símbolo (ej. Letras o dígitos) que podrían estar presentes en la cadena que se analiza. - Uno de los círculos es designado con un apuntador, y representa la posición inicial. - Por lo menos unos de los círculos se representa como un circulo doble, estos círculos dobles designan posiciones del diagrama en las cuales se ha reconocido una cadena valida.

Cont. AUTÓMATA FINITOS DETERMINISTICO

Cadena Valida o Aceptada: Se dice que una cadena es aceptada por un DTE, si los símbolos que aparecen en la cadena (de izquierda a derecha), corresponden a una secuencia de arcos rotulados que conducen del estado inicial a un circulo doble. Ejemplo: Sea el AFD dado por: M=(Q, , s, F, ) donde, Q= q0 , q1 ; 0, 1 ; s=q0 ;F= q1 ; : dada por: q0 ,0 =q0 ; q0 ,1 =q1 ; q1 ,0 =q1 ; q1 ,1 =q0 - Obtenga la tabla de transición y el diagrama de transición de estado asociado al AFD dado. - Verifique la validez de las cadenas siguientes para el AFD dado. W =01000; w =01001