You are on page 1of 4

CLASIFICACIÓN DE LENGUAJES FORMALES DE CHOMSKY.

Noam Chomsky Lingüista estadounidense nacido en 1928, profesor del Instituto de Tecnología de Massachussets (MIT). Aparte de como lingüista y profesor universitario, es muy conocido por su faceta de intelectual y crítico activista político. Chomsky ha publicado más de 70 libros y más de 1000 artículos sobre diversos temas como lingüística, filosofía y política. Muchos no dudan en calificarle como uno de los personajes más destacados del siglo XX. Como no podía ser de otra manera, Internet muestra la relevancia de este personaje: existen numerosas páginas relacionadas con Noam Chomsky. Desde niño comenzó a desarrollar su afición por la política: el primer artículo que publicó a los 11 años en el periódico del colegio trataba de la Guerra Civil Española. Desde muy joven estuvo vinculado a movimientos políticos de izquierdas cercanos al marxismo, a pesar de que él procedía de una familia judía de clase media-alta. Actualmente se define a sí mismo como “socialista liberal”. Chomsky siempre se ha mostrado especialmente beligerante con la política exterior de Estados Unidos, jugando un importante papel en las protestas contra la guerra de Vietnam en los 60’s. Asimismo ha denunciado y criticado los crímenes cometidos en Centroamérica por regímenes dictatoriales apoyados por EEUU, , la actitud norteamericana en Oriente Medio apoyando la línea dura de los israelíes, la intervención militar en la Guerra del Golfo y en general la política exterior del mundo occidental. Lamentablemente y como consecuencia de los trágicos sucesos del 11 de septiembre, el conflicto está ahora más que nunca de actualidad. Al final de este texto, he incluido un par de enlaces a entrevistas con Chomsky después de los ataques terroristas. Su actitud política ha hecho de él una figura de inspiración para algunos movimientos de izquierdas, y un enemigo para muchos otros. Especialmente negativa es su relación con la prensa estadounidense, a la que siempre ha acusado de enmascarar las acciones del gobierno de forma subjetiva y de justificar masacres en otros lugares del mundo en nombre de la justicia y de los valores democráticos. Centrándonos ya en el tema que más nos incumbe como estudiantes de informática, hay que señalar que su aportación a la ciencia de la Computación ha sido muy significativa. Se le considerada el fundador de la Gramática generativa transformacional. Sus análisis del lenguaje parten de las oraciones básicas que se desarrollan y terminan en una variedad de combinaciones sintácticas al aplicar una serie de reglas. Gramáticas Formales Una gramática formal consta de un conjunto finito de símbolos terminales (las palabras en un lenguaje formal), un conjunto finito de símbolos no terminales, un conjunto de reglas de producción con un lado izquierdo y otro derecho, y un símbolo inicial. Las reglas se aplican sustituyendo la parte de la izquierda por la parte de la derecha. Una derivación es una secuencia de aplicaciones de reglas. Cada gramática define el lenguaje formal de todas las sentencias que están formadas exclusivamente por los símbolos terminales a los que se puede llegar mediante derivación a partir del símbolo inicial.
 Ejemplo 1: Gramática con terminales {a, b}, no terminales {S,A,B} y las siguientes reglas de producción, y símbolo inicial S. 1. <S>  <A><B><S> 2. <S>   (siendo  el símbolo vacío) 3. <B><A>  <A><B> 4. <B><S>  b

-1-

<NOMBRE>  hombre | libro | balón 6. <ARTICULO>  el 5. <PREDICADO>  <VERBO> <FORMA NOMINAL > 7.  <S>  <A><B><S> (1) <A><B><S>  <A>b (4) <A>b  ab (6)  <S>  <A><B><S> (1) <A><B><S>  <A><B><A><B><S> (1) <A><B><A><B><S>  <A><A><B><B><S> (3) <A><A><B><B><S>  <A><A><B>b (4) <A><A><B>b  <A><A>bb (5) <A><A>bb  <A>abb (6) <A>abb  aabb (7)  Ejemplo 2 : Gramática que construye un pequeño subconjunto del lenguaje natural o Reglas de producción: 1. <ENTERO>  <SIGNO><SECUENCIA> 2.  y  pueden ser vacíos. <SIGNO>  + | . etc. pero  ha de ser distinto del vacío. <SUJETO>  <FORMA NOMINAL> 3.|  3. -2- . Veamos dos ejemplos (siempre partiendo del símbolo inicial S). <A>a  aa n n Esta gramática define todas las palabras de la forma a b .  y  son cadenas de terminales y no terminales. <ENUNCIADO>  <SUJETO> <PREDICADO> 2. recursivas) Incluyen todas las gramáticas formales. el balón compró el hombre. <B>b  bb 6. Entre paréntesis se indica la regla de producción utilizada.5. Generan todos los lenguajes que pueden ser reconocidos por una máquina de Turing. <FORMA NOMINAL>  <ARTICULO> <NOMBRE> 4. <DIGITO>  | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 Tipos de gramáticas  Gramáticas Tipo 0 (sin restricciones.  Gramáticas Tipo 1 (dependientes de contexto) Generan los lenguajes dependientes de contexto. <A>b  ab 7. Contienen reglas de producción de la forma:  A     A es un no terminal .  Ejemplo 3 : Reglas de producción: 1. <VERBO>  tomó | compró  <ENUNCIADO>  <SUJETO> <PREDICADO> <SUJETO> <PREDICADO>  <FORMA NOMINAL> <PREDICADO> <FORMA NOMINAL> <PREDICADO>  <ARTICULO> <NOMBRE><PREDICADO> <ARTICULO> <NOMBRE><PREDICADO>  el <NOMBRE><PREDICADO> el <NOMBRE><PREDICADO>  el hombre <PREDICADO> el hombre <PREDICADO>  el hombre <VERBO> <FORMA NOMINAL> el hombre <VERBO> <FORMA NOMINAL>  el hombre tomó <FORMA NOMINAL> el hombre tomó <FORMA NOMINAL>  el hombre tomó <ARTICULO> <NOMBRE> el hombre tomó <ARTICULO> <NOMBRE>  el hombre tomó el <NOMBRE> el hombre tomó el <NOMBRE>  el hombre tomó el libro el hombre tomó el libro pertenecería por tanto al lenguaje generado por esta gramática. <SECUENCIA>  <DIGITO> | <DIGITO><SECUENCIA> 4. así como otros enunciados : el libro compró el balón.

las proposiciones. Importante!! : Todo lenguaje de tipo 3 es de tipo 2. k = 2.(es decir. -3- . k = 1. Las reglas se restringen a un único no terminal en la parte izquierda y una parte derecha compuesta por un único terminal que puede estar seguido o no de un único no terminal. regulares α β y γ son cadenas de terminales y no terminales. Están definidas por reglas de la forma: A A es un no terminal  es una cadena de terminales y no terminales. número. libre de contexto) Generan los lenguajes libres de contexto. la estructura de un programa) Estos lenguajes son todos los lenguajes que pueden ser reconocidos por los autómatas de pila. k = 3] cuando existe una gramática de tipo k que genera ese lenguaje. Se dice que un lenguaje es de tipo k [k = 0. cadenas y otros símbolos básicos del lenguaje. las expresiones. Para clasificar una gramática hemos de analizar una a una todas sus reglas de producción obteniendo el tipo de cada una de ellas. (autómatas lineales acotados)  Gramáticas Tipo 2 (independientes de contexto. Estos lenguajes son todos los lenguajes que pueden ser reconocidos por una máquina de Turing no determinista.  Gramáticas Tipo 3 (gramáticas regulares) Generan los lenguajes regulares. Los lenguajes regulares se utilizan para definir estructura léxica de los lenguajes de programación. como se observa. todo lenguaje de tipo 2 es de tipo 1. etc. Definen la sintaxis de las declaraciones. porque. A puede ser sustituido por  si está acompañada de  por la izquierda y de  por la derecha.Se denominan gramáticas dependientes del contexto. normas del tipo: A a B Aa Estos lenguajes son los que pueden ser decididos por un autómata finito (regular). Gramática Tipo-0 Tipo-1 Tipo-2 Tipo-3 Lenguaje Recursivas Dependiente de contexto Independiente de contexto Regular Reglas de Producción Sin restricciones αAβ  αγβ Aγ A> aB Aa ||  || || = 1 Si   . La clasificación de la gramática será la correspondiente al tipo de la producción de menor clasificación. relación entre || y || Solución Máquinas de Turing Autómatas lineales acotados Autómatas de pila Autómatas finitos. y todo lenguaje de tipo 1 es de tipo 0. Definen la sintaxis de los identificadores. La cadena γ no puede ser la cadena vacía. Se denominan independientes de contexto porque A puede sustituirse por  independientemente de las cadenas por las que esté acompañada. Los lenguajes independientes de contexto constituyen la base teórica para la sintaxis de la mayoría de los lenguajes de programación. Es decir.

(1998) JOSÉ ANTONIO MALPICA.html (en español) o http://www.itz.uk/littleton/jp_noamc.counterpunch. JESÚS ÁLVAREZ.edu/keith/tcl-course/topics/regexp. Tema 2 : Gramáticas.html o http://www.Todo tipo de gramática puede incluir la S -> ε.) o http://mitpress2.  Introducción a la Teoría de Autómatas.wikipedia.edu.werthmoeller. en español) -4- .edu/e-books/chomsky (completa biografía de Chomsky online ) o http://www2. Si se da este caso.mx/~lveyna/automatas/unidad2. entrevistas.htm (entrevista de 1992.com/people/nerp/automata/chomsky4.htm (entrevista después de los ataques terroristas a EEUU) o http://www.org/chomskyintv.netaxs.html o http://www.. Servicio de Publicaciones de la Universidad de Alcalá.de/Dokus/aufs/node3.com/wiki/Chomsky_hierarchy o http://www.htm (en español) o www.html  Noam Chomsky (biografía..co. entonces no puede tener una S en la parte derecha de ninguna regla.  Ejemplos: o Tipo de la regla de producción <A><B>  y  Tipo 3: No  Tipo 2: No  Tipo 1: No  Tipo 0: Sí  Regla de producción de Tipo 0 o Tipo de la regla de producción <Y>  ba  Tipo 3: No  Tipo 2: Sí  Regla de producción de Tipo 2  Tipo 1: Sí  Tipo 0: Sí Referencias:  Apuntes de Introducción a la Programación (Curso 2000/2001).csi.unam.html (entrevista después de los ataques terroristas a EEUU .mit.jornada. sobre su vida y los acontecimientos políticos del siglo) o http://www.uchicago.mx/2001/sep01/010915/006n1mun.prestel. Información en Internet:  Jerarquía de Gramáticas y Lenguajes: o http://www.es/~sande/talf/talf.lib.ull.