Unidad 1 - Introducción a La Teoría de Lenguajes Formales.

6
Unidad 1: Introducción a la Teoría de Lenguajes y Autómatas. Introducción: El objetivo de esta unidad es identificar los conceptos teóricos y necesarios sobre la materia teoría de Lenguajes y autómatas 1. Unidad 1 - Introducción a la Teoría de Lenguajes Formales. 1.1 Alfabeto Un alfabeto es un conjunto finito no vacío cuyos elementos se llaman símbolos. Denotamos un alfabeto arbitrario con la letra Σ. Símbolos: Es una entidad abstracta que no se puede definir, ya que se dejaría como una axioma. Igual que se define un punto en la geometría. La cual normalmente los símbolos son letras (a, b, c,…. z), dígitos (0,1,…9, caracteres (+, -, *, /,>,< …..). los símbolos pueden estar formados por varias letras o caracteres. Alfabeto: El alfabeto o abecedario es un conjunto de letras, con un determinado orden. Podríamos precisamente decir que el alfabeto es un conjunto de letras (caracteres o grafemas) de un sistema de escritura, cada una representa aproximadamente un fonema (consonante o vocal). 1.2 Cadenas.

description

Lenguajes y Autómatas I

Transcript of Unidad 1 - Introducción a La Teoría de Lenguajes Formales.

Unidad 1: Introduccin a la Teora de Lenguajes y Autmatas.

Introduccin:El objetivo de esta unidad es identificar los conceptos tericos y necesarios sobre la materia teora de Lenguajes y autmatas 1.

Unidad 1 - Introduccin a la Teora de Lenguajes Formales.

1.1AlfabetoUn alfabeto es un conjunto finito no vaco cuyos elementos se llaman smbolos. Denotamos un alfabeto arbitrario con la letra .

Smbolos:Es una entidad abstracta que no se puede definir, ya que se dejara como una axioma. Igual que se define un punto en la geometra. La cual normalmente los smbolos son letras (a, b, c,. z), dgitos (0,1,9, caracteres (+, -, *, /,>,< ..). los smbolos pueden estar formados por varias letras o caracteres.

Alfabeto:El alfabeto o abecedario es un conjunto de letras, con un determinado orden. Podramos precisamente decir que el alfabeto es un conjunto de letras (caracteres o grafemas) de un sistema de escritura, cada una representa aproximadamente un fonema (consonante o vocal).

1.2 Cadenas.Una cadena o palabra sobre un alfabeto . admitimos la existencia de una nica cadena que no tiene smbolos, la cual se denomina cadena vaca y se denota con . la cadena vaca desempea, en la teora de lenguajes formales, un papel similar al que desempea el conjunto vaco en la teora de conjuntos.Longitud de cadena.La longitud de cadena es el numero de smbolos que contiene. La notacin empleada es la que es la que se indica en el ejemplo:Utilizamos las cadenas de los ejemplos:I abcb I = 4,I a + 2*b I = 5I 000111 I = 6I if a > b then a = b; I = 9

Cadena Vaca.Una cadena vaca es la nica cadena de caracteres de tamao cero. Y la podemos denotar usualmente con letras o (Griegas).Concatenacin de cadenas.La concatenacin de dos cadenas u y v, escrita uv, es "pegar" las dos cadenas para formar una nueva.Ejemplo:Sea u = abv = caw = bb. Entoncesuv = abcauw = cabb(uv) w = abcabbu(vw) = abcabbEl resultado de la concatenacin de u, v y w es independiente del orden en que las operaciones son ejecutadas. Matemticamente esta propiedad es conocida como asociatividad.

Universo del discurso.Es un conjunto de todas las cadenas donde podemos formar con smbolos del alfabeto V le denominamos universo del discurso de V y la representamos de la siguiente manera W (V). Es evidente que W(V) es un conjunto infinito y que la cadena vaca pertenece a W(V).Ejemplo:Un afabeto con una sola letra V = { a }, podemos decir que el universo del discurso es: W(V) ={ , a, aa, aaa, aaaa,....} y asi contiene una cadenas infinitas.

1.1 Lenguajes.Es un conjunto de cadenas, de todas las seleccionadas de un*. donde determinado el alfabeto se denomina lenguaje. Si es un alfabeto y L *, entonces L es un lenguaje de . Observe que un lenguaje deno necesita incluir cadenas con todos los smbolos de, ya que una vez que hemos esta que L es un lenguaje de , tambin sabemos que es un lenguaje de cualquier alfabeto que sea un sper conjunto de .La eleccin del trmino "lenguaje" puede parecer extraa. Sin embargo, los lenguajes habituales pueden interpretarse como conjuntos de cadenas. Un ejemplo seria el ingls, donde la coleccin de las palabras correctas inglesas es un conjunto de cadenas del alfabeto que consta de todas las letras. Otro ejemplo es el lenguaje C.

1.2 Tipos de lenguajes.

Lenguaje natural (castellano)Nosotros estamos relacionados con el concepto tradicional de gramtica que, de esta forma intuitiva, podemos considerar un conjunto de reglas el cual nos indican que es correcto y que no lo es del, lenguaje natural. Con este fin podemos acrcanos a la definicin ms clara y formal de la lengua castellana.

Lenguaje artificial.En este lenguaje aplicamos el mismo mtodo en el cual definimos un fragmento del lenguaje de programacin. Donde pretendemos describir las instrucciones el cual nos permite asignar un valor a una expresin a una variable en un lenguaje C.

Lenguaje regular.Llamamos as a los lenguajes porque sus palabras contienen "regularidades" o repeticiones de los mismos componentes, por ejemplo en este lenguaje L1 = { ab, abab, ababab, abababab,...} Este ejemplo podemos apreciar las palabras de L1 son solo repeticiones de "ab" donde se repiten varias veces. Su regularidad consiste en las palabras que contienen "ab" varias veces.

1.5 Herramientas computadoras ligadas con lenguajes.

Traductor.Un traductor es un programa que tiene como entrada un texto escrito en un lenguaje (lenguaje fuente) y como salida produce un texto escrito en un lenguaje (lenguaje objeto) que preserva el significado de origen.Ejemplos de traductores son los ensambladores y los compiladores.

Compilador.El compilador es un programa informtico que traduce un programa escrito en lenguaje de programacin y lo pasa a lenguaje de programacin, podemos decir que este programa nos permite traducir un cdigo fuente de un programa en lenguaje de nivel alto, y lo pasmos a otro nivel inferior (lenguaje maquina).

Ensambladores.El ensamblador es el programa en que se realiza la traccin de un programa escrito en ensamblador y lo pasa a lenguaje mquina. Directa o no directa la traduccin en que las instrucciones no son ms que instrucciones que ejecuta la computadora.

Interpretes.Los intrpretes son los que realizan normalmente dos operaciones: Traducen el cdigo fuente a un formato interno. Ejecuta o interpretan el programa traducido al formato interno.Donde la primera pertenece al interprete el cual llama a veces al compilador, as se genera el cdigo interno, pero no es el lenguaje de maquina, ni lenguaje de smbolos, ni mucho menos un lenguaje de nivel alto.

ConclusinDe esta manera se vio los conceptos tericos de alfabeto, cadena, smbolo, longitud de cadena, etc. As como cada uno de sus temas y subtemas.