Aut ómata finito Determinista

20
Aut Aut ómata finito ómata finito Determinista Determinista

description

Aut ómata finito Determinista. Definición. Un AFD es una qu í ntupla A =( Q,  , , q 0 ,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 q 0  Q es el s ímbolo de inicio - PowerPoint PPT Presentation

Transcript of Aut ómata finito Determinista

Page 1: Aut ómata finito Determinista

AutAutómata finito ómata finito DeterministaDeterminista

Page 2: Aut ómata finito Determinista

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

Page 3: Aut ómata finito Determinista

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

Page 4: Aut ómata finito Determinista

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

Page 5: Aut ómata finito Determinista

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

Page 6: Aut ómata finito Determinista

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

Page 7: Aut ómata finito Determinista

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.

Page 8: Aut ómata finito Determinista

ImplementaciImplementación de la Tablaón de la Tabla

0 1

s t u

t t u

u t u

Page 9: Aut ómata finito Determinista

Ejemplo 3Ejemplo 3Un autómata A que acepta

◦ {x01y:x,y {0,1}*}

El autómata como un diagrama de transición

Page 10: Aut ómata finito Determinista

EjemploEjemplo El autómata anterior, A=({q0,q1,q2}, {0,1}, ,q0, {q1})

tiene tabla de transición:

Page 11: Aut ómata finito Determinista

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

Page 12: Aut ómata finito Determinista

EjemploEjemploEl AF:

Acepta por ejemplo la cadena 01101

Page 13: Aut ómata finito Determinista

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)

Page 14: Aut ómata finito Determinista

EjemploEjemploEmpleando al autómata del

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

◦Realizarlo en clase.

Page 15: Aut ómata finito Determinista

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.

Page 16: Aut ómata finito Determinista

Ejemplo 1Ejemplo 1AFD todas las cadenas con un número

par de 0s y un número par de 1s

Page 17: Aut ómata finito Determinista

Ejemplo 1 (Cont.)Ejemplo 1 (Cont.)La tabla de transición del autómata es:

Page 18: Aut ómata finito Determinista

Ejemplo 2Ejemplo 2El juguete Marble-Rolling tomado de la

página 53 del libro de texto

Page 19: Aut ómata finito Determinista

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.

Page 20: Aut ómata finito Determinista

RepresentaciRepresentación tabular del ón tabular del juguetejuguete