You are on page 1of 5

TIPOS DE GRAMATICAS

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 Lenguaje de tipo 2 o lenguaje independiente al
2
contexto contexto
Sensible al contexto 1 Lenguaje tipo 1 lenguaje sensible al contexto.
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:
Z yX
X y
X

Las siguientes regla de reescritura no estarían permitidas en una gramática regular.

Ejemplo:

yW X
X xZy
YX WvZ

En una gramática regular cualquier regla de la forma N x podría remplazarse con el par de
reglas siguientes:

N xX
X

Donde X es un no terminal que no aparece en ningún otro lugar de la gramá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", "es sustituida por".

\ se interpreta como "o" ejemplo: E AyE B se unen 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
M aMa
M z
N bNb
N z
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 zazabzbz (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 OBLIGATORIAS

1. Mediante la siguiente gramática, derivar


S aE
E A
E B
A b
A Aa
B b\ bB
2. a) ab
3. b) ab3
4. c) aa3b
5. d ) ¿es posible derivar abab?
6. Derivar a) abaa y b) aaabaa.
S aS
S bT
T aT
T
7. Dada la siguiente gramática derive baab, bbba, abab

S bA
A aA\b\

ACTIVIDADES SUGERIDAS
1. Dada la siguiente gramática derive xyz, yzrr, 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, sin cambiar el lenguaje que se
genera. Compruebe el resultado derivando la cadena yxxy con ambas gramaticas.

S yX
X xxX
X yY
Y
1. Convierta la siguiente gramática regular en otra gramática regular que no 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 xS
S y
S z
S

TIPOS DE GRAMATICAS

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´
on son Lengua jes Libres de Contexto.

Los “Lengua jes Recursivamente Enumerables”, que incluyen a los Libres de Contexto
(y por lo tanto a los Lengua jes Regulares).
Todas estas clases de lengua jes son representables de manera finita (mediante cadenas 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.

You might also like