Vous êtes sur la page 1sur 15

1

UNIVERSIDAD ANDINA DEL CUSCO


CARRERA PROFESIONAL DE INGENIERA DE
SISTEMAS













Docente : ING. BERNALES GUZMAN

Alumno - Cdigo : Beberly Ordua Benanvente
Shaney Paola Sequeiros Ccama
Daniela Palomino Sysoeva
Karen Madelein Marocho Capa


Asignatura : MATEMTICA DISCRETA


LENGUAJE FORMAL Y LENGUAJE INFORMAL

2





ndice


1. Qu es el lenguaje?
2. Definicin de lenguaje natural
2.1. Procesamiento del Lenguaje Natural(PLN)
2.2. Aplicaciones del PLN
2.3. Niveles del Lenguaje
2.4. Arquitectura de un sistema de PLN
2.5. El problema de la Ambiged
2.6. El PLN en los Sistemas Multimedia y Expertos: Tutores
Inteligentes(TI)
3. Definicin de gramticas formales
3.1 Clasificacin de gramtica de lenguajes formales
4. Bibliografa






3



Presentacin

El presente trabajo es un tema muy interesante que ayuda a desarrollar nuestros
conocimiento para el futuro de nuestra carrera el tema tratado es sobre lenguajes
naturales y lenguajes formales.
Un lenguaje es la funcin que expresa pensamientos y comunicaciones entre la
gente, por lo tanto lenguaje formal es un lenguaje cuyos smbolos primitivos y
reglas para unir esos smbolos estn formalmente especificados.Al conjunto de los
smbolos primitivos se le llama el alfabeto (o vocabulario) del lenguaje, y al
conjunto de las reglas se lo llama la gramtica formal (o sintaxis). A una cadena de
smbolos formada de acuerdo a la gramtica se la llama una frmula bien formada
(o palabra) del lenguaje. Estrictamente hablando, un lenguaje formal es idntico al
conjunto de todas sus frmulas bien formadas. A diferencia de lo que ocurre con el
alfabeto (que debe ser un conjunto finito) y con cada frmula bien formada (que
debe tener una longitud tambin finita), un lenguaje formal puede estar compuesto
por un nmero infinito de frmulas bien formadas.
Como se ha explicado en el apartado anterior, en un lenguaje, se tiene que los
elementos ms simples, son los smbolos llamados letras que constituyen un
alfabeto ,que es un conjunto finito de smbolos {, 2,..., n}. Con la
concatenacin de las letras, formaremos palabras que determinan un conjunto *.
El conjunto de palabras que tengan un significado, constituirn el diccionario del
lenguaje (por ejemplo el
Webster, diccionario del ingls). A partir de lo anterior, tendremos que un lenguaje
se considera como un conjunto de oraciones, que usualmente es infinito y, se
forman con palabras del diccionario. En este punto, podemos distinguir entre dos
clases de lenguajes; los lenguajes naturales como el castellano o el ingls, y los
lenguajes
formales como las matemticas y la lgica.






4



Lenguaje formal y lenguaje Natural

1. Qu es el Lenguaje?
Un lenguaje se considera como un conjunto de oraciones, que usualmente es infinito y se forma
con combinaciones de palabras del diccionario. Es necesario que esas combinaciones sean
correctas (con respecto a sintaxis) y tengan sentido (con respecto a la semntica).
Un lenguaje es la funcin que expresa pensamientos y comunicaciones entre la gente. Esta
funcin es llevada a cabo por medio de seales y vocales (voz) y posiblemente por signos
escritos(escritura).
En este punto podemos distinguir entre dos clases de lenguajes: los lenguajes naturales (ingles,
alemn, espaol, etc.) y lenguajes formales (matemtico, lgico, etc.)
A continuacin damos una breve descripcin de estos dos tipos de lenguaje.
2. Definicin de lenguaje natural
Como mencionamos anteriormente el Lenguaje Natural(LN) es el medio que utilizamos de
manera cotidiana para establecer nuestra comunicacin con las dems personas
Este tipo de lenguaje es el que nos permite el designar las cosas actuales y razonar a cerca de
ellas, fue desarrollado y organizado a partir de la experiencia humana y puede ser utilizado para
analizar situaciones altamente complejas y razonar muy sutilmente. La riqueza de sus
componentes semnticos da a los lenguajes naturales su gran poder expresivo y su valor como
una herramienta para razonamiento sutil. Por otro lado la sintaxis de un LN puede ser modelada
fcilmente por un lenguaje formal, similar a los utilizados en las matemticas y la lgica. Otra
propiedad de los lenguajes naturales es la polisemantica, es decir la posibilidad de que una
palabra en una oracin tenga diversos significados.
En un primer resumen, los lenguajes naturales se caracterizan por las siguientes propiedades:
Desarrollados por enriquecimiento progresivo antes de cualquier intento de
formacin de una teora.
La importancia de su carcter expresivo debido grandemente a la riqueza del
componente semntico(polisemantica).
Dificultad o imposibilidad de una formalizacin completa.


2.1. Procesamiento del Lenguaje Natural(PLN)

5


Antes de continuar con nuestro estudio del PLN, es importante el que estudiemos el concepto de
lo que es un lenguaje de programacin y las generaciones de estos para darnos una idea de
cmo ha sido su evolucin.

Qu es un Lenguaje de Programacin?
Un lenguaje de programacin es un conjunto de normas lingsticas que permiten escribir un
programa y que ste sea entendido por el ordenador y pueda ser trasladado a ordenadores
similares para su funcionamiento en otros sistemas. Un programa es una serie de instrucciones
ordenadas correctamente que permiten realizar una tarea o trabajo especfico. Ahora bien, un
lenguaje de programacin se basa en dos elementos muy importantes:
Sintaxis: que se refiere a la utilizacin correcta de cada una de las sentencias de cierto
lenguaje de programacin.

Semntica: se encarga de que cada "oracin" del lenguaje de programacin utilizado
tenga un significado correcto.
A medida que la complejidad de los programas ha ido aumentando, se han requerido de nuevos
lenguajes para poder describir esos problemas y que sean resueltos por el ordenador.
Generaciones de Lenguajes de Programacin
Las generaciones de los lenguajes de programacin, se han venido dando debido a que las
necesidades que plantean los problemas son cada da ms grandes y complejo, a continuacin
se hace un pequeo resumen de cada una de las generaciones de lenguajes de programacin.
a. Primera Generacin: Los lenguajes de primera generacin o tambin conocidos como
lenguajes maquina, son en los que se utiliza el cdigo binario(unos y ceros) para
comunicarse con la computadora, esta generacin de lenguajes es muy complicada, ya
que al usar pocos signos, no puede expresar cosas muy complicadas. En la actualidad
ya casi no se trabaja con lenguajes maquina, los nicos que lo hacen son los
diseadores de los "chips" de los procesadores.
b. Segunda Generacin: Los lenguajes de esta segunda generacin son conocidos
tambin como ensambladores, y se distinguen de los lenguajes maquina por su
eficiencia(en comparacin con sus antecesores). Estos lenguajes ensambladores se
basan en lo que es la comprensin de varias palabras en una sola, por ejemplo:
ADC significara "sumar con reserva"(en ingles: ADd with Carry)
Haciendo notoria la aclaracin, de que esta serie de instrucciones sern traducidas al
lenguaje maquina por el compilador del lenguaje.
c. Tercera Generacin: Los lenguajes de tercera generacin o de alto nivel son los
lenguajes ms comunes o que ms conocemos(C, Pascal, Algol, Cobol, Fortran,
BASIC). Estos lenguajes se asemejan ya un poco ms al lenguaje humano, al utilizar
palabras completas( en ingles) para la codificacin de los programas.
d. Cuarta Generacin: Son los lenguajes de "programacin asistida" por medio de
ayudantes o wizards, estos lenguajes se han diseado para facilitar la realizacion de
muy variadas tareas, como lo son la simulacin de fenmenos fsicos, manipulacin de
datos estadsticos, etc. Algunos de estos lenguajes son: Visual Basic, INFORMIX 4GL,
6


Visual J++, Visual C, he inclusive algunos autores consideran las planillas de calculo
dentro de esta generacin.
e. Quinta Generacin: En esta generacin, el programador solo ingresa hechos y hace
consultas, no se preocupa de cmo hacer los algoritmos que entregan la respuesta,
algunos autores hasta hace poco todava consideraban a esta generacin como un
sueo, pero gracias al avance de la tecnologa, hoy en da es toda una realidad, como lo
veremos a continuacin.
Ahora que ya hemos hecho un breve anlisis de los lenguajes de programacin, continuaremos
con el anlisis del PLN.
Antes de continuar con nuestro estudio, es necesario definir claramente lo que es el PLN, el PLN
es la utilizacin de un lenguaje natural para comunicarnos con la computadora, debiendo esta
entender las oraciones que le sean proporcionadas, el uso de estos lenguajes naturales, facilita
el desarrollo de programas que realicen tareas relacionadas con el lenguaje o bien, desarrollar
modelos que ayuden a comprender los mecanismos humanos relacionados con el lenguaje.
El grupo de investigacin en Procesamiento del Lenguaje y Sistemas de Informacin nace en el
ao 1993 como iniciativa de un grupo de profesores pertenecientes al Departamento de
Lenguajes y Sistemas Informticos de la Universidad de Alicante. Sus lneas de investigacin se
encuentran enmarcadas en los siguientes temas:
El Procesamiento del Lenguaje Natural (PLN) es una parte esencial de la Inteligencia Artificial
que investiga y formula mecanismos computacionalmente efectivos que faciliten la interrelacin
hombre-maquina y permitan una comunicacin mucho ms fluida y menos rgida que los
lenguajes formales y sistemas de mens utilizados tradicionalmente.
Todo sistema de Procesamiento del Lenguaje Natural intenta simular un comportamiento
lingstico humano; para ello debe tomar conciencia tanto de las estructuras propias del
lenguaje, como de un conocimiento general acerca del universo de discurso. De esta forma, una
persona que participe en un dialogo sabe como pueden combinar las palabras para formar una
oracin, conoce los significados de las mismas, sabe cmo stas afectan el significado global de
la oracin y poseen un conocimiento del mundo en general que permite participar de la
conversacin.
As el problema principal del Lenguaje Natural se puede resumir en una palabra: Ambigedad.
El PLN tiene una serie de fases o niveles de anlisis:
Anlisis morfolgico-lexico: Transforma la secuencia de caracteres de entrada en una secuencia
de unidades significativas haciendo uso del diccionario y reglas morfolgicas.
Anlisis sintctico: Analiza la secuencia de unidades lxicas y produce una representacin de su
estructura (rbol, red, ...).
Anlisis semntico: A partir de la estructura generada por el proceso sintctico genera otra
estructura o forma lgica asociada que representa el significado o sentido de la sentencia.
Anlisis contextual o funcin pragmtica: Utiliza la forma lgica o estructura semntica de la fase
anterior para desarrollar la interpretacin final de la oracin, en funcin de las circunstancias de
contexto.
7


Para todo ello, es necesario el estudio de los formalismos lgicos que permitan dichos anlisis.
Por ello estudiamos las siguientes gramticas: Gramticas de contexto libre, Gramticas de
Clusulas Definidas (DCG), Gramticas Lgico Modulares (MLG), Gramticas Funcionales (FG),
Gramticas de Metamorfosis, Gramticas de Atributos, Gramticas de Huecos (SG), Gramticas
Discontinuas (Estticas y Restringidas).
En estos momentos disponemos de un prototipo, sistema de consultas a una base de datos
geogrfica en Lenguaje Natural (SISCO), desarrollado segn la Gramtica Lgico Modular, que
trata las oraciones simples a nivel gramatical y las oraciones coordinadas a nivel metagramatical.
En estos momentos, ante la dificultad de tratar las oraciones coordinadas a nivel gramatical con
las MLGs, estamos desarrollando y experimentando con dos sistemas que siguen los
formalismos de las Gramticas de Huecos y de las Gramticas Discontinuas Estticas y
Restringidas, para el tratamiento de problemas relacionados con la elipsis de elementos de la
oracin y de problemas de Anfora o referente pronominal. A su vez estamos analizando y
desarrollando un corpus textual de 5000 frases para el tratamiento de estos fenmenos
lingsticos.

2.2. Aplicaciones del PLN
Las aplicaciones del Procesamiento de Lenguajes Naturales son muy variadas, ya que su
alcance es muy grande, algunas de las aplicaciones del PLN son:
Traduccin automtica: se refiere ms que nada a la traduccin correcta de un lenguaje
a otro, tomando en cuenta lo que se quiere expresar en cada oracin, y no solo palabra
por palabra. Una aproximacin a este tipo de traductores es el babylon.
Recuperacin de la informacin: en esta aplicacin, un claro ejemplo seria el siguiente:
Una persona llega a la computadora y le dice(en LN) que es lo que busca, esta busca y
le dice que es lo que tiene referente al tema.
Extraccin de Informacin y Resmenes: Los nuevos programas, deben tener la
capacidad de crear un resumen de un documento basndose en los datos
proporcionados, realizando un anlisis detallado del contenido y no solo la truncando las
primeras Lineas de los prrafos.
Resolucin cooperativa de problemas: La computadora debe tener la capacidad de
cooperar con los humanos para la solucin de problemas complejos, proporcionando
datos e informacin, incluyendo tambin, la demanda de informacin por parte del
ordenador al usuario, debiendo existir una excelente interactividad entre el usuario y el
ordenador.
Tutores inteligentes: La aplicacin del PLN en este aspecto, viene siendo ms
acadmico, ya que se refiere a la enseanza asistida por computadora, debiendo esta
ser aprox. en un 99%, al tener esta la capacidad de evaluar al educando y tener la
capacidad de adaptndose a cada tipo de alumno.
Reconocimiento de Voz: Esta es una aplicacin del PLN que ms xito ha obtenido en la
actualidad, ya que las computadoras de hoy ya tienen esta caracterstica, el
reconocimiento de voz puede tener dos posibles usos: para identificar al usuario o para
procesar lo que el usuario dicte, existiendo ya programas comerciales, que son
accesibles por la mayora de los usuarios, ejemplo: ViaVoice.
2.3. Niveles del Lenguaje

8


Para continuar nuestro estudio de los lenguajes naturales, es necesario el que conozcamos los
niveles del lenguaje, los cuales sern utilizados para la explicacin de el siguiente tema que es la
Arquitectura de un sistema de PLN. Los niveles de lenguaje que daremos a conocer son los
siguientes: fonolgico, morfolgico, sintctico, semntico, y pragmtico.
a. Nivel Fonolgico: trata de cmo las palabras se relacionan con los sonidos que
representan.
b. Nivel Morfolgico: trata de cmo las palabras se construyen a partir de unas unidades de
significado mas pequeas llamadas morfemas, por ejemplo:
Rpida + Mente == Rpidamente
c. Nivel Sintctico: trata de cmo las palabras pueden unirse para formar oraciones, fijando
el papel estructural que cada palabra juega en la oracin y que sintagmas son parte de
otros sintagmas.
d. Nivel Semntico: trata del significado de las palabras y de cmo los significados se unen
para dar significado a una oracin, tambin se refiere al significado independiente del
contexto, es decir de la oracin aislada.
e. Nivel Pragmtico: trata de cmo las oraciones se usan en distintas situaciones y de
cmo el uso afecta al significado de las oraciones. Se suele reconocer un subnivel
recursivo: discursivo, que trata de cmo el significado de una oracin se ve afectado por
las oraciones inmediatamente anteriores.
2.4. Arquitectura de un sistema de PLN

Ahora que ya conocemos los niveles del lenguaje, el siguiente paso es la elaboracin de la
arquitectura del sistema de procesamiento del lenguaje natural, es decir, como va la
computadora a interpretar y analizar las oraciones que le sean proporcionadas, a continuacin se
muestra un esquema de cmo la computadora debe hacer el anlisis de estas.
La explicacin de este sistema, es sencilla:
a. El usuario le expresa a la computadora que es lo que desea hacer.
b. La computadora analiza las oraciones proporcionadas, en el sentido morfolgico y
sintctico, es decir, si las frases contienen palabras compuestas por morfemas y si la
estructura de las oraciones es correcta.
c. El siguiente paso, es analizar las oraciones semnticamente, es decir saber cual es el
significado de cada oracin, y asignar el significado de estas a expresiones lgicas(cierto
o falso).
d. Una vez realizado el paso anterior, ahora podemos hacer el anlisis pragmtico de la
instruccin, es decir una vez analizadas las oraciones, ahora se analizan todas juntas,
tomando en cuenta la situacin de cada oracin, analizando las oraciones anteriores,
una vez realizado este paso, la computadora ya sabe que es lo que va a hacer, es decir,
ya tiene la expresin final.
e. Una vez obtenida la expresin final, el siguiente paso es la ejecucin de esta, para
obtener as el Resultado y poder proporcionrselo al usuario.
2.5. El problema de la Ambigedad

Uno de los grandes problemas del PLN se produce cuando una expresin en LN posee ms de
una interpretacin, es decir, cuando en el lenguaje de destino se le pueden asignar dos o ms
9


expresiones distintas. Este problema de la ambigedad se presenta en todos los niveles del
lenguaje, sin excepcin. Ejemplo:
"Juan vio a Mara, con el telescopio"
"Juan vio a Mara con el telescopio"
En apariencia este problema es demasiado sencillo, pero en realidad, es uno de los mas
complicados y que ms complicaciones ha dado para que el PLN pueda desarrollarse por
completo, ya que al presentarse en todos los niveles del lenguaje, se tienen que desarrollar
programas( en lenguaje formal) para solucionarlos en cada caso.

2.6. El PLN en los Sistemas Multimedia y Expertos: Tutores Inteligentes(TI)
La pretensin de la informtica de adaptarse al comportamiento natural de del usuario, ha
llevado la incorporacin de texto, imgenes y sonido(los llamados entornos multimedia") a las
estaciones de trabajo y Pcs actuales, al tiempo que stos aumentan su capacidad.
Antes de continuar con el estudio del PLN en los sistemas multimedia, enumeremos las partes
que pueden contener estos:
1. Entornos de iconos
2. Autopistas de informacin
3. Ratn
4. Programacin interactiva
5. Realidad Virtual
6. Hipertexto
7. Sonido
En si la multimedia es la unin de del hipertexto con el sonido, estas uniones de imgenes, texto
y sonidos necesitan una filosofa del conocimiento que fundamente su funcin interna dentro de
la comunicacin de conocimientos, o sea pasar a ser elementos de la estructura de conocimiento
y no solo datos. A esa filosofa la llamamos idea intuitiva de la comunicacin sistema-usuario.
Para deslindar, este problema, lo situamos en un contexto de enseanza de conocimientos, es
decir, Tutores Inteligentes(TI) en entornos multimedia. Los TI son un tipo de sistemas expertos
con mdulos especiales( alumno y pedaggico) y una reestructuracin de los existentes(
conocimiento, explicaciones, interfaz). En si el modelo que debe seguir el TI es el siguiente:
Como es sabido un dialogo en lenguaje natural esta muy afectado por el conocimiento que un
interlocutor tiene del otro y por el contexto o entorno donde el dialogo tiene lugar. Lo primero que
est aqu proporcionado por el modelo del usuario y, lo segundo, por el "paisaje de imgenes".
El dialogo del TI, se basa en preguntas respuestas, pero adems el TI tiene que fijar el objetivo
de cada pregunta y el tipo de informacin necesaria, incluso demandando informacin al usuario,
lo cual exige una actitud cooperativa por parte de este.





2.7. Caractersticas de las lenguas naturales
El lingista Charles F. Hockett habla de quince rasgos definitorios de la lengua:
10


1. Modo de comunicacin: es el canal vocal-auditorio el principal en el lenguaje humano (se
produce el mensaje con la boca y se recibe con el odo). Tambin puede darse el canal
manual-visual.
2. Transmisin difundida y recepcin dirigida: en el habla se emite un mensaje que se
expande en todas direcciones y que puede ser escuchado por cualquiera; sin embargo,
el sistema auditivo humano permite la identificacin del lugar de donde proviene.
3. Transitoriedad: el mensaje humano es temporal; las ondas se devanecen y el mensaje
no persiste ni en el tiempo ni en el espacio.
4. Desarrollo interlocutivo o intercambiabilidad: un hablante, en condiciones normales,
puede tanto emitir como recibir mensajes.
5. Retroalimentacin total: el hablante puede escucharse a s mismo en el preciso instante
que emite un mensaje. Esto es importante para la realizacin correcta del habla.
6. Especializacin: los rganos que intervienen en el habla, aparte de servir para sus
funciones fisiolgicas correspondientes, estn especializados para el habla.
7. Semanticidad: la seal se corresponde con un significado en particular. Es un elemento
fundamental de cualquier mtodo de comunicacin.
8. Arbitrariedad: no existe correlacin entre la seal y el signo. Por ejemplo, los fonemas
que crean la palabra nada en s mismos no tienen relacin alguna con ese concepto; en
croata, por ejemplo, nada significa esperanza. No hay razn alguna para que el
concepto carencia de algo debiera ser nada y no cualquier otra combinacin de
fonemas.
9. Discreticidad: las unidades bsicas son separables, sin haber una transicin gradual. Un
oyente puede or o t o d, e independientemente de que lo escuche bien distinguir o
una u otra, sin escuchar una mezcla de ambas.
10. Desplazamiento: puede hacerse referencia a situaciones u objetos que no se sitan por
dexis, en el aqu y ahora, es decir, separados por el tiempo o distancia, o incluso
sobre cosas que no existen ni han existido.
11. Doble articulacin o dualidad: existe un nivel o segunda articulacin en el que los
elementos no poseen significado pero s distinguen significado (fonema), y otro nivel o
primera articulacin en el que estos elementos se agrupan para tener significado
(morfema). Los elementos de la segunda articulacin son finitos, pero pueden agruparse
de infinitas maneras.(Cf. Hjelmslev).
12. Productividad: las reglas de la gramtica permiten la creacin de oraciones nuevas que
jams han sido creadas, pero que pueden ser entendidas. (Cf. competencia lingstica,
gramtica generativa, Chomsky).
13. Transmisin cultural: el lenguaje humano es un producto de una evolucin histrica y se
transmite entre generaciones. Cf. cambio lingstico, gramtica histrica). Es posible que
no se d en el resto de formas de comunicacin no humanas.
14. Prevaricacin: el mensaje puede ser intencionadamente falso.(Cf. mximas
conversacionales, Grice).
15. Funcin metalingstica: el lenguaje humano permite referirse a s mismo; se puede
decir que altar es una palabra masculina, y no se est haciendo referencia alguna al
objeto, sino a la palabra en s.


3. DEFINICION DE LENGUAJE FORMAL

Un lenguaje formal es un conjunto (finito o infinito) de cadenas finitas de smbolos primitivos
11


Ej: El lenguaje Nmero es simplemente el conjunto infinito de cadenas finitas formadas con los
dgitos:
0, 1, 2, 3, 4, 5, 6, 7, 8 y 9

Dichas cadenas estn formadas gracias a un alfabetoy a una gramticaque estn formalmente
especificados
El alfabeto es un conjunto finito no vaco de smbolos
La gramtica es un conjunto finito de reglas para formar cadenas finitas juntando
smbolos del alfabeto
A cada cadena de smbolos de un lenguaje formal se le llama frmula bien formada (o
palabra) del lenguaje

3.1. Clasificacin de gramticas de lenguajes formales

Chomsky clasific jerrquicamente las gramticas formales que generan lenguajes
formales, en estos tipos:

Gramticas Tipo 0 (sin restricciones, recursivas)
Incluyen todas las gramticas formales. Generan todos los lenguajes que pueden
ser reconocidos por una mquina de Turing.
Gramticas Tipo 1 (dependientes de contexto)
Generan los lenguajes dependientes de contexto. Contienen reglas de produccin
de la forma:
A
A es un no terminal
, y son cadenas de terminales y no terminales.
y pueden ser vacos, pero ha de ser distinto del vaco.
Se denominan gramticas dependientes del contexto, porque, como se observa, A
puede ser sustituido por si est acompaada de por la izquierda y de por la
derecha.
Estos lenguajes son todos los lenguajes que pueden ser reconocidos por una
mquina de Turing no determinista. (autmatas lineales acotados)
Gramticas Tipo 2 (independientes de contexto, libre de contexto)
Generan los lenguajes libres de contexto. Estn definidas por reglas de la forma:
A
A es un no terminal
es una cadena de terminales y no terminales.
Se denominan independientes de contexto porque A puede sustituirse por
independientemente de las cadenas por las que est acompaada.
12


Los lenguajes independientes de contexto constituyen la base terica para la
sintaxis de la mayora de los lenguajes de programacin. Definen la sintaxis de las
declaraciones, las proposiciones, las expresiones, etc.(es decir, la estructura de un
programa)
Estos lenguajes son todos los lenguajes que pueden ser reconocidos por los
autmatas de pila.
Gramticas Tipo 3 (gramticas regulares)
Generan los lenguajes regulares. 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. Es decir, normas del tipo:
A a B
A a
Estos lenguajes son los que pueden ser decididos por un autmata finito (regular).
Los lenguajes regulares se utilizan para definir estructura lxica de los lenguajes de
programacin. Definen la sintaxis de los identificadores, nmero, cadenas y otros
smbolos bsicos del lenguaje.
Importante!! : Todo lenguaje de tipo 3 es de tipo 2, todo lenguaje de
tipo 2 es de tipo 1, y todo lenguaje de tipo 1 es de tipo 0.
Se dice que un lenguaje es de tipo k [k = 0, k = 1, k = 2, k = 3] cuando existe
una gramtica de tipo k que genera ese lenguaje.
Para clasificar una gramtica hemos de analizar una a una todas sus reglas de produccin
obteniendo el tipo de cada una de ellas. La clasificacin de la gramtica ser la correspondiente
al tipo de la produccin de menor clasificacin.
Gramtica Lenguaje
Reglas de
Produccin
Si ,
relacin entre ||
y ||
Solucin
Tipo-0 Recursivas Sin restricciones
Mquinas de
Turing
Tipo-1 Dependiente de contexto A
|| ||
Autmatas
lineales acotados
Tipo-2
Independiente de
contexto
A
|| = 1
Autmatas de pila
Tipo-3 Regular
A> aB
A a
Autmatas finitos,
regulares
y son cadenas de terminales y no terminales. La cadena no puede ser la cadena vaca.
Todo tipo de gramtica puede incluir la S -> . Si se da este caso, entonces no puede tener una
S en la parte derecha de ninguna regla.
13




Ejemplos:
o Tipo de la regla de produccin <A><B> y
Tipo 3: No
Tipo 2: No
Tipo 1: No
Tipo 0: S Regla de produccin de Tipo 0
o Tipo de la regla de produccin <Y> ba
Tipo 3: No
Tipo 2: S Regla de produccin de Tipo 2
Tipo 1: S


















14











4. BIBLIOGRAFIA

Letch, Charley. Informacin Tsunami: Un futurista mira en retrospectiva, Primera
Edicin, Editorial

Limusa, Coleccin Megabyte, Mxico D.F., 1992

http://delta.cs.cinvestav.mx/red/logica/node3.html

http://cic2.iimas.unam.mx/~villasen/protocolo-proy-CONACYT.html

http://www3.uniovi.es/~Psi/REMA/v1n1/a4/p1.html

http://www.dcc.uchile.cl/~cc20a/contenidos/clase05

http://www.lawebdelprogramador.com/










15

Vous aimerez peut-être aussi