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

Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
Osiris Mirerus
 
Lema de bombeo
Lema de bombeoLema de bombeo
Lema de bombeo
Omega Tech
 

La actualidad más candente (20)

maquinas de turing
maquinas de turingmaquinas de turing
maquinas de turing
 
Jerarquia de chomsky
Jerarquia de chomskyJerarquia de chomsky
Jerarquia de chomsky
 
Teoria de automatas
Teoria de automatasTeoria de automatas
Teoria de automatas
 
Gramáticas y Modelos Matemáticos - Clase 3
Gramáticas y Modelos Matemáticos - Clase 3Gramáticas y Modelos Matemáticos - Clase 3
Gramáticas y Modelos Matemáticos - Clase 3
 
Lenguajes no regulares
Lenguajes no regularesLenguajes no regulares
Lenguajes no regulares
 
Tipos de autómatas, y operaciones de conjunto entre autómatas
Tipos de autómatas, y operaciones de conjunto entre autómatasTipos de autómatas, y operaciones de conjunto entre autómatas
Tipos de autómatas, y operaciones de conjunto entre autómatas
 
Gramática Libre de Contexto
Gramática Libre de ContextoGramática Libre de Contexto
Gramática Libre de Contexto
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
 
Automata Finito No Determinista
Automata Finito No DeterministaAutomata Finito No Determinista
Automata Finito No Determinista
 
Tipos de Autómatas 
Tipos de Autómatas Tipos de Autómatas 
Tipos de Autómatas 
 
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
 
Decompilador y metacompilador
Decompilador y metacompiladorDecompilador y metacompilador
Decompilador y metacompilador
 
Operaciones entre lenguajes
Operaciones entre lenguajesOperaciones entre lenguajes
Operaciones entre lenguajes
 
Los lenguajes aceptados para una maquina de turing
Los lenguajes aceptados para una maquina de turingLos lenguajes aceptados para una maquina de turing
Los lenguajes aceptados para una maquina de turing
 
Generador de codigo intermedio
Generador de codigo intermedioGenerador de codigo intermedio
Generador de codigo intermedio
 
Autómata de Pila
Autómata de Pila Autómata de Pila
Autómata de Pila
 
Lema de bombeo
Lema de bombeoLema de bombeo
Lema de bombeo
 
Tutorial de JFLAP
Tutorial de JFLAPTutorial de JFLAP
Tutorial de JFLAP
 
Autómata de pila (AP)
Autómata de pila (AP)Autómata de pila (AP)
Autómata de pila (AP)
 
Alu
AluAlu
Alu
 

Destacado (10)

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
 
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

EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
FagnerLisboa3
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 

Último (15)

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
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
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
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 

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,