Académique Documents
Professionnel Documents
Culture Documents
Scanner
Pila
1 0 1 1 0 1
Scanner push
1 0 1 1 0 1
push
1 0 1 1 0 1
1 0 1 1 0 1
push
0 1
1 0 1
Dr. Luis A. Pineda, IIMAS, UNAM, 2005. ISBN: 970-32-2972-7
1 0 1 1 0 1
1 0 1 1 0 1
pop
1 0 1
pop
0 1
1 0 1 1 0 1
1 0 1 1 0 1
pop
La cadena se acepta!
Nocin de estado
En FA (DFA, NFA & NFA-) el siguiente estado depende del estado actual y el smbolo actual en la cinta de entrada: El estado es una fotografa completa de la mquina en cada punto (estado) de la computacin! En el Autmata de Pila la fotografa completa depende, adems, del contenido del stack!
Dr. Luis A. Pineda, IIMAS, UNAM, 2005. ISBN: 970-32-2972-7
La mquina no es determinstica
Cmo sabe la mquina cuando termina de leer la primera parte de la cadena?
No sabe: adivina!
La mquina no es determinstica
Al leer cada smbolo, la mquina:
Lee el smbolo y realiza la operacin
La mquina no es determinstica
Cmo sabe cuando el stack est vacio?
Se usa un smbolo especial!
Operacin de la Mquina
Dependiendo de:
El smbolo actual en la cinta El estado actual El smbolo hasta arriba (top) de la pila
Operacin de la Mquina
Aceptar una cadena si:
Se leen todos los smbolos en la cinta Se llega a un estado aceptor o con el
stack vaco
Accin:
Seleccionar el siguiente estado Realizar operacin (push, pop o nada)
Dr. Luis A. Pineda, IIMAS, UNAM, 2005. ISBN: 970-32-2972-7 Dr. Luis A. Pineda, IIMAS, UNAM, 2005. ISBN: 970-32-2972-7
Definicin formal de un AP
Un Autmata de Pile es un 7-teto: (Q, , , q0, Z0, A, ) donde: Q es un conjunto finito de estados es el alfabeto del lenguaje reconocido por el AP es el alfabeto de las cadenas que ocurren en el stack q0 Q (el estado inicial) Z0 (el smbolo inicial del stack) A Q (el conjunto de estados aceptores) la funcin de transicin de tipo: Q ( {}) subconjuntos finitos de Q * donde la cadena hasta arriba del stack *
Dr. Luis A. Pineda, IIMAS, UNAM, 2005. ISBN: 970-32-2972-7
Funcin de transicin
Funcin de transicin para DFA: : Q Q Funcin de transicin para NFA: : Q 2Q Funcin de transicin para NFA- : Q ( { }) 2Q Funcin de transicin para PDA: : Q ( { }) c.f. Q *
Una transicin
Una transicin: (q0, 1, Z0)
1 0 1 1 0 1
Control de estados finitos
Una transicin
Una transicn: Push!
q0
Z0
q0 Se consume el smbolo
push
1 Z0
Transicin no-determinstica
Una transicin:
Transicin no-determinstica
Una transicin-: (q0, , Z0) = (q1, Z0)
(q0, , Z0)
1 0 1 1 0 1
Control de estados finitos
1 0 1 1 0 1
q0
Z0
q1 Si se ve un
Z0
Push
3 4 5 6 7 8 9 10 11 12
Otras combinaciones
Otras combinaciones
Mitad de la cadena
Pop
Otras combinaciones
Otras combinaciones
Una mquina para aceptar Pal pares (q0, 1, Z0) = (q0, 1Z0)
Control de estados finitos
q0
, Z0 / Z0 , 0 / 0 , 1 / 1
1 0 0 1
, Z0 / Z0
q1
q2
q0
Una etiqueta (en un arco) de forma a, X/ de p a q significa que con la entrada a, el smbolo X en el Top (del stack) se substituye por : (p, a, X) = (q, )
1, Z0 / 1Z0
Z0
Una mquina para aceptar Pal pares (q0, 1, Z0) = (q0, 1Z0)
Control de estados finitos
1 0 0 1 q0
1 0 0 1 q0
1, Z0 / 1Z0
1 Z0
0, 1 / 01
1 Z0
1 0 0 1 q0
1 0 0 1 q0
0, 1 / 01
0 1 Z0
Dr. Luis A. Pineda, IIMAS, UNAM, 2005. ISBN: 970-32-2972-7
0 1 Z0
1 0 0 1 q1
1 0 0 1 q1
0 1 Z0
0, 0 /
0 1 Z0
Dr. Luis A. Pineda, IIMAS, UNAM, 2005. ISBN: 970-32-2972-7
1 0 0 1 q1
1 0 0 1 q1
0, 0 /
pop
1 Z0
a = a
1 Z0
1 0 0 1 q1
1 0 0 1 q1
1, 1 /
1 Z0
1, 1 /
Z0
Una mquina para aceptar Pal pares (q1, , Z0) = (q2, Z0)
1 0 0 1 q1
1 0 0 1 q1
1, 1 /
a = a
Z0
, Z0 / Z0
Z0
Una mquina para aceptar Pal pares (q1, , Z0) = (q2, Z0)
Control de estados finitos
1 0 0 1 q2
, Z0 / Z0
Z0
Z0
Configuraciones de un AP
Una configuracin de una AP M = (Q, , , q0, Z0, A, ) es una tercia: (q, x, ) donde q Q es el estado actual x * es la parte de la entrada que no se ha ledo * es el contenido actual de TODO el stack
Dr. Luis A. Pineda, IIMAS, UNAM, 2005. ISBN: 970-32-2972-7
Configuraciones de un AP
Una movida de una configuracin a la siguiente: (p , x , ) M (q , y , ) Una secuencia de cero o ms movidas: (p, x, ) *M (q, y, )
cambiar de estado & consumir smbolo pero no poner (push) el smbolo en el stack!
Dr. Luis A. Pineda, IIMAS, UNAM, 2005. ISBN: 970-32-2972-7 Dr. Luis A. Pineda, IIMAS, UNAM, 2005. ISBN: 970-32-2972-7
Otras combinaciones
Otras combinaciones
Otras combinaciones
Otras combinaciones
Aceptar 101
(q0, 101, Z0) todava en la primera mitad (q0, 01, 1Z0) (q1, 1, 1Z0) (q0, 1, 01Z0) (q0, , 101Z0) (q1, 1, 01Z0) (q2, , Z0) (q1, , 01Z0) Dr. Luis A. Pineda, IIMAS, UNAM, 2005. ISBN: 970-32-2972-7 (q1, 01, 1Z0) (q1, , Z0) (q1, 101, Z0) (q2, 101, Z0) (q1, 01, Z0) (q2, 01, Z0) adivina mitad de pal. par adivina mitad de pal. non
10