Aut matas finitos
Sponsored Links
This presentation is the property of its rightful owner.
1 / 15

Autómatas Finitos PowerPoint PPT Presentation


  • 76 Views
  • Uploaded on
  • Presentation posted in: General

Autómatas Finitos. d. d. d. d. d. n,d,q. d. n. n. n. n. n. n. 30. 25. 20. 5. 10. 0. 15. q. q. q. q. q. q. Ejemplo de una máquina expendedora de periódicos (que no dá cambio). n: niquel (5c) d: dime (10c) q: quarter (25c). El periódico cuesta 30 centavos.

Download Presentation

Autómatas Finitos

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Autómatas Finitos


d

d

d

d

d

n,d,q

d

n

n

n

n

n

n

30

25

20

5

10

0

15

q

q

q

q

q

q

Ejemplo de una máquina expendedora de periódicos (que no dá cambio)

n: niquel (5c)

d: dime (10c)

q: quarter (25c)

El periódico cuesta 30 centavos


Definición informal de autómata

  • Máquina: es una secuencia o ciclo de acciones.

  • Autómata finito: es un modelo matemático de una máquina el cual tiene un conjunto finito de estados y su “control” se mueve de estado a estado (transiciones).

    • Autómata determinista: el autómata no puede estar en más de un estado a la vez. Las transiciones se efectúan en respuesta a “entradas” o “estímulos” externos. Estas entradas son símbolos de un alfabeto.

    • Autómata no-determinista: el autómata puede estar en varios estados al mismo tiempo. Las transiciones de un estado a otro pueden ocurrir de manera espontánea, es decir, en respuesta a la palabra vacía  como entrada.

  • Veremos que un autómata no-determinista se puede convertir en un autómata determinista equivalente (¿?) el cual puede ser “ejecutado” por una computadora convencional.


Cinta de

entrada

b

a

a

b

b

a

Cabeza

lectora

q0

Control

q1

Luz de

aceptación

qn

q2

qi

q3

q4

Caricatura de un autómata finito


Definición formal de un AFD

Un Autómata Finito Determinístico (AFD) es un quinteto (K, , , s0, F) donde

  • K es un conjunto finito no-vacío de estados.

  •  es el alfabeto de entrada (conjunto finito no-vacío de símbolos).

  •  : K   K es la función de transición.

  • s0  K es el estado inicial.

  • F  K es el conjunto de estados finales.

    Determinístico: para cada combinación de sK y a, la función  especifica uno y sólo un estado de transición.


a

Notación gráfica

  • Estado inicial: >

  • Estado final:

  • Transiciones:

a

a

q1

>

q0

b

b

a

b

q2


Notaciones

  • Un AFD puede considerarse como un grafo dirigido G = (V, E)

    • V = S

    • E = {((s, a), t) | s, t S, a  y (s,a) = t}

  • La función de transición puede expresarse como una tabla. Por ejemplo


¿Para que sirven los AFD?

  • Si al “procesar” una palabra completa el estado al que se llega es uno de los estados finales, entonces decimos que el AFD acepta la palabra.

    Un poco más formalmente: extendemos la función  a una función  para cubrir cadenas en lugar de sólo letras. Así, si s es un estado y w es una cadena, entonces (s, w) es el estado en el que se termina cuando se empieza en s después de procesar en orden todas las letras de la palabra w. La función  es llamada función de transición extendida.

  • Decimos que un AFD M = (K, , , s0, F) acepta una palabra w si y sólo si (s0, w)  F.

  • Decimos que un AFD M = (K, , , s0, F) rechaza una palabra w si y sólo si (s0, w)  F.

  • El lenguaje aceptado por una máquina M = (K, , , s0, F) es el conjunto de palabras aceptadas por dicha máquina. El lenguaje aceptado por M se denota por L(M), es decir, L(M) = {w* | (s0, w)  F}


Ejemplo

1

q0

q1

0

1

0

Este AFD acepta palabras con un número impar de 1’s


EjercicioDiseñar un AFD que acepta las palabras con un número par de a’s y un número par de b’s.

  • La función de los estados es la de contar el número de a’s y el número de b’s, pero contarlas módulo 2, es decir, los estados servirán para recordar si el número de a’s que se han leído es par o impar y también recordar lo correspondiente para el número de b’s. Hay cuatro estados.

    • q0: tanto el número de a’s como de b’s que se han leído es par.

    • q1: el número de a’s es par pero el número de b’s es impar.

    • q2: el número de a’s es impar pero el número de b’s es par.

    • q3: el número de a’s es impar y el número de b’s es impar.


Ejemplo

a

(1,0)

(0,0)

a

b

b

b

b

a

(0,1)

(1,1)

a

Acepta cadenas con un número par de a’s

y un número par de b’s.


Ejemplo

b

b

a

b

S0

S1

S2

a

a

a

b

b

S5

S4

S3

a

a,b

Acepta palabras que contienen ababb


Ejemplo

b

a

b

S0

S1

S2

a

a

a,b

b

b

S5

S4

S3

a

a,b

Acepta palabras que contienen ababb o abbbb


a

a,b

b

b

q1

q0

q2

a

b

a,b

a

a

M2

q1

q0

q2

b

Acepta palabras que no contienen aa,

es decir (b+ab)*(a+).

Ejemplos

M1

Acepta palabras que contienen bb,

es decir (a+b)*bb (a+b)*.


a

a

a

b

q2

q1

q3

a

a

b

q0

b

b

b

q5

q4

a,b

¿M1 M2?

Acepta palabras que contienen bb o no contienen aa

es decir (a+b)*bb (a+b)* + (b+ab)*(a+).


  • Login