Está en la página 1de 25

AUTOMATAS DE PILA Y LENGUAJES INDEPENDIENTES DEL CONTEXTO

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

ndice
Cuestionario Autmatas
Caractersticas

4 5
8

Principio de Pre Anlisis


Formalizacin de los AP Lmites de los Autmatas de Pila Proceso de reconocimiento de una cadena

9
10 12 13

Lenguajes libres de contexto


Gramticas independientes del contexto Gramticas libres del contexto BNF

15
17 18 21

Bibliografa de Avram Noam Chomsky Respuestas Bibliografa

22 23 25

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

Objetivo

Al termino de esta presentacin se contar con la capacidad de identificar los autmatas de pila y sus diferentes tipos, as como los lenguajes independientes de contexto.

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

Cuestionario
1. Qu es un autmata de Pila? 2. Para que sirve la pila de los Autmatas? 3. Qu es el principio de pre anlisis? 4. Mencione el proceso de reconocimiento de una cadena? 5. Qu significa un GIC? 6. Para que nos sirve un GIC? 7. Cuantos tipos de gramtica existen segn la clasificacin de Chomsky y cuales son? 8. A que se debe el nombre Libre de Contexto?

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

Autmata
Al igual que con los lenguajes regulares podemos definir un autmata como una mquina reconocedora de cadenas (palabras) de un determinado lenguaje.

Los autmatas son dispositivos de computo que operan como una maquina de estados finitos, las cuales realizan un encadenamiento automtico y continuo de operaciones capaces de procesar una informacin de entrada para producir otra de salida.
Por lo general los autmatas finitos no son lo suficientemente poderosos para aceptar el control de enlace lgico LLC (Logical Link Control) quien es el que define la forma en que los datos son transferidos sobre el medio fsico, proporcionando servicio a las capas superiores La idea es agregar algo a los Autmatas Finitos para que de alguna manera se incremente

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

Por tal motivo surgen los Autmatas de Pila, que al igual que un Autmata Finito, cuenta con un flujo de entrada y un flujo de control que puede encontrarse en uno de entre un nmero finito de estados Uno de estos estados se designa como el inicial y por lo menos un estado de aceptacin La principal diferencia es que los Autmatas de pila cuentan justamente con una pila en donde se puede almacenar informacin para recuperarla ms tarde

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

Los smbolos que pueden almacenarse en esta pila se conocen como smbolos de pila de la maquina, constituyen un conjunto finito que puede incluir algunos smbolos definiendo el alfabeto de la maquina y quiz algunos smbolos adicionales que se utilizan como marcas internas. Si una maquina inserta un smbolo especial en la pila antes de efectuar algn otro clculo, entonces ese smbolo en la cima de la pila puede usarse como indicador de pila vaca para clculos posteriores, dicho smbolo es #

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

Caractersticas
La Pila funciona de manera que el ltimo carcter que se almacena en ella es el primero en salir (orden LIFO), como si apilramos platos uno encima de otro, y naturalmente el primero que quitaremos es el ltimo que hemos colocado.

Un aspecto crucial de la pila es que slo podemos modificar el tope de la pila, que es el extremo por donde entran o salen los caracteres. Los caracteres a la mitad de la pila no son accesibles sin quitar antes los que estn encima de ellos
La pila tendr un alfabeto propio que puede o no coincidir con el alfabeto de la palabra de entrada. Esto se justifica porque puede ser necesario introducir en la pila caracteres especiales usados como separadores segn las necesidades de diseo del autmata

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

Principio de Pre Anlisis

Tcnica que permite a los autmatas de pila observar uno o varios smbolos ms all de donde se encuentra la cabeza lectora del autmata, pero sin leerlos realmente.

Esta tcnica permite superar el no determinismo de algunos autmatas de pila.

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

10

Formalizacin de los AP
Un Autmata de Pila es un sxtuplo (K, , , , s, F), donde : K es un conjunto de estados

es el alfabeto de entrada
es el alfabeto de la pila

S K es el estado inicial
F K es un conjunto de estados finales esta representa la siguiente tabla

(s, a, E)
(s, b, E) (s, c, E) (f, a, a)

(s, a)
(s, b,) (f, E ) (f, E )

(f, b, b)

(f, E )

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

11

(K x * x *) x (K x *) es la relacin de transicin.

Ahora describiremos el funcionamiento de los AP. Si tenemos una transicin ((p, u, )(q, )) , el AP hace lo siguiente:
Estando en el estado p, consiste u de la entrada;

Saca de la pila;
Llega a un estado q;

Mete

en la pila

Las operaciones tpicas de las pilas -el push y el pop- pueden ser vistas como casos particulares de las transiciones de nuestro AP; en efecto, si slo queremos meter la cadena a la pila, se hara con la transicin ((p, u, E)(q, )) (push), mientras que si slo queremos sacar caracteres de la pila de har con la transicin ((p, u, )(q, E)) (pop).

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

12

Lmites de los Autmatas de Pila


Lema de bombeo para lenguajes independientes del contexto
Si L es un lenguaje independiente del contexto con un nmero infinito de cadenas, existir en L una cadena con la forma svuwt, siendo v o w no vacas, y tambin existirn en L cadenas de la forma svuwt para todo n>0.

Autmatas de pila deterministas


En cada momento tienen una y slo una opcin posible

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

13

Proceso de reconocimiento de una cadena:


Se parte del estado inicial y la pila vaca Se lee la cadena smbolo a smbolo de izquierda a derecha Por cada smbolo ledo se produce una transicin desde el estado actual a otro a travs de la flecha cuyo smbolo de entrada coincida con el smbolo ledo, siempre y cuando la cabecera de la pila coincida con el smbolo de pila que figura a la izquierda del punto y coma La cabecera de la pila es sustituida en cada transicin por el smbolo de la pila a la derecha del punto y coma en la etiqueta de la flecha El autmata puede realizar transiciones entre estados sin consumir smbolos de entrada o smbolo de pila a travs de flechas en las que en el lugar correspondiente de la etiqueta aparezca el smbolo La cadena es reconocida si es posible que el autmata alcance un estado de aceptacin, estando completamente con sumida la cadena de entrada

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

14

Coffee Coffee Break

ak

Coffee

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

15

Lenguajes Libres de Contexto

Los LLC se describen mediante las Gramticas Libres de Contexto (GLC).


Todos los LR son LLC, pero no todos los LLC son LR. Los LLC (que no sean LR) no pueden denotarse mediante expresiones regulares ni pueden ser reconocidos mediante AF. Los LLC se utilizan para especificar la mayora de los lenguajes de programacin

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

16

Ejemplos
1. G = (VN, VT, E, P) con VT= {id, num,+,*,(,)} VN = {E}

P:

1. EE+E
2. EE*

3. E(E)Derivar la palabra id * (id+num) * id


4. Eid

5. Enum
Hallar gramtica que genera el lenguaje regular denotado por la expresin regular a*b*

Hallar gramtica que genera el lenguaje anbn , n >= 0


Hallar gramtica que describe el lenguaje de los palndromosformados por as y bs

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

17

Gramticas Independientes del Contexto


Son el mtodo ms popular utilizado para describir la sintaxis de los lenguajes de programacin.

Existen distintos tipos de gramticas y asociado a cada uno de ellos hay un autmata. Chomsky defini cuatro tipos:
1- Gramticas regulares. 2- Gramticas libres del contexto. 3- Gramticas dependientes del contexto. 4- Gramticas irrestrictas. Las ms usadas en el rea de compiladores son las gramticas libres del contexto y las gramticas regulares.

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

18

Gramticas Libres del Contexto


Su principal caracterstica es la de generar cadenas en modalidad espejo. Su importancia radica en que permiten describir los aspectos sintcticos de los lenguajes de programacin. Es decir, como debe escribirse correctamente un programa.

Sin embargo tienen sus limitaciones desde el punto de vista semntica (declaracin y uso de identificadores en Pascal). El nombre libre de contexto se debe a que cada una de las producciones pueden ser aplicadas independientemente del contexto en donde aparezca un no terminal en una forma sentencial.
Sus producciones responden al modelo: A , donde A VN y (VN VT)*

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

19

En sus reglas aparece a la izquierda un nico smbolo no terminal , y a la derecha cualquier combinacin de smbolos terminales y no terminales, o la palabra vaca
Derivaciones:

rboles que se pueden leer de diferentes formas


Derivacin por la derecha: siempre se aplican las reglas de reescritura al smbolo no terminal ms a la derecha de la cadena de derivacin Derivacin por la izquierda: siempre se aplican las reglas de reescritura al smbolo no terminal ms a la derecha de la cadena de derivacin

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

20

Ejemplo:
Derivacin por la derecha: 1. 2. 3. 4. 5. 6. S S A A B B AB A aAa Bb b S AB ABb ABbb Abbb aAabbb aabbb

Derivacin por la izquierda: S AB aAaB aaB aaBb aaBbb aabbb

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

21

BNF
La BNF es otra forma de especificar una gramtica libre del contexto, y usa los siguientes smbolos: Smbolos no terminales entre <> Sustitucin de por ::=

Ejemplo: <sentenciafor>::=for<condicion><sentencia>
Una gramtica libre de contexto G, se dice que es ambigua, si existe alguna palabra perteneciente al lenguaje que genera que tenga ms de un rbol de derivacin.

Un lenguaje es intrnsecamente ambiguo cuando no existe ninguna gramtica libre de contexto que lo genere que no sea ambigua.

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

22

Avram Noam Chomsky


(7 de diciembre de 1928 en Filadelfia, Estados Unidos) es un lingista, filsofo, activista, autor y analista poltico estadounidense. Es profesor emrito de Lingstica en el MIT y una de las figuras ms destacadas de la lingstica del siglo XX, es sumamente reconocido en la comunidad cientfica y acadmica por sus importantes trabajos en teora lingstica y ciencia cognoscitiva.

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

23

Respuestas
1. Qu es un autmata de Pila?
son dispositivos de computo que operan como una maquina de estados finitos, las cuales realizan un encadenamiento automtico y continuo de operaciones capaces de procesar una informacin de entrada para producir otra de salida.

2. Para que sirve la pila de los Autmatas?


para almacenar informacin para recuperarla ms tarde

3. Qu es el principio de pre anlisis?


Tcnica que permite a los autmatas de pila observar uno o varios smbolos ms all de donde se encuentra la cabeza lectora del autmata, pero sin leerlos realmente.

4. Mencione el proceso de reconocimiento de una cadena?


Se parte del estado inicial y la pila vaca Se lee la cadena smbolo a smbolo de izquierda a derecha Por cada smbolo ledo se produce una transicin desde el estado actual a otro a travs de la flecha cuyo smbolo de entrada coincida con el smbolo ledo, siempre y cuando la cabecera de la pila coincida con el smbolo de pila que figura a la izquierda del punto y coma La cabecera de la pila es sustituida en cada transicin por el smbolo de la pila a la derecha del punto y coma en la etiqueta de la flecha El autmata puede realizar transiciones entre estados sin consumir smbolos de entrada o smbolo de pila a travs de flechas en las que en el lugar correspondiente de la etiqueta aparezca el smbolo La cadena es reconocida si es posible que el autmata alcance un estado de aceptacin, estando completamente con sumida la cadena de entrada

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

24

5. Qu significa un GIC?
Gramtica Independiente del Contexto

6. Para que nos sirve un GIC?


Para describir la sintaxis de los lenguajes de programacin.

7. Cuantos tipos de gramtica existen segn la clasificacin de Chomsky y cules son?


1- Gramticas regulares. 2- Gramticas libres del contexto. 3- Gramticas dependientes del contexto. 4- Gramticas irrestrictas.

8. A que se debe el nombre Libre de Contexto?


se debe a que cada una de las producciones pueden ser aplicadas independientemente del contexto en donde aparezca un no terminal en una forma sentencial.

Autmatas de Pila y Lenguajes Independientes de Contexto

07/03/2009

25

Bibliografa
http://dac.escet.urjc.es/~lrincon/uned/ta1/ta1-tema2.pdf http://148.202.148.5/cursos/cc209/teoriacomp/MODULO_4/Teoria_4_2.htm http://cnx.org/content/m16320/latest/ http://fisica.ciens.ucv.ve/etisc/2001/curso/Ce_iii_clase1.html http://156.35.94.1/asignaturas/aut.mat.dis/apuntes/Tema2-2005-2006V1.pdf

También podría gustarte