TIPOS DE GRAMATICAS[1]

6
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 contexto 2 Lenguaje de tipo 2 o lenguaje independiente al contexto Sensible al contexto 1 Lenguaje tipo 1 lenguaje sensible al contexto. Tipo no restringido 0 Tipo cero lenguaje no restringido.

description

Informacion de Tipos de Gramaticas para Teoria de las computadoras

Transcript of TIPOS DE GRAMATICAS[1]

Page 1: TIPOS DE GRAMATICAS[1]

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 contexto

2Lenguaje de tipo 2 o lenguaje independiente al 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:

Page 2: TIPOS DE GRAMATICAS[1]

Z yXX yX

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

Ejemplo:

yW XX xZyYX WvZ

 

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

N xXX

 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 A y E 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 zMNzM aMaM zN bNbN z

Page 3: TIPOS DE GRAMATICAS[1]

 

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 aEE AE BA bA AaB 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 aSS bTT aTT

7. Dada la siguiente gramática derive baab, bbba, abab

S bAA aA\b\

ACTIVIDADES SUGERIDAS

Page 4: TIPOS DE GRAMATICAS[1]

1. Dada la siguiente gramática derive xyz, yzrr, yyzr

S xT S yTT yUU zWW rXXw

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 yXX 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 xSS yS zS

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

Page 5: TIPOS DE GRAMATICAS[1]

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