SlideShare ist ein Scribd-Unternehmen logo
1 von 3
Tipos de Lenguaje Formal
Zaraos Vázquez Jorge Alejandro
aleh.kz@hotmail.com
Resumen
En este reporte se introducirá los conceptos
teóricos necesarios sobre la teoría de lenguajes
formales el conjunto finito o infinito de cadenas finitas
de símbolos primitivos formadas por un alfabeto y una
gramática especificada, así como los diferentes tipos
de las jerarquías gramaticales regulares,
recursivamente enumerables, independiente y
dependiente del contexto estos divididos en jerarquías.
1. Cuerpo
1.1. Definiciones previas
El lenguaje L(G) generado por una gramática G es
el conjunto de todas las sentencias que puede generar
G. Es decir expresado formalmente.
L(G) = {η ϵ VT*/S → η}
Una sentencia pertenece a L(G) si:
-está compuesta de símbolos terminales.
-la sentencia puede derivarse del símbolo inicial S
aplicando las reglas de producción de la gramática. [1]
1.1.1. Propiedad. Dos gramáticas son equivalentes si
ambas generan el mismo lenguaje.
y son equivalentes si L( )= L( )
1.1.2. Alfabeto. Conjunto finito de símbolos, no vacio.
Para definir que un símbolo a pertenece a un alfabeto V
se utiliza notación a ϵ V. Los alfabetos se definen por
enumeración de los símbolos que contienen. Así como
por ejemplo:
= {A, B, C, D, E, F,…, X, Y, Z}
= {a, b c, d, 0, 1, 2, *, #, +}
= {if, then, end, a, b, =, >} [4]
1.1.3. Gramática. Conjunto finito de reglas para
formar cadenas finitas juntando símbolos del alfabeto,
es una cuádrupla G = (NT, T, S, P).
NT = {conjunto finito de símbolos no terminales}
T = {conjunto finito de símbolos terminales}
S = {es el símbolo inicial y pertenece a NT}
P = {conjunto de producciones o reglas de derivación}
1.2. Jerarquía de las gramáticas
Es una clasificación jerárquica de distintos tipos
de gramáticas formales que generan lenguajes
formales. Hay 4 distintos tipos de gramáticas en
función de la forma de las derivaciones de P. [2]
1.2.1. Gramática de tipo 0. Llamada también
gramática no restringida o recursivamente enumerable,
es un lenguaje formal para el cual existe una máquina
de Turing que acepta y se detiene con
cualquier cadena del lenguaje, pero que puede parar y
rechazar, o bien iterar indefinidamente, con una cadena
que no pertenece al lenguaje, en contraposición a
los lenguajes recursivos en cuyo caso se requiere que la
máquina de Turing pare en todos los casos. Las reglas
de derivación son de la forma: α → β
Siendo α ϵ (NT ∪ T y β ϵ (NT ∪ T)*, es decir la
única restricción es que no puede haber reglas de la
forma
ƛ → β donde ƛ es la cadena vacía. [6]
Los lenguajes recursivamente enumerables son
cerrados con las siguientes operaciones. Esto es, si L y
P son dos lenguajes recursivamente enumerables,
entonces los siguientes lenguajes son recursivamente
enumerables también: [3]
Cierre estrella L* de L, concatenación LP de L y P,
la unión L ∪ P de L y P, la intersección L ᴖ Pde L y P.
1.2.2. Gramática de tipo 1. Llamada gramática
sensible al contexto es equivalente a una máquina de
Turing no determinista linealmente acotada, también
llamado Autómata linealmente acotado. Se trata de
una máquina de Turing no determinista con una cinta
de sólo kn posiciones, donde n es el tamaño de la
entrada y k es la constante asociada a la máquina. Esto
significa que cada lenguaje formal que puede ser
decidido por una máquina es un lenguaje sensible al
contexto en ellas las reglas de producción son de la
forma: αAβ → αγβ
Estas gramáticas tienen reglas de la forma αAβ →
αγβ con A un no terminal y α, β y γ cadenas de
terminales y no terminales. Las cadenas α y β pueden
ser vacías, pero γ no puede serlo. La regla S → ϵ está
permitida si S no aparece en la parte derecha de
ninguna regla. Los lenguajes descritos por estas
gramáticas son exactamente todos aquellos lenguajes
reconocidos por una máquina de Turing determinista
cuya cinta de memoria está acotada por un cierto
número entero de veces sobre la longitud de entrada,
también conocidas como autómatas linealmente
acotados.[3]
Siendo A ϵ NT; α, β ϵ (NT ∪ T)* y γ ϵ (VN ∪ VT .
Estas gramáticas se llaman sensibles al contexto,
pues se pueden reemplazar A por γ siempre que estén
en el contexto α…β.
La unión, intersección, y concatenación de dos
lenguajes sensibles al contexto es un lenguaje sensible
al contexto. El complemento de un lenguaje sensible al
contexto es en sí mismo sensible al contexto.
Cada gramática libre de contexto es un lenguaje
sensible al contexto. Ejemplo: La gramática G = ({a,
b}, {A, S}, S, P) donde P son las producciones
siguientes: [2]
S → aS
S → aA
A → bA
A → b
1.2.3. Gramática de tipo 2. Llamada también de
contexto libre. Sus reglas tan solo admiten tener un
símbolo no terminal en su parte izquierda, es decir son
de la forma: A → α Siendo A ϵ NT y α ϵ (NT ∪ T .
Si cada regla se representa como un par ordenado
(A, α), el conjunto P es un subconjunto del conjunto
cartesiano NT x ({T ∪ NT} . La denominación
contexto libre se debe a que se puede cambiar A por α,
independientemente del contexto que aparezca A. [5]
Las reglas son de la forma A → α con A un no
terminal y α una cadena de terminales y no terminales.
Estos lenguajes son aquellos que pueden ser
reconocidos por un autómata con pila. [1]
El término libre de contexto se refiere al hecho de
que el no terminal A puede siempre ser sustituido por α
sin tener en cuenta el contexto en el que ocurra.
Un lenguaje formal es libre de contexto si hay una
gramática libre de contexto que lo genera.
Una de las definiciones alternativas y equivalentes
de lenguaje libre de contexto emplea autómatas no
deterministas, un lenguaje puede ser también modelado
como un conjunto de todas las secuencias de
terminales aceptadas por la gramática, la unión y
concatenación de dos lenguajes libres de contexto, el
inverso de un lenguaje libre de contexto, los lenguajes
regulares, la intersección de un lenguaje libre de
contexto y un lenguaje regular es libre de contexto, la
intersección no tiene por qué serlo, para demostrar que
un lenguaje dado no es libre de contexto, se puede
emplear el Lema del bombeo para lenguajes libres de
contexto. Ejemplo: La gramática G = ({S, A, B}, {a,
b}, S, P,) cuyas producciones P serán las siguientes:[4]
S → aB A → bAA
S → bA B → b
A → a B → bS
A → aS B → aBB
1.2.4. Gramática de tipo 3. Las gramáticas de tipo 3
también denominadas regulares o gramáticas lineales.
Estas gramáticas se restringen a aquellas reglas que
tienen en la parte izquierda un no terminal, y en la
parte derecha un solo terminal, posiblemente seguido
de un no terminal. La regla S → ϵ también está
permitida si S no aparece en la parte derecha de
ninguna regla. Estos lenguajes son aquellos que pueden
ser aceptados por un autómata finito. También esta
familia de lenguajes pueden ser obtenidas por medio
de expresiones regulares, es decir de la forma:
A → aB
A → a
Donde A, B ϵ NT y α ϵ T. Satisface las siguientes
propiedades, los lenguajes más sencillos que se
considerarán son los lenguajes regulares, es decir, los
que se pueden generar a partir de los lenguajes básicos,
con la aplicación de las operaciones de unión,
concatenación y * de Kleene un número finito de
veces. [5]
Puede ser reconocido por un autómata finito
determinista, un autómata finito no determinista,
un autómata de pila, un autómata finito alterno,
una máquina de Turing de solo lectura. Es generado
por, una gramática regular, una gramática de prefijos.
Es descrito por una expresión regular. [6]
Los lenguajes regulares son cerrados con las
siguientes operaciones, de modo que si L y P son
lenguajes regulares los siguientes lenguajes también
serán regulares: El complemento “L” de L, la clausura
o estrella de Kleene L*
de L, el homomorfismo φ(L)
de L, la concatenación L'P de L y P, la
unión L ∪ P de L y P, la intersección L ∩ P de L y P, y
la diferencia L  P de L y P, el reverso LR
de L.
Ejemplo: La gramática G=({a, b}, {A, S}, S, P) donde
P son las producciones que se muestran a continuación.
S → aS
S → aA
S → bA
S → b
1.2.5. Relación de inclusión. Se denomina lenguaje
tipo 0 al generado por una gramática de tipo 0. De la
misma forma, se denomina lenguajes de tipo 1, 2 y 3, a
los generados por las gramáticas de tipo 1, 2 y 3,
respectivamente. [3]
Si los lenguajes generados por los distintos tipos de
gramáticas se relacionan entre sí con respecto a la
relación de inclusión se obtiene: [1]
{L( )} ⊂ {L( )} ⊂ {L( )} ⊂ {L( )}
Figura 1. Relación de inclusión entre los distintos tipos
de gramáticas.
2. Conclusión
Los cuatro tipos de gramáticas estudiados
anteriormente (tipo 0, tipo 1, tipo 2, y tipo 3), cada una
de ellas tiene restricciones más fuertes que las
anteriores. Las gramáticas de tipo 0, contienen a todas
las demás. Las de tipo 1 contienen alas de tipo 2 y tipo
3, y por último las de tipo 2 contienen alas de tipo 3, es
decir, una gramática de tipo 3 es de tipo 2, tipo 1 y 0.
Por lo tanto se define una jerarquía de gramáticas
respecto de la relación de inclusión de ahí el nombre de
jerarquías.
Tomando como referencia un lenguaje formal, la
gramática de tipo 3 que es la que es incluida en cada
tipo es el lenguaje más simple dentro de la jerarquía,
esta se suele expresar en diferentes formas como las
expresiones regulares. Todo lenguaje formal finito
constituye a un regular, las gramáticas regulares sólo
pueden generar a los lenguajes regulares de manera
similar a los autómatas finitos y las expresiones
regulares, son las gramáticas más restrictivas el lado
derecho de una producción debe contener un símbolo
terminal y, como máximo, un símbolo no terminal
Un ejemplo de estas son todas las cadenas sobre el
alfabeto {a, b} que contienen un número par de a o el
lenguaje que consiste en varias a seguidas de varias b.
Referencias
[1] Aho A.V. y Ullman J.D., 1973 The Theory of Parsing,
Translation and Com-pilin, Vol. II: Compiling, Prentice-Hall.
[2] Juan Manuel cueva Lovelle, lenguajes gramáticas y
autómatas, Universidad de Oviedo (España), 2 Edición,
Noviembre 2011.
[3] Alfonseca M., Sancho J. y Martínez Orga M., 1987,
Teoría de lenguajes gramáticas y autómatas, Ediciones
Universidad y Cultura.
[4] Chomsky N., 1962, Context-free grammars and
pushdown storage. Quarterly Prog. Rept. No. 65, pp. 187-
194, MIT REs. Lab. Elect., Cambridge, Mass.
[5] Joaquín Aranda, Natividad Duro, José Luis Fernández,
José Jiménez, Fernando Morilla, "Fundamentos de Lógica
Matemática y Computación", Sanz y Torres, 2006.
[6] Sipser, M. (1996), Introduction to the Theory of
Computation, PWS Publishing Co.

Weitere ähnliche Inhalte

Was ist angesagt?

Automatas-Lenguajes1-1 (1).pdf
Automatas-Lenguajes1-1 (1).pdfAutomatas-Lenguajes1-1 (1).pdf
Automatas-Lenguajes1-1 (1).pdf
RamosDiez
 
Lenguajes regulares
Lenguajes regularesLenguajes regulares
Lenguajes regulares
Kenia Adams
 
Autómatas de Pila
Autómatas de PilaAutómatas de Pila
Autómatas de Pila
Pablo Guerra
 
Tipos de datos en programacion
Tipos de datos en programacionTipos de datos en programacion
Tipos de datos en programacion
Alfonso
 
Autómatas Finitos Deterministas y Lenguajes Formales
Autómatas Finitos Deterministas y Lenguajes FormalesAutómatas Finitos Deterministas y Lenguajes Formales
Autómatas Finitos Deterministas y Lenguajes Formales
Sandy Rafael Garcia
 
Ejercicios con Lenguajes Formales
Ejercicios con Lenguajes FormalesEjercicios con Lenguajes Formales
Ejercicios con Lenguajes Formales
vmtorrealba
 

Was ist angesagt? (20)

Automatas-Lenguajes1-1 (1).pdf
Automatas-Lenguajes1-1 (1).pdfAutomatas-Lenguajes1-1 (1).pdf
Automatas-Lenguajes1-1 (1).pdf
 
Teoria de automatas
Teoria de automatasTeoria de automatas
Teoria de automatas
 
Expresiones regulares y gramaticas
Expresiones regulares y gramaticasExpresiones regulares y gramaticas
Expresiones regulares y gramaticas
 
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
 
Lenguajes Regulares y Autómatas Finitos - Clase 6
Lenguajes Regulares y Autómatas Finitos - Clase 6Lenguajes Regulares y Autómatas Finitos - Clase 6
Lenguajes Regulares y Autómatas Finitos - Clase 6
 
Gramáticas dependiente del contexto
Gramáticas dependiente del contextoGramáticas dependiente del contexto
Gramáticas dependiente del contexto
 
Gramaticas
GramaticasGramaticas
Gramaticas
 
Lenguajes regulares
Lenguajes regularesLenguajes regulares
Lenguajes regulares
 
Gramática Libre de Contexto
Gramática Libre de ContextoGramática Libre de Contexto
Gramática Libre de Contexto
 
Unidad 6
Unidad 6Unidad 6
Unidad 6
 
Flat unit 3
Flat unit 3Flat unit 3
Flat unit 3
 
Autómatas de Pila
Autómatas de PilaAutómatas de Pila
Autómatas de Pila
 
Fundamentos de Programación - Unidad V: Modularidad
Fundamentos de Programación - Unidad V: ModularidadFundamentos de Programación - Unidad V: Modularidad
Fundamentos de Programación - Unidad V: Modularidad
 
Ejercicios
EjerciciosEjercicios
Ejercicios
 
Tipos de datos en programacion
Tipos de datos en programacionTipos de datos en programacion
Tipos de datos en programacion
 
Lecture 5
Lecture 5Lecture 5
Lecture 5
 
Tipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionTipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacion
 
Autómatas Finitos Deterministas y Lenguajes Formales
Autómatas Finitos Deterministas y Lenguajes FormalesAutómatas Finitos Deterministas y Lenguajes Formales
Autómatas Finitos Deterministas y Lenguajes Formales
 
Grafo bipartito
Grafo bipartitoGrafo bipartito
Grafo bipartito
 
Ejercicios con Lenguajes Formales
Ejercicios con Lenguajes FormalesEjercicios con Lenguajes Formales
Ejercicios con Lenguajes Formales
 

Andere mochten auch

GRAMÁTICA GENERATIVA - NOAM CHOMSKY
GRAMÁTICA GENERATIVA - NOAM CHOMSKYGRAMÁTICA GENERATIVA - NOAM CHOMSKY
GRAMÁTICA GENERATIVA - NOAM CHOMSKY
KATHY VILAFAÑE
 
Lengua formal e informal
Lengua formal e informalLengua formal e informal
Lengua formal e informal
aeropagita
 
Herramientas web ventajas desventajas
Herramientas web ventajas desventajasHerramientas web ventajas desventajas
Herramientas web ventajas desventajas
Tefy Pineda
 
Automatas y compiladores clase3
Automatas y compiladores clase3Automatas y compiladores clase3
Automatas y compiladores clase3
Germania Rodriguez
 
Metáforas y símbolos
Metáforas y símbolosMetáforas y símbolos
Metáforas y símbolos
josetomas1
 
Estilos de habla
Estilos de hablaEstilos de habla
Estilos de habla
UTCH
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
Juanchi Novas
 

Andere mochten auch (20)

Que son los simbolos
Que son los simbolosQue son los simbolos
Que son los simbolos
 
Gramática y autómatas
Gramática y autómatasGramática y autómatas
Gramática y autómatas
 
Gramatica libre de contexto
Gramatica libre de contextoGramatica libre de contexto
Gramatica libre de contexto
 
Gramáticas formales
Gramáticas formales Gramáticas formales
Gramáticas formales
 
Chomsky y la gramatica generativa
Chomsky y la gramatica generativaChomsky y la gramatica generativa
Chomsky y la gramatica generativa
 
GRAMÁTICA GENERATIVA - NOAM CHOMSKY
GRAMÁTICA GENERATIVA - NOAM CHOMSKYGRAMÁTICA GENERATIVA - NOAM CHOMSKY
GRAMÁTICA GENERATIVA - NOAM CHOMSKY
 
Lengua formal e informal
Lengua formal e informalLengua formal e informal
Lengua formal e informal
 
T37 isc zaraos vazquez jorge alejandro
T37 isc zaraos vazquez jorge alejandroT37 isc zaraos vazquez jorge alejandro
T37 isc zaraos vazquez jorge alejandro
 
Sistemas gestoresdebasededatos
Sistemas gestoresdebasededatosSistemas gestoresdebasededatos
Sistemas gestoresdebasededatos
 
Gramáticas y Modelos Matemáticos - Clase 3
Gramáticas y Modelos Matemáticos - Clase 3Gramáticas y Modelos Matemáticos - Clase 3
Gramáticas y Modelos Matemáticos - Clase 3
 
Biñetas
BiñetasBiñetas
Biñetas
 
Herramientas web ventajas desventajas
Herramientas web ventajas desventajasHerramientas web ventajas desventajas
Herramientas web ventajas desventajas
 
MySql Historia, Ventajas, Importancia
MySql Historia, Ventajas, ImportanciaMySql Historia, Ventajas, Importancia
MySql Historia, Ventajas, Importancia
 
Phpmyadmin
PhpmyadminPhpmyadmin
Phpmyadmin
 
Automatas y compiladores clase3
Automatas y compiladores clase3Automatas y compiladores clase3
Automatas y compiladores clase3
 
Metáforas y símbolos
Metáforas y símbolosMetáforas y símbolos
Metáforas y símbolos
 
Estilos de habla
Estilos de hablaEstilos de habla
Estilos de habla
 
el lenguaje. teoria de chomsky
el lenguaje. teoria de chomsky el lenguaje. teoria de chomsky
el lenguaje. teoria de chomsky
 
Gramática generativa
Gramática generativaGramática generativa
Gramática generativa
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
 

Ähnlich wie Tipos de lenguaje formal según Chomsky

Gramática de contexto libre abel rodriguez (08 1297)
Gramática de contexto libre abel rodriguez (08 1297)Gramática de contexto libre abel rodriguez (08 1297)
Gramática de contexto libre abel rodriguez (08 1297)
abelrod12
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
Santiago Ramirez
 
Gramatica
GramaticaGramatica
Gramatica
sdarky
 
Expresiones regularesfinal
Expresiones regularesfinalExpresiones regularesfinal
Expresiones regularesfinal
Noel Gutierrez
 
Lenguajes libre de contexto
Lenguajes libre de contextoLenguajes libre de contexto
Lenguajes libre de contexto
Verónica Es'Loo
 
Analizador LÉxico
Analizador LÉxicoAnalizador LÉxico
Analizador LÉxico
FARIDROJAS
 
Unidad temática iv
Unidad temática ivUnidad temática iv
Unidad temática iv
JackieHee27
 

Ähnlich wie Tipos de lenguaje formal según Chomsky (20)

Presentacion automata grupo 1 unibe 02-02-2018
Presentacion automata grupo 1   unibe 02-02-2018Presentacion automata grupo 1   unibe 02-02-2018
Presentacion automata grupo 1 unibe 02-02-2018
 
Lenguajes y Grmaticas.pdf
Lenguajes y Grmaticas.pdfLenguajes y Grmaticas.pdf
Lenguajes y Grmaticas.pdf
 
Gramática de contexto libre abel rodriguez (08 1297)
Gramática de contexto libre abel rodriguez (08 1297)Gramática de contexto libre abel rodriguez (08 1297)
Gramática de contexto libre abel rodriguez (08 1297)
 
GRAMATICA LIBRE DE CONTEXTO.ppt
GRAMATICA LIBRE DE CONTEXTO.pptGRAMATICA LIBRE DE CONTEXTO.ppt
GRAMATICA LIBRE DE CONTEXTO.ppt
 
Investigación Expositiva
Investigación ExpositivaInvestigación Expositiva
Investigación Expositiva
 
Exposición de compiladores e intérpretes - Profesor: Eddie Malca
Exposición de compiladores e intérpretes - Profesor: Eddie MalcaExposición de compiladores e intérpretes - Profesor: Eddie Malca
Exposición de compiladores e intérpretes - Profesor: Eddie Malca
 
SIMBOLOS PARA REALIZAR DERIVACIONES.pdf
SIMBOLOS PARA REALIZAR DERIVACIONES.pdfSIMBOLOS PARA REALIZAR DERIVACIONES.pdf
SIMBOLOS PARA REALIZAR DERIVACIONES.pdf
 
gramatica-libre-de-contexto.ppt
gramatica-libre-de-contexto.pptgramatica-libre-de-contexto.ppt
gramatica-libre-de-contexto.ppt
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
 
Gramatica
GramaticaGramatica
Gramatica
 
Expresiones regularesfinal
Expresiones regularesfinalExpresiones regularesfinal
Expresiones regularesfinal
 
Lenguajes formales y teoría de autómatas I.pdf
Lenguajes formales y teoría de autómatas I.pdfLenguajes formales y teoría de autómatas I.pdf
Lenguajes formales y teoría de autómatas I.pdf
 
Lenguajes libre de contexto
Lenguajes libre de contextoLenguajes libre de contexto
Lenguajes libre de contexto
 
Típos de grámatica y más, exposición de compiladores e intérpretes
Típos de grámatica y más, exposición de compiladores e intérpretesTípos de grámatica y más, exposición de compiladores e intérpretes
Típos de grámatica y más, exposición de compiladores e intérpretes
 
Teoría de autómatas
Teoría de autómatasTeoría de autómatas
Teoría de autómatas
 
ESPRESIONES REGULARES
ESPRESIONES REGULARESESPRESIONES REGULARES
ESPRESIONES REGULARES
 
Analizador LÉxico
Analizador LÉxicoAnalizador LÉxico
Analizador LÉxico
 
Unidad temática iv
Unidad temática ivUnidad temática iv
Unidad temática iv
 
S03.s1 - Material.pdf
S03.s1 - Material.pdfS03.s1 - Material.pdf
S03.s1 - Material.pdf
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
 

Mehr von Alejandro Zaraos Vázquez (6)

Ieee formato
Ieee formatoIeee formato
Ieee formato
 
Formato ieee
Formato ieee Formato ieee
Formato ieee
 
Practica Bases de datos
Practica Bases de datosPractica Bases de datos
Practica Bases de datos
 
Sistema competencias con el Stellaris
Sistema competencias con el StellarisSistema competencias con el Stellaris
Sistema competencias con el Stellaris
 
Comunicación Serial Asíncrona con el Stellaris
Comunicación Serial Asíncrona con el Stellaris Comunicación Serial Asíncrona con el Stellaris
Comunicación Serial Asíncrona con el Stellaris
 
Stellaris usando ENERGIA
Stellaris usando ENERGIAStellaris usando ENERGIA
Stellaris usando ENERGIA
 

Tipos de lenguaje formal según Chomsky

  • 1. Tipos de Lenguaje Formal Zaraos Vázquez Jorge Alejandro aleh.kz@hotmail.com Resumen En este reporte se introducirá los conceptos teóricos necesarios sobre la teoría de lenguajes formales el conjunto finito o infinito de cadenas finitas de símbolos primitivos formadas por un alfabeto y una gramática especificada, así como los diferentes tipos de las jerarquías gramaticales regulares, recursivamente enumerables, independiente y dependiente del contexto estos divididos en jerarquías. 1. Cuerpo 1.1. Definiciones previas El lenguaje L(G) generado por una gramática G es el conjunto de todas las sentencias que puede generar G. Es decir expresado formalmente. L(G) = {η ϵ VT*/S → η} Una sentencia pertenece a L(G) si: -está compuesta de símbolos terminales. -la sentencia puede derivarse del símbolo inicial S aplicando las reglas de producción de la gramática. [1] 1.1.1. Propiedad. Dos gramáticas son equivalentes si ambas generan el mismo lenguaje. y son equivalentes si L( )= L( ) 1.1.2. Alfabeto. Conjunto finito de símbolos, no vacio. Para definir que un símbolo a pertenece a un alfabeto V se utiliza notación a ϵ V. Los alfabetos se definen por enumeración de los símbolos que contienen. Así como por ejemplo: = {A, B, C, D, E, F,…, X, Y, Z} = {a, b c, d, 0, 1, 2, *, #, +} = {if, then, end, a, b, =, >} [4] 1.1.3. Gramática. Conjunto finito de reglas para formar cadenas finitas juntando símbolos del alfabeto, es una cuádrupla G = (NT, T, S, P). NT = {conjunto finito de símbolos no terminales} T = {conjunto finito de símbolos terminales} S = {es el símbolo inicial y pertenece a NT} P = {conjunto de producciones o reglas de derivación} 1.2. Jerarquía de las gramáticas Es una clasificación jerárquica de distintos tipos de gramáticas formales que generan lenguajes formales. Hay 4 distintos tipos de gramáticas en función de la forma de las derivaciones de P. [2] 1.2.1. Gramática de tipo 0. Llamada también gramática no restringida o recursivamente enumerable, es un lenguaje formal para el cual existe una máquina de Turing que acepta y se detiene con cualquier cadena del lenguaje, pero que puede parar y rechazar, o bien iterar indefinidamente, con una cadena que no pertenece al lenguaje, en contraposición a los lenguajes recursivos en cuyo caso se requiere que la máquina de Turing pare en todos los casos. Las reglas de derivación son de la forma: α → β Siendo α ϵ (NT ∪ T y β ϵ (NT ∪ T)*, es decir la única restricción es que no puede haber reglas de la forma ƛ → β donde ƛ es la cadena vacía. [6] Los lenguajes recursivamente enumerables son cerrados con las siguientes operaciones. Esto es, si L y P son dos lenguajes recursivamente enumerables, entonces los siguientes lenguajes son recursivamente enumerables también: [3] Cierre estrella L* de L, concatenación LP de L y P, la unión L ∪ P de L y P, la intersección L ᴖ Pde L y P.
  • 2. 1.2.2. Gramática de tipo 1. Llamada gramática sensible al contexto es equivalente a una máquina de Turing no determinista linealmente acotada, también llamado Autómata linealmente acotado. Se trata de una máquina de Turing no determinista con una cinta de sólo kn posiciones, donde n es el tamaño de la entrada y k es la constante asociada a la máquina. Esto significa que cada lenguaje formal que puede ser decidido por una máquina es un lenguaje sensible al contexto en ellas las reglas de producción son de la forma: αAβ → αγβ Estas gramáticas tienen reglas de la forma αAβ → αγβ con A un no terminal y α, β y γ cadenas de terminales y no terminales. Las cadenas α y β pueden ser vacías, pero γ no puede serlo. La regla S → ϵ está permitida si S no aparece en la parte derecha de ninguna regla. Los lenguajes descritos por estas gramáticas son exactamente todos aquellos lenguajes reconocidos por una máquina de Turing determinista cuya cinta de memoria está acotada por un cierto número entero de veces sobre la longitud de entrada, también conocidas como autómatas linealmente acotados.[3] Siendo A ϵ NT; α, β ϵ (NT ∪ T)* y γ ϵ (VN ∪ VT . Estas gramáticas se llaman sensibles al contexto, pues se pueden reemplazar A por γ siempre que estén en el contexto α…β. La unión, intersección, y concatenación de dos lenguajes sensibles al contexto es un lenguaje sensible al contexto. El complemento de un lenguaje sensible al contexto es en sí mismo sensible al contexto. Cada gramática libre de contexto es un lenguaje sensible al contexto. Ejemplo: La gramática G = ({a, b}, {A, S}, S, P) donde P son las producciones siguientes: [2] S → aS S → aA A → bA A → b 1.2.3. Gramática de tipo 2. Llamada también de contexto libre. Sus reglas tan solo admiten tener un símbolo no terminal en su parte izquierda, es decir son de la forma: A → α Siendo A ϵ NT y α ϵ (NT ∪ T . Si cada regla se representa como un par ordenado (A, α), el conjunto P es un subconjunto del conjunto cartesiano NT x ({T ∪ NT} . La denominación contexto libre se debe a que se puede cambiar A por α, independientemente del contexto que aparezca A. [5] Las reglas son de la forma A → α con A un no terminal y α una cadena de terminales y no terminales. Estos lenguajes son aquellos que pueden ser reconocidos por un autómata con pila. [1] El término libre de contexto se refiere al hecho de que el no terminal A puede siempre ser sustituido por α sin tener en cuenta el contexto en el que ocurra. Un lenguaje formal es libre de contexto si hay una gramática libre de contexto que lo genera. Una de las definiciones alternativas y equivalentes de lenguaje libre de contexto emplea autómatas no deterministas, un lenguaje puede ser también modelado como un conjunto de todas las secuencias de terminales aceptadas por la gramática, la unión y concatenación de dos lenguajes libres de contexto, el inverso de un lenguaje libre de contexto, los lenguajes regulares, la intersección de un lenguaje libre de contexto y un lenguaje regular es libre de contexto, la intersección no tiene por qué serlo, para demostrar que un lenguaje dado no es libre de contexto, se puede emplear el Lema del bombeo para lenguajes libres de contexto. Ejemplo: La gramática G = ({S, A, B}, {a, b}, S, P,) cuyas producciones P serán las siguientes:[4] S → aB A → bAA S → bA B → b A → a B → bS A → aS B → aBB 1.2.4. Gramática de tipo 3. Las gramáticas de tipo 3 también denominadas regulares o gramáticas lineales. Estas gramáticas se restringen a aquellas reglas que tienen en la parte izquierda un no terminal, y en la parte derecha un solo terminal, posiblemente seguido de un no terminal. La regla S → ϵ también está permitida si S no aparece en la parte derecha de ninguna regla. Estos lenguajes son aquellos que pueden ser aceptados por un autómata finito. También esta familia de lenguajes pueden ser obtenidas por medio de expresiones regulares, es decir de la forma: A → aB A → a Donde A, B ϵ NT y α ϵ T. Satisface las siguientes propiedades, los lenguajes más sencillos que se considerarán son los lenguajes regulares, es decir, los que se pueden generar a partir de los lenguajes básicos, con la aplicación de las operaciones de unión, concatenación y * de Kleene un número finito de veces. [5]
  • 3. Puede ser reconocido por un autómata finito determinista, un autómata finito no determinista, un autómata de pila, un autómata finito alterno, una máquina de Turing de solo lectura. Es generado por, una gramática regular, una gramática de prefijos. Es descrito por una expresión regular. [6] Los lenguajes regulares son cerrados con las siguientes operaciones, de modo que si L y P son lenguajes regulares los siguientes lenguajes también serán regulares: El complemento “L” de L, la clausura o estrella de Kleene L* de L, el homomorfismo φ(L) de L, la concatenación L'P de L y P, la unión L ∪ P de L y P, la intersección L ∩ P de L y P, y la diferencia L P de L y P, el reverso LR de L. Ejemplo: La gramática G=({a, b}, {A, S}, S, P) donde P son las producciones que se muestran a continuación. S → aS S → aA S → bA S → b 1.2.5. Relación de inclusión. Se denomina lenguaje tipo 0 al generado por una gramática de tipo 0. De la misma forma, se denomina lenguajes de tipo 1, 2 y 3, a los generados por las gramáticas de tipo 1, 2 y 3, respectivamente. [3] Si los lenguajes generados por los distintos tipos de gramáticas se relacionan entre sí con respecto a la relación de inclusión se obtiene: [1] {L( )} ⊂ {L( )} ⊂ {L( )} ⊂ {L( )} Figura 1. Relación de inclusión entre los distintos tipos de gramáticas. 2. Conclusión Los cuatro tipos de gramáticas estudiados anteriormente (tipo 0, tipo 1, tipo 2, y tipo 3), cada una de ellas tiene restricciones más fuertes que las anteriores. Las gramáticas de tipo 0, contienen a todas las demás. Las de tipo 1 contienen alas de tipo 2 y tipo 3, y por último las de tipo 2 contienen alas de tipo 3, es decir, una gramática de tipo 3 es de tipo 2, tipo 1 y 0. Por lo tanto se define una jerarquía de gramáticas respecto de la relación de inclusión de ahí el nombre de jerarquías. Tomando como referencia un lenguaje formal, la gramática de tipo 3 que es la que es incluida en cada tipo es el lenguaje más simple dentro de la jerarquía, esta se suele expresar en diferentes formas como las expresiones regulares. Todo lenguaje formal finito constituye a un regular, las gramáticas regulares sólo pueden generar a los lenguajes regulares de manera similar a los autómatas finitos y las expresiones regulares, son las gramáticas más restrictivas el lado derecho de una producción debe contener un símbolo terminal y, como máximo, un símbolo no terminal Un ejemplo de estas son todas las cadenas sobre el alfabeto {a, b} que contienen un número par de a o el lenguaje que consiste en varias a seguidas de varias b. Referencias [1] Aho A.V. y Ullman J.D., 1973 The Theory of Parsing, Translation and Com-pilin, Vol. II: Compiling, Prentice-Hall. [2] Juan Manuel cueva Lovelle, lenguajes gramáticas y autómatas, Universidad de Oviedo (España), 2 Edición, Noviembre 2011. [3] Alfonseca M., Sancho J. y Martínez Orga M., 1987, Teoría de lenguajes gramáticas y autómatas, Ediciones Universidad y Cultura. [4] Chomsky N., 1962, Context-free grammars and pushdown storage. Quarterly Prog. Rept. No. 65, pp. 187- 194, MIT REs. Lab. Elect., Cambridge, Mass. [5] Joaquín Aranda, Natividad Duro, José Luis Fernández, José Jiménez, Fernando Morilla, "Fundamentos de Lógica Matemática y Computación", Sanz y Torres, 2006. [6] Sipser, M. (1996), Introduction to the Theory of Computation, PWS Publishing Co.