TIPOS DE GRAMA GR AMATICAS TICAS JERARQUIAS DE CHOMSKY INTRODUCCIÓN:Para el estudio de este tema es necesario analizar dos tipos de gramáticas de la clasificación de Chomsky, las regulares y las independientes de contexto, las reglas permitidas y no permitidas. Tener un conocimiento amplio de las gramáticas y el lenguaje que se emplea en cada una de ellas, es una herramienta mas para la realización de los analizadores.
CONTENIDO En 1959 Noam Chomsky clasifico las gramáticas en cuatro familias. Las gramáticas no restringidas, sensibles al contexto, independientes del contexto y las gramáticas regulares que se conocen como gramáticas de tipo cero, uno, dos y tres respectivamente. Los lenguajes que resultan de dichas gramáticas también se identifican con lenguajes de tipo cero, uno, dos y tres. A esta jerarquía de lenguaje se le conoce como la jerarquía de chomsky.
GRAMATICA
TIPO
LENGUAJE QUE GENERA
Regular
3
Lenguaje tipo 3 o lenguaje regular
Independiente del contexto
2
Lenguaje de tipo 2 o lenguaje independiente al contexto
Sensi ensibl ble e al cont contex extto
1
Lengu enguaj aje e tipo ipo 1 len lengu guaj aje e se sensi nsible ble al cont contex extto.
Tipo no restringido
0
Tipo cero lenguaje no restringido.
Gramática Regular : Es aquella gramática cuyas reglas de reescritura tienen las siguientes restricciones: 1.- El lado izquierdo de cualquier regla de reescritura debe consistir en un solo no terminal , el lado derecho debe ser un terminal seguido por un no terminal , o un solo terminal o la cadena vacía
Ejemplo:
Titles you can't find anywhere else
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Titles you can't find anywhere else
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Z X X
yX y
Las siguientes regla de reescritura no estarían permitidas en una gramática regular.
Ejemplo: yW X X xZy YX WvZ
En una gramát gramática ica regular regular cualqu cualquier ier regla regla de la la forma forma N reglas siguientes: N X
x podría podría remplaza remplazarse rse con el par de de
xX
Donde X es un no terminal que no aparece en ningún otro lugar de la g ramática, sin alterar el conjunto de cadenas que podría generar la gramática. N
xX
x
=x
LA IMPORTANCIA DE LAS GRAMÁTICAS REGULARES RESIDE EN QUE LOS LENGUAJES GENERADOS POR ELLAS SON EXACTAMENTE AQUELLOS QUE RECONOCEN LOS AUTÓMATAS FINITOS. NOTA: se interpreta como "puede ser", "se compone de", "e s sustituida por".
\ se in interpreta como "o" ej ejemplo: E
AyE
B se unen en en E
A\B.
se interpreta como "derivar", "produce" o "genera".
GRAMÁTICAS INDEPENDIENTES DEL CONTEXTO. A diferencia de las gramáticas regulares, estas gramáticas no tienen restricciones con respecto a la forma del lado derecho de sus reglas de reescritura aunque aun se requiere que el lado izquierdo de cada regla sea un no terminal. La siguiente es una gramática independiente del contexto, pero no es regular. S
zMNz
Titles you can't find anywhere else
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
El termino independiente del contexto refleja que, como el lado izquierdo de cada regla de reescritura únicamente puede contener un solo no terminal la regla puede aplicarse sin importar el contexto donde se encuentre dicho no terminal. Al igual que las gramáticas regulares, las independientes del contexto (G.I.C.) generan cadenas por medio de derivaciones. En el caso de las G.I.C. pueden surgir dudas con respecto a cual será el no terminal que deberá reemplazarse en un paso especifico de la derivación. Por ejemplo al generar una cadena con la gramática anterior en el primer paso produce la cadena zMNz que representa la opción de reemplazar el no terminal M o el N en el siguiente paso. Por consiguiente, para generar la cadena zazabzbz se podría producir la siguiente derivación zazababa (por la izquierda). S
zMNz
zaMaNz
zazaNz
zazabNbz
zazabzbz
Siguiendo la regla rutinaria de aplicar siempre una regla de reescritura al no terminal mas a la izquierda en la cadena actual, a esto se le llama derivación por la izquierda. También podría producirse la siguiente derivación zazab zbz (por la derecha) S
zMNz
zMbNbz
zMbzbz
zaMabzbz
zazabzbz
Aplicando siempre al regla de reescritura al no terminal situado mas a la derecha, lo cual daría como resultado una derivación por la derecha. Incluso se podrían seguir otros patrones y obtener otras derivaciones de la misma cadena.
ACTIVIDADES OBLIGAT OBLIGATORIAS ORIAS 1. Mediante la siguiente gramática, derivar
2.
3. 4. 5.
6.
7.
S aE E A E B A b A Aa B b\ bB a) ab b) ab3 c) aa3b d ) ¿es ¿es pos posib ible le der deriv ivar ar aba abab? b? Derivar a) abaa y b) aaabaa. S aS S bT T aT T Dada la siguiente gramática derive baab, bbba, abab
Titles you can't find anywhere else
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
1. Dada la siguien siguiente te gramát gramática ica derive derive xyz, yzrr, yzrr, yyzr yyzr S xT S yT T yU U zW W rX X w
1. Muestre que es posible modificar la gramática que se presenta a continuación (con símbolo inicial S) para formar una gramática regular, regular, sin cambiar el lenguaje que se genera. Compruebe el resultado derivando la cadena yxxy con ambas gramaticas. S X X Y
yX xxX yY 1. Convierta Convierta la siguie siguiente nte gramáti gramática ca regular regular en otra otra gramática gramática regular regular que no no contenga contenga reglas de reescritura cuyos lados derechos consistan en un solo terminal pero a la vez genere el mismo lenguaje. Compruebe el resultado derivando la cadena xy o xz con ambas gramáticas.
S S S S
xS y z
TIPOS DE GRAMA GRAMATICAS TICAS
Los “Lengua jes Regulares”, que es la clase m´na, e incluye a los lenguajes m´ as peque˜as simples. 10 Un ejemplo de lenguaje regular es el conjunto de todos los n´ umero binarios. Los “Lengua jes Libres de Contexto”, que incluyen a los Lengua jes Regulares. Por ejem plo, la mayor´ia de los lengua jes de programaci´
Titles you can't find anywhere else
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Todas estas clases de lengua jes son representables de manera finita (mediante caden as on ). Ahora bien, como veremos m´ de caracteres que sirven como representaci´as adelante, 8Debe quedar claro que la descripci´ on de L* en este ejemplo no es formal, pues los “. . . ” dejan abierta la puerta a muchas imprecision es. 9Claro que este proceso no terminar´ia nunca, pues L* es infinito para cualquier L que tenga al menos un elemento. 10Luego veremos en qu´e sentido son m´ as simples que las otras clases de lenguajes.