Você está na página 1de 3

Sistema de Universidad Abierta el Linea

UNIVERSIDAD NACIONAL AUTONOMA DE


MEXICO
Sistema de Universidad Abierta

UNIDAD 1: AUTOMATAS Y LENGUAJES FORMALES


Temario detallado de la unidad 1

1.- Automatas y lenguajes formales.


1. Automatas y lenguajes formales.

Trata de la moderna linguistica computacional como una base para el entendimiento de los fundamentos
de los algoritmos. .

Se puede considerar a un automata como un generador de cadenas del lenguaje. Los automatas vienen a
ser mecanismos formales que realizan derivaciones en gramaticas formales. La manera en que las realizan
es mediante la nocion de reconocimiento. Una palabra sera generada en una gramatica si y solo si la
palabra hace transitar al automata correspondiente a sus condiciones terminales. Por esto es que los
automatas son analizadores lexicos (llamados en ingles parsers) de las gramaticas a que corresponden

Definiremos el concepto de lenguaje siguiendo la propuesta de Chomsky.

Los lenguajes y las gramaticas computacionales se pueden ver como una jerarquia que va de lo mas
simple a lo mas complejo.

Secuencia de conjunto de simbolos

Es una coleccion finita de caracteres que en su conjunto forman programas de un lenguaje de


programacion, comandos de un sistema operativo, compiladores, etc. tienen longitud finita

Definicion de alfabeto

Es un conjunto de simbolos o un conjunto no vacio de simbolos o conjunto finito de simbolos ejemplo: El


Ingles que esta formado por 26 simbolos

Palabra o cadena

Es la secuencia finita de simbolos de un determinado alfabeto. ejemplo: 'main' es una palabra reservada
del lenguaje 'C'

Definicion de frase

La frase es el conjunto de cadenas que tienen sentido, significado y logica. ejemplo: si A = B entonces C
= D.

Definicion de cadena vacia

Es una palabra que no tiene simbolo y su longitud es 0 (no tiene longitud)


Lenguaje vacio.- Es un lenguaje compuesto por ninguna cadena

Definicion de lenguaje

Es un conjunto de palabras o cadenas sobre un alfabeto. Ejemplo: Lenguaje 'C', Java, Frances, Ingles etc

L1.- Lenguajes Regulares.- Es el conjunto de los lenguajes sobre un alfabeto. Esta formado por: Conjunto
vacio, cadena vacia, en general lenguajes como subconjunto de un alfabeto, como union o concatenacion
de lenguajes y lenguajes universales. Se usan para hacer programas analizadores de texto (compiladores,

file:///C|/Users/Iovanny/TEC/5TO SEMESTRE/Lenguajes Automatas/Sistema de Universidad Abierta el Linea.htm[11/09/2012 06:26:30 p.m.]


Sistema de Universidad Abierta el Linea

traductores, interpretes, etc)

L2.- Lenguajes Independientes del contexto.- Es el conjunto de los lenguajes generados por la gramatica
Independiente del contexto (GIC) Donde GIC es una 4-tupla (union de cuatro elementos):

S = Simbolo inicial
a = Es un alfabeto
N = Coleccion finita de no terminales (parte de la cadena que todavia no se ha generado) ejem: un bloque
Begin/end sin terminar
P = Produccion o generacion de cadenas

- La gramatica es un patron particular que nos permite la produccion de cadenas en la generacion de los
lenguajes.

- Estos conceptos se usan principalmente para la derivacion y produccion de cadenas. Hacer lenguajes de
programacion como HTML, ASP, PHP, etc.

- Dependiente del contexto.- Este concepto se aplica a las gramaticas y los lenguajes que restringen la
produccion de cadenas o fraces.

- Independientes del contexto.- Este concepto se aplica a las gramaticas y los lenguajes mas flexibles que
facilitan la generacion de cadenas o fraces y el proceso de compilacion de los lenguajes. Por ejemplo el
lenguaje Java no es un compilador, es independiente del contexto ya que puede ser interpretado por el
navegador y al mismo tiempo compilable por el compilador.

- Lenguajes sensibles al contexto.- Son los lenguajes que estan entre los lenguajes independientes del
contexto y los lenguajes recursivos.

L3.- Lenguajes Recursivos.- Son los lenguajes aceptados por una Maquina de Turing que siempre paran
sobre alguna entrada.- Son los lenguajes que permiten el principio de recursion(procedimintos/ funciones
que se pueden llamar a si mismos) en su gramatica y sintaxis. (no todos los lenguajes son recursivos). En
el algotitmo de las Torres de Hanoi, la recursividad se detiene hasta que encuentra la solucion.

L4.- Lenguajes recursivamente enumerables.- Son los lenguajes recursivos que no son numerables
aceptados por una Maquina de Turing. Numerable = relacion de cadenas con numeros(aceptan en general
cadenas y numeros de manera recursiva)

1.5.- Gramaticas formales

Las gramaticas formales son sistemas de manipulacion simbolica que permiten generar cadenas de
simbolos, llamadas por esto bien formadas, o bien reconocer cuando una cadena dada esta, en efecto, bien
formada.

1.6.- Definicion de lenguaje formal

Cuando se habla de lenguaje formal se refiere a las especificaciones de la sintaxis y gramatica definida y
que se aplica a un lenguaje

1.7.- Jerarquizacion de gramaticas

El deseo de formalizar los lenguajes natuarales fue lo que llevo a Noam Chomsky a desarrollar una teoria
de lenguajes formales en 1956. Esta teoria senalo la descripcion finita de los lenguajes infinitos, por
medio de esta representación que adopta la forma de un mecanismo abstracto para generar o reconocer
cualquer cadena del lenguaje, La jerarquizaron es una serie de cuatro clases de lenguajes formales cuya
definicion realizada por Noam Chomsky en 1959 marco el comienzo de la teoria del lenguaje formal que
desde entonces ha sido la base del tema. Estas clases de lenguaje se denominan de tipo 3, tipo 2, tipo 1 y
tipo 0, siendo cada una de ellas una subclase de las siguientes:

CLASIFICACION DE LAS GRAMATICAS:

file:///C|/Users/Iovanny/TEC/5TO SEMESTRE/Lenguajes Automatas/Sistema de Universidad Abierta el Linea.htm[11/09/2012 06:26:30 p.m.]


Sistema de Universidad Abierta el Linea

Gramaticas Tipo 0: (sin restricciones, recursivas) Es el mas general e incluye todas los lenguajes posibles.
Generan todos los lenguajes que pueden ser reconocidos por la maquina de Turing. Describen cualquier
suceso computable: aquel que mediante un procedimiento es capaz de transformar unas determinadas
entradas a las salidas significativas.

Gramaticas Tipo 1: (dependientes de contexto o Sensibles al contexto) Se introducen limitaciones en la


estructura, aunque se permite que el significado de las palabras dependa de su posicion en la frase, es
decir, de su contexto.

Gramaticas Tipo 2: (independientes de contexto, libre de contexto) Aqui se restringe aun mas la libertad
de la formacion de reglas gramaticales: en los lenguajes de este tipo, el significado de una palabra es
totalmente independiente de su posicion en la frase.

Los lenguajes independientes de contexto constituyen la base teorica para la sintaxis de la mayoria de los
lenguajes de programacion. 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 automatas de pila. La sintaxis de Lenguajes de programacion como Pascal, C, etc
estan descritos mediante gramaticas tipo 2, aunque puedan tener aspectos de gramatica Tipo 1.

Gramaticas Tipo 3: (gramaticas regulares) Estos lenguajes son los que pueden ser decididos por un
automata finito (regulas). Los lenguajes regulares se utilizan para definir estructura lexica de los lenguajes
de programacion. Definen la sintaxis de los identificadores, numero, cadenas y otros símbolos basicos del
lenguaje. Son Analizadores Lexicos de compiladores de los lenguajes de programacion.

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.

1.8. Propiedades de indecibilidad

La logica matematica y el formalismo matematico se desarrollaron hasta culminar en la famosa obra de


Russell Y Whitehead Principia Matematica. La " certidumbre" de las matematicas se volvia cada vez mas
evasiva hasta que Kurt Godel ( Checoslovaquia- EUA., 1906-1978) puso punto final a toda esperanza de
obtener sistemas matematicos rigurosos basados en el metodo axiomatico. Su famoso teorema de 1931
establece que hay cuestiones en matematicas que son " indecidibles ", es decir, que no se pueden ni
demostrar ni refutar a partir de los axiomas.

Ramon Castro

file:///C|/Users/Iovanny/TEC/5TO SEMESTRE/Lenguajes Automatas/Sistema de Universidad Abierta el Linea.htm[11/09/2012 06:26:30 p.m.]

Você também pode gostar