SlideShare una empresa de Scribd logo
1 de 51
Autómatas de Pila
Jesús E. Carpio 14-0807
Juan A. Ramírez 13-1072
Autómata de Pila
• Un autómata de pila es un modelo matemático
de un sistema que recibe una cadena
constituida por símbolos de un alfabeto y
determina si esa cadena pertenece al lenguaje
que el autómata reconoce.
• El lenguaje que reconoce un autómata con pila
pertenece al grupo de los lenguajes libres de
contexto en la clasificación de la Jerarquía de
Chomsky.
Definición formal
Un Autómata a Pila se define como la séptupla:(Σ, P, Q, A0, q0,
f, F)donde:
• Σ: alfabeto de entrada.
• P: alfabeto de la pila.
• Q: conjunto de estados.
• A0: símbolo inicial de la pila (#).
• q0: símbolo inicial del conjunto de estados.
• f: función de transición. Es una aplicación de
• Q x Σ {λ} x P en el conjunto de partes de P(QxP)*.
• F: conjunto de estados finales o de aceptación.
Diagrama de transición
Un diagrama de transición (Función de transición)
modela el comportamiento del autómata. Es una
aplicación de QxΣ∪{λ}xP en el conjunto de partes de
P(QxP)*.
Pudiendo interpretarlo de la siguiente forma: f(q, a, A)
= {(q1,Z1),…, (qn, Zn)} : Si el AP se en encuentra en el
estado q, lee el símbolo a de la cinta de entrada, y
aparece el símbolo A en el tope de la pila, pasará al
estado qi (n≥i≥1), borrará el símbolo A de la pila e
introducirá la palabra Zi, situando la cabecera de la
misma en el tope de la pila, y avanzando una posición
en la cinta de entrada.
f(q, λ, A) = {(q1,Z1),..., (qn,Zn)}: Si el AP se encuentra en el
estado q y aparece el símbolo A en el tope de la pila,
pasará al estado qi (n≥i≥1), borrará el símbolo A de la pila
e introducirá la palabra Zi, situando la cabecera de la
misma en el tope de la pila, y mantendrá la misma
posición en la cinta de entrada.
Autómata de Pila Determinista
Un AP es Determinístico si verifica:
1. ∀q∈Q, ∀A∈P, cardinal(f(q, λ, A)) 0⇒f(q, a, A) =∅,
∀a∈Σ.
2. ∀q∈Q,∀A∈P,∀a∈Σ∪{λ} ⇒cardinal(f(q, a, A))<2.
Lenguaje aceptado por un
autómata con pila.
Lenguaje aceptado por un AP (M=(Σ, P, Q, A0, q0, f, F)
• Lenguaje aceptado por criterio de estado final
LEF(M) = (x / (q0, x, A0) →* (p, λ, X), p∈F, X∈P*}
• Lenguaje aceptado por criterio de pila vacía
LPV(M) = (x / (q0, x, A0) →* (p, λ, λ), p∈Q}
Ejemplo: Autómata con pila que reconoce el lenguaje
L={xnym, n>m}
• Aplicamos el algoritmo de LEF⇒LPV
Autómatas finitos con pila no-
deterministas (AFPND)
• Un autómata finito con pila no-determinista
(AFPND) es una séptupla donde:
Es decir, el comportamiento del autómata depende en cada transición
• del estado actual
• posiblemente del siguiente símbolo de la entrada
• del símbolo en la cima de la pila
Y se modifica el autómata en el sentido que
• se cambia (posiblemente) del estado
• se consume (posiblemente) el siguiente símbolo de la entrada
• se modifica (posiblemente) el contenido de la cima de la pila.
Generalidades
q1 q2
q3q4
a/z/AH
a/A/a
b/b/b
a/z/z
a/A/Fb
b/F/aHaE
a/z/z
a/z/AHB
Quitar Colocar
z
Ejemplo
q1 q2
q3q4
a/z/AH
a/A/a
b/b/b
a/z/z
a/A/Fb
b/F/aHaE
a/z/z
a/z/AHB z
¿Acepta aab?
¿Acepta aab?
q1 q2
q3q4
a/z/AH
a/A/a
b/b/b
a/z/z
a/A/Fb
b/F/aHaE
a/z/z
a/z/AHB
z
¿Acepta aab?
a/z/AH a/A/a b/b/b
q2q1 q2
q1
z
a)
¿Acepta aab?
a/z/AH a/A/a b/b/b
q2q1 q2
q1
z
a)
H
A
¿Acepta aab?
a/z/AH a/A/a b/b/b
q2q1 q2
q1
z
a)
H
A
H
a
¿Acepta aab?
a/z/AH a/A/a b/b/b
q2q1 q2
q1
z
a)
H
A
H
a Falló
¿Acepta aab?
q1 q2
q3q4
a/z/AH
a/A/a
b/b/b
a/z/z
a/A/Fb
b/F/aHaE
a/z/z
a/z/AHB
z
b)
¿Acepta aab?
a/z/z a/z/z b/F/aHaE
q3q2 q4q1
z
b)
¿Acepta aab?
a/z/z a/z/z b/F/aHaE
q3q2 q4q1
z
b)
z
¿Acepta aab?
a/z/z a/z/z b/F/aHaE
q3q2 q4q1
z
b)
z z
¿Acepta aab?
a/z/z a/z/z b/F/aHaE
q3q2 q4q1
z
b)
z z
Falló
¿Acepta aab?
q1 q2
q3q4
a/z/AH
a/A/a
b/b/b
a/z/z
a/A/Fb
b/F/aHaE
a/z/z
a/z/AHB
z
c)
¿Acepta aab?
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
z
c)
¿Acepta aab?
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
z
c)
B
H
A
¿Acepta aab?
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
z
c)
B
H
A
B
H
b
F
¿Acepta aab?
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
z
c)
B
H
A
B
H
b
F
B
H
b
E
a
H
a
¿Acepta aab?
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
z
c)
B
H
A
B
H
b
F
B
H
b
E
a
H
a
El autómata acepta aab
q1 q2
q3q4
a/z/AH
a/A/a
b/b/b
a/z/z
a/A/Fb
b/F/aHaE
a/z/z
a/z/AHB
z
¿Acepta ab?
q1 q2
q3q4
a/z/AH
a/A/a
b/b/b
a/z/z
a/A/Fb
b/F/aHaE
a/z/z
a/z/AHB z
¿Acepta ab? No
q1 q2
q3q4
a/z/AH
a/A/a
b/b/b
a/z/z
a/A/Fb
b/F/aHaE
a/z/z
a/z/AHB
z
¿Acepta aba?
q1 q2
q3q4
a/z/AH
a/A/a
b/b/b
a/z/z
a/A/Fb
b/F/aHaE
a/z/z
a/z/AHB z
¿Acepta aba? No
Descripción instantánea
z
B
H
A
B
H
b
F
B
H
b
E
a
H
a
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
( q1, aab, z)
Descripción instantánea
z
B
H
A
B
H
b
F
B
H
b
E
a
H
a
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
( q1, aab, z) ├── ( , , )
Descripción instantánea
z
B
H
A
B
H
b
F
B
H
b
E
a
H
a
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
( q1, aab, z) ├── ( q3, , )
Descripción instantánea
z
B
H
A
B
H
b
F
B
H
b
E
a
H
a
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
( q1, aab, z) ├── ( q3, ab, )
Descripción instantánea
z
B
H
A
B
H
b
F
B
H
b
E
a
H
a
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
( q1, aab, z) ├── ( q3, ab, AHB)
Descripción instantánea
z
B
H
A
B
H
b
F
B
H
b
E
a
H
a
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
( q1, aab, z) ├── ( q3, ab, AHB) ├── ( , , )
Descripción instantánea
z
B
H
A
B
H
b
F
B
H
b
E
a
H
a
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
( q1, aab, z) ├── ( q3, ab, AHB) ├── ( q3, , )
Descripción instantánea
z
B
H
A
B
H
b
F
B
H
b
E
a
H
a
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
( q1, aab, z) ├── ( q3, ab, AHB) ├── ( q3, b, )
Descripción instantánea
z
B
H
A
B
H
b
F
B
H
b
E
a
H
a
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
( q1, aab, z) ├── ( q3, ab, AHB) ├── ( q3, b, FbHB)
Descripción instantánea
z
B
H
A
B
H
b
F
B
H
b
E
a
H
a
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
( q1, aab, z) ├── ( q3, ab, AHB) ├── ( q3, b, FbHB) ├── (
, , )
Descripción instantánea
z
B
H
A
B
H
b
F
B
H
b
E
a
H
a
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
( q1, aab, z) ├── ( q3, ab, AHB) ├── ( q3, b, FbHB) ├── ( q4, , )
Descripción instantánea
z
B
H
A
B
H
b
F
B
H
b
E
a
H
a
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
( q1, aab, z) ├── ( q3, ab, AHB) ├── ( q3, b, FbHB) ├── ( q4, ε, )
Descripción instantánea
z
B
H
A
B
H
b
F
B
H
b
E
a
H
a
a/z/AHB a/A/Fb b/F/aHaEq3q3 q4
q1
( q1, aab, z) ├── ( q3, ab, AHB) ├── ( q3, b, FbHB) ├── ( q4, ε, aHaEbHB)
Aplicaciones que requieren análisis
sintáctico
• Compilador para un computador de automatización industrial
• Herramienta de consulta de bases de datos distribuidas
• Creación de un motor de base de datos relacional
• Creación de un motor de base de datos OO (Base de objetos) y su lenguaje
de consulta (OQL)
• Simulador robótico con lenguaje de programación para robots
• Generador de analizador sintáctico (YACC, JAVACC)
Referencias
• Autómatas de Pila: Transiciones - Universidad de
Cantabria -
http://www.slideshare.net/rihardjancomartinez/3-7-
transiciones?qid=c05abe18-18f5-4105-889c-
549d052d50a9&v=&b=&from_search=2
• http://www.uhu.es/francisco.moreno/talf/docs/tema
7.pdf
• Dean Kelly, Teoría de Autómatas y lenguajes Formales.

Más contenido relacionado

La actualidad más candente

Lenguajes regulares
Lenguajes regularesLenguajes regulares
Lenguajes regulares
Kenia Adams
 
Estructura de un compilador 2
Estructura de un compilador 2Estructura de un compilador 2
Estructura de un compilador 2
perlallamas
 

La actualidad más candente (20)

Autómata de Pila
Autómata de Pila Autómata de Pila
Autómata de Pila
 
GRAMATICAS AMBIGUAS
GRAMATICAS AMBIGUASGRAMATICAS AMBIGUAS
GRAMATICAS AMBIGUAS
 
Automata Finito No Determinista
Automata Finito No DeterministaAutomata Finito No Determinista
Automata Finito No Determinista
 
automatas finitos
 automatas finitos automatas finitos
automatas finitos
 
Autómata de pila (AP)
Autómata de pila (AP)Autómata de pila (AP)
Autómata de pila (AP)
 
Presentacion 2 - Maquinas de Estado Finito
Presentacion 2 - Maquinas de Estado FinitoPresentacion 2 - Maquinas de Estado Finito
Presentacion 2 - Maquinas de Estado Finito
 
Ejercicios
EjerciciosEjercicios
Ejercicios
 
maquinas de turing jflap
maquinas de turing jflapmaquinas de turing jflap
maquinas de turing jflap
 
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
 
Lenguajes regulares
Lenguajes regularesLenguajes regulares
Lenguajes regulares
 
Autómatas finitos no deterministas
Autómatas finitos no deterministasAutómatas finitos no deterministas
Autómatas finitos no deterministas
 
Gramáticas formales
Gramáticas formales Gramáticas formales
Gramáticas formales
 
Tipos de Autómatas 
Tipos de Autómatas Tipos de Autómatas 
Tipos de Autómatas 
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regulares
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
 
Estructura de un compilador 2
Estructura de un compilador 2Estructura de un compilador 2
Estructura de un compilador 2
 
Desarrollo momento 3
Desarrollo momento 3Desarrollo momento 3
Desarrollo momento 3
 
Tipos de autómatas
Tipos de autómatasTipos de autómatas
Tipos de autómatas
 
Conversión de un AFN a un AFD.
Conversión de un AFN a un AFD.Conversión de un AFN a un AFD.
Conversión de un AFN a un AFD.
 
Tipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionTipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacion
 

Destacado

Automatas de pila_no_det
Automatas de pila_no_detAutomatas de pila_no_det
Automatas de pila_no_det
Oscar Eduardo
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
Juanchi Novas
 

Destacado (11)

GRAMATICA GENERATIVA Y AUTOMATA DE PILA
GRAMATICA GENERATIVA Y AUTOMATA DE  PILAGRAMATICA GENERATIVA Y AUTOMATA DE  PILA
GRAMATICA GENERATIVA Y AUTOMATA DE PILA
 
Automátas de Pila
Automátas de PilaAutomátas de Pila
Automátas de Pila
 
Gramática y autómatas
Gramática y autómatasGramática y autómatas
Gramática y autómatas
 
Complejidad Temporal
Complejidad TemporalComplejidad Temporal
Complejidad Temporal
 
Automata de Pila y Maquina de Turing No Deterministas
Automata de Pila y Maquina de Turing No DeterministasAutomata de Pila y Maquina de Turing No Deterministas
Automata de Pila y Maquina de Turing No Deterministas
 
Automatas de pila_no_det
Automatas de pila_no_detAutomatas de pila_no_det
Automatas de pila_no_det
 
Lenguajes Regulares y Autómatas Finitos - Clase 7
Lenguajes Regulares y Autómatas Finitos - Clase 7Lenguajes Regulares y Autómatas Finitos - Clase 7
Lenguajes Regulares y Autómatas Finitos - Clase 7
 
Lenguajes Regulares.
Lenguajes Regulares.Lenguajes Regulares.
Lenguajes Regulares.
 
Lenguajes Regulares y Autómatas Finitos - Clase 6
Lenguajes Regulares y Autómatas Finitos - Clase 6Lenguajes Regulares y Autómatas Finitos - Clase 6
Lenguajes Regulares y Autómatas Finitos - Clase 6
 
Automatas finitos
Automatas finitosAutomatas finitos
Automatas finitos
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
 

Similar a Autómatas de pila

No determinista autómatas finitos
No determinista autómatas finitosNo determinista autómatas finitos
No determinista autómatas finitos
Juan Garcia
 
T10 probabilidad condicionada
T10 probabilidad condicionadaT10 probabilidad condicionada
T10 probabilidad condicionada
ANAALONSOSAN
 

Similar a Autómatas de pila (17)

Máquinas de turing o máquinas con cola
Máquinas de turing o máquinas con colaMáquinas de turing o máquinas con cola
Máquinas de turing o máquinas con cola
 
Revisando la jerarquía de chomsky
Revisando la jerarquía de chomskyRevisando la jerarquía de chomsky
Revisando la jerarquía de chomsky
 
Máquinas de turing o máquinas con cola
Máquinas de turing o máquinas con colaMáquinas de turing o máquinas con cola
Máquinas de turing o máquinas con cola
 
Expocision u3
Expocision  u3Expocision  u3
Expocision u3
 
Revisando la jerarquía de chomsky
Revisando la jerarquía de chomskyRevisando la jerarquía de chomsky
Revisando la jerarquía de chomsky
 
Presentacion Enguelbert Garcia
Presentacion Enguelbert GarciaPresentacion Enguelbert Garcia
Presentacion Enguelbert Garcia
 
Depende del contexto
Depende del contextoDepende del contexto
Depende del contexto
 
La máquina sin memoria
La máquina sin memoriaLa máquina sin memoria
La máquina sin memoria
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintactico
 
La máquina sin memoria
La máquina sin memoriaLa máquina sin memoria
La máquina sin memoria
 
No determinista autómatas finitos
No determinista autómatas finitosNo determinista autómatas finitos
No determinista autómatas finitos
 
Depende del contexto
Depende del contextoDepende del contexto
Depende del contexto
 
Teoría de Autómata
Teoría de AutómataTeoría de Autómata
Teoría de Autómata
 
Recapitulación
RecapitulaciónRecapitulación
Recapitulación
 
Gramáticas libres de contexto en su habitát
Gramáticas libres de contexto en su habitátGramáticas libres de contexto en su habitát
Gramáticas libres de contexto en su habitát
 
Automatas Infinitos
Automatas Infinitos Automatas Infinitos
Automatas Infinitos
 
T10 probabilidad condicionada
T10 probabilidad condicionadaT10 probabilidad condicionada
T10 probabilidad condicionada
 

Último

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Último (10)

Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 

Autómatas de pila

Notas del editor

  1. Un séptuplo es una cantidad que incluye en si siente veces otra cantidad.
  2. Un autómata de pila es determinista cuando en ningún momento puede darse la situación de tener varias transiciones posibles ante una situación actual del autómata. Ejemplo 1: λ,X,