autómata finito determinista. definición un afd es una quíntupla a =(q,,, q 0,f) q es un conjunto...

Post on 31-Dec-2014

62 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

AutAutómata finito ómata finito DeterministaDeterminista

DefiniciónDefiniciónUn AFD es una quíntupla

A =(Q,, , q0,F)◦Q es un conjunto finito de estados◦ es un alfabeto finito (símbolos de

entrada)◦ es una función de transición (q,a)

p◦q0 Q es el símbolo de inicio

◦F Q es el conjunto de estados finales

Autómata finitoAutómata finitoTransición

s1 a s2

(s1,a) s2

Se lee

◦ En el estado s1 teniendo entrada ¨a¨ moverse al estado s2

Grafos de los estados de un Grafos de los estados de un Autómata finitoAutómata finitoUn estado

Estado de inicio

Estado de aceptación

Una transición a

Ejemplo 1Ejemplo 1

Si se tiene el alfabeto ∑={0,1} dibuje un autómata finito que acepte la cadena ¨1¨

1

A={{q,r}, {0,1},(q,1)=r,q,{r}}

Un autómata finito acepta una cadena w si podemos seguir las etiquetas de los arcos con los caracteres de la cadena w desde el estado de inicio hasta un estado de aceptación

q r

Ejemplo 2Ejemplo 2

Un autómata finito que acepta cualquier cantidad de 1´s seguido de un 0.

Alfabeto: 0,1

r0

1

Verificar que ¨1110¨es aceptada pero no ¨111¨

q

0 1

q

r

r q

ImplementaciImplementaciónónUn AFD se puede implementar

mediante una tabla de 2 dimensiones T◦ Una dimensión para los estados◦ Otra dimensión para los símbolos de

entrada◦ Para cada transición (s1,a) s2 definir T[i,a]

= kEjecución del AFD

◦ Para cada estado si y entrada a, leer T[i,a]=k y saltar al estado k.

◦ Muy eficiente.

ImplementaciImplementación de la Tablaón de la Tabla

0 1

s t u

t t u

u t u

Ejemplo 3Ejemplo 3

Un autómata A que acepta◦ {x01y:x,y {0,1}*}

El autómata como un diagrama de transición

EjemploEjemplo

El autómata anterior, A=({q0,q1,q2}, {0,1}, ,q0, {q1}) tiene tabla de transición:

AceptaciAceptación de una cadena ón de una cadena por un Autómata Finito (AF)por un Autómata Finito (AF)Un AF acepta una cadena

w=a1a2…an si existe un camino en el diagrama de transición tal que:◦Comienza en el estado inicial.◦Finaliza en un estado de aceptación.◦Tiene una secuencia de etiquetas

a1a2…an

EjemploEjemplo

El AF:

Acepta por ejemplo la cadena 01101

ExtensiExtensión de la función de ón de la función de transicióntransiciónLa función de transición se

puede extender a que opera en estados y cadenas (a diferencia de que opera en estados y símbolos).◦Caso base: (q,)=q◦Inducción: (q,xa)= ((q,x),a)

EjemploEjemploEmpleando al autómata del

ejemplo anterior, con la cadena 01101 genera el siguiente resultado:

◦Realizarlo en clase.

Lenguaje aceptado por un Lenguaje aceptado por un AFAFFormalmente el lenguaje

aceptado por un AF llamado A es:L(A)= w (q0,w) F

Los lenguajes aceptados por AFs se conocen como regulares.

Ejemplo 1Ejemplo 1

AFD todas las cadenas con un número par de 0s y un número par de 1s

Ejemplo 1 (Cont.)Ejemplo 1 (Cont.)

La tabla de transición del autómata es:

Ejemplo 2Ejemplo 2

El juguete Marble-Rolling tomado de la página 53 del libro de texto

Ejemplo 2 (Cont.)Ejemplo 2 (Cont.)Un estado se representa como

una secuencia de 3 bits seguidos por r ó a (lo que significa que la entrada anterior fue rechazada o aceptada)

Por ejemplo, 010a significa, izquierda, derecha, izquierda aceptada.

RepresentaciRepresentación tabular del ón tabular del juguetejuguete

top related