conjuntos el fundamento mas importante para el estudio de los lenguajes y autómatas es la teorıa...

41
CONJUNTOS CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de “formalizar” una nocion, estaremos diciendo en realidad “expresar en terminos de la Teorıa de Conjuntos”. La idea de un conjunto .

Upload: lucia-martines

Post on 01-Jan-2015

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

CONJUNTOSCONJUNTOS

El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de “formalizar” una nocion, estaremos diciendo en realidad “expresar en terminos de la Teorıa de Conjuntos”. La idea de un conjunto .

Page 2: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Las relaciones de inclusion entre conjuntos se acostumbran representar graficamente mediante

los llamados “diagramas de Venn”, que denotan mediante ´areas cerradas (por ejemplo elipses) los conjuntos. Por ejemplo, en la figura se ilustra la situacion donde un conjunto A es subconjunto de B, y B es subconjunto de C.

Page 3: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Sean A y B conjuntos. Se definen las siguientes operaciones con los conjuntos:

Union de conjuntos, denotada por A [ B, que contiene los elementos del conjunto A y tambien los del conjunto B, es decir, A [ B = {x|x 2 A o x 2 B}. Por ejemplo,

{1, 2, 3} [ {3, 4} = {1, 2, 3, 4}. La unión de conjuntos es conmutativa,

Page 4: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Interseccion de conjuntos, escrita A \ B, que contiene los elementos que pertenecen simultaneamente al conjunto A y al conjunto B, es decir, A \B = {x|x 2 A y x 2 B}.

Por ejemplo, {1, 2, 3} \ {3, 4} = {3}. La interseccion es conmutativa y asociativa.

Page 5: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Diferencia de conjuntos, A − B, que contiene los elementos de A que no estan en B, esto es, A − B = {x|x 2 A y x 62 B}. Por ejemplo, {1, 2, 3} − {3, 4} = {1, 2}. La resta o diferencia de conjuntos no siempre le “quita” elementos al primer conjunto; por ejemplo {1, 2, 3}−{4, 5} = {1, 2, 3}. La diferencia de conjuntos no es ni asociativa ni conmutativa

Page 6: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Complemento de un conjunto, es un caso particular de la diferencia, cuando el primer

conjunto es considerado como el “universo” que contiene todos los elementos posibles.

Sea U un universo, entonces el complemento del conjunto A, denotada por AC contiene

los elementos del universo que no están en A. Por ejemplo, si el universo son los

números naturales {1, 2, 3, . . .}, complemento de los números pares son los números

nones: {2, 4, 6, . . .}c = {1, 3, 5, . . .}. Claramente A [ Ac = U, para todo conjunto A.

Page 7: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Potencia de un conjunto A, denotada como 2A, contiene como elementos a todos los subconjuntos

de A, esto es, 2A = {x|x A}. En otras palabras, 2A es un conjunto de

conjuntos. Por ejemplo, 2{1,2,3} = {;, {1}, {2}, {3}, {1, 2}, {1, 3}, {2, 3}, {1, 2, 3}}. Recu

´erdese que el conjunto vac´ıo siempre forma parte de todo conjunto potencia. La

notaci´on “2A” recuerda que el tama˜no del conjunto potencia de A es 2 elevado a la

potencia del tama˜no de A, esto es, |2A| = 2|A|.

Page 8: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Producto Cartesiano de dos conjuntos, A × B, es el conjunto de pares ordenados (a, b)

tales que a 2 A y b 2 B. Por ejemplo,{1, 2} × {3, 4, 5} = {(1, 3), (1, 4), (1, 5), (2, 3), (2, 4), (2, 5)} El tamaño de un producto cartesiano A×B es |A| multiplicado por |B|, como se puede verificar en el ejemplo anterior. El producto cartesiano no es conmutativo, pues no es lo mismo un par (a, b) que uno (b, a), ni asociativo, pues no es lo mismo (a, (b, c)) que ((a, b), c).

Page 9: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Fundamentos MatemáticosFundamentos Matemáticos

Cadenas y LenguajesCadenas y LenguajesEl El producto cartesianoproducto cartesiano de dos de dos

conjuntos conjuntos AA y y BB consta de las parejas consta de las parejas ordenadas cuyo primer elemento ordenadas cuyo primer elemento está en está en AA y cuyo segundo elemento y cuyo segundo elemento está en está en BB. Usaremos la notación de . Usaremos la notación de yuxtaposiciónyuxtaposición para denotar al para denotar al producto cartesiano: producto cartesiano:

Page 10: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Monoide de CadenasMonoide de Cadenas

OPERACIÓN DE CONCATENACIONOPERACIÓN DE CONCATENACION

Creamos el diccionario de un alfabeto Creamos el diccionario de un alfabeto de la operación de de la operación de concatenaciónconcatenación: :

                   ,                    

Page 11: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Alfabeto, cadena de caracteres

Un alfabeto es un conjunto no vació de Un alfabeto es un conjunto no vació de símbolos. Así, el alfabeto del idioma símbolos. Así, el alfabeto del idioma español, E = {a, b, c, . . . , z}, es sólo uno español, E = {a, b, c, . . . , z}, es sólo uno de tantos alfabetos posibles. En general de tantos alfabetos posibles. En general utilizaremos la notación para representar utilizaremos la notación para representar un alfabeto.un alfabeto.

Con los símbolos de un alfabeto es posible Con los símbolos de un alfabeto es posible formar secuencias o formar secuencias o cadenas de caracterescadenas de caracteres, , tales como gegerte, sg536egdsge, r, etc. 4 tales como gegerte, sg536egdsge, r, etc. 4 Las cadenas de caracteres son llamadas Las cadenas de caracteres son llamadas también palabras.también palabras.

Page 12: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

POTENCIA: de un conjunto A, denotada como 2A, contiene como elementos a todos los subconjuntos

de A, esto es, 2A = {x|x A}. En otras palabras, 2A es un conjunto de

conjuntos. Por ejemplo, 2{1,2,3} = {;, {1}, {2}, {3}, {1, 2}, {1, 3}, {2, 3}, {1, 2, 3}}. Recu

´erdese que el conjunto vac´ıo siempre forma parte de todo conjunto potencia. La

notaci´on “2A” recuerda que el tama˜no del conjunto potencia de A es 2 elevado a la

potencia del tama˜no de A, esto es, |2A| = 2|A|.

Page 13: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

GRAMATICASGRAMATICAS

SON SISTEMAS DE MANIPULACION SON SISTEMAS DE MANIPULACION SIMBOLICA QUE PERMITEN GENERAR SIMBOLICA QUE PERMITEN GENERAR CADENAS DE SIMBOLOS LLAMADAS CADENAS DE SIMBOLOS LLAMADAS POR ESTO BIEN FORMADAS, O BIEN POR ESTO BIEN FORMADAS, O BIEN RECONOCER CUANDO UNA CADENA RECONOCER CUANDO UNA CADENA DADA ESTA EN EFECTO BIEN DADA ESTA EN EFECTO BIEN FORMADA.FORMADA.

Page 14: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

REGLAS DE TRANSFORMACIONREGLAS DE TRANSFORMACION

MAI : Modos Mecánico, Anti e MAI : Modos Mecánico, Anti e Inteligente (Zen) Inteligente (Zen)

Los caracteres griegos representan a Los caracteres griegos representan a palabras en el alfabeto . La primera regla palabras en el alfabeto . La primera regla dice que a toda palabra que termina con dice que a toda palabra que termina con ii puede añadírsele una puede añadírsele una aa, la segunda, que , la segunda, que toda palabra que comience con toda palabra que comience con mm puede puede repetir su ``resto'', la tercera, que repetir su ``resto'', la tercera, que cualquier cadena de tres cualquier cadena de tres ii-es consecutivas -es consecutivas puede cambiarse por una puede cambiarse por una aa, y, finalmente, , y, finalmente, que cualesquiera dos que cualesquiera dos aa-es consecutivas -es consecutivas pueden ser suprimidas. pueden ser suprimidas.

Page 15: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Ejemplo:Ejemplo:

Derivaciones en el sistema Derivaciones en el sistema MAIMAI. .

                                                                                                                      

                                

Page 16: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

KENNINGS (Poesía antigua islandesa)KENNINGS (Poesía antigua islandesa) Este es un género de poesía islandesa de los Este es un género de poesía islandesa de los

siglos IX-XIII, construido mediante el siglos IX-XIII, construido mediante el reemplazo de frases sustantívales por otras reemplazo de frases sustantívales por otras equivalentes. equivalentes. Los kennings pueden ser Los kennings pueden ser bellas metáforas o irresolubles bellas metáforas o irresolubles acertijos. Ciertamente, esta poesía acertijos. Ciertamente, esta poesía posee dos tipos de encantos: Uno posee dos tipos de encantos: Uno sintáctico y otro semántico, y, por su sintáctico y otro semántico, y, por su naturaleza, ambos se mezclan naturaleza, ambos se mezclan indisolublemente.indisolublemente.

Page 17: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Ejemplos:Ejemplos:En un primer ejemplo, ilustramos la sustitución reiterada que se hace en En un primer ejemplo, ilustramos la sustitución reiterada que se hace en

los kennings, y en el segundo citamos un poema mucho más los kennings, y en el segundo citamos un poema mucho más acabado. acabado.

a)a) guerrero guerrero b)b) lanzador de espadaslanzador de espadasc)c) lanzador del fuego de la batallalanzador del fuego de la batallad)d) lanzador del fuego de la tormenta de arponeslanzador del fuego de la tormenta de arponese)e) lanzador del fuego de la tormenta de lunas de barcoslanzador del fuego de la tormenta de lunas de barcosf)f) lanzador del fuego de la tormenta de lunas de bridones de olas lanzador del fuego de la tormenta de lunas de bridones de olas .. .. ..Fonéticamente, en castellano es muy desagradable la repetición de la Fonéticamente, en castellano es muy desagradable la repetición de la

conjunción conjunción dede seguida de un artículo casi obligatorio. En los seguida de un artículo casi obligatorio. En los lenguajes nórdicos esto no aparece pues concatenando los vocablos, lenguajes nórdicos esto no aparece pues concatenando los vocablos, los sustantivos pueden realizar funciones de adjetivos, tal como los sustantivos pueden realizar funciones de adjetivos, tal como sucede en inglés. sucede en inglés.

Page 18: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

ALGORITMO DE MARKOVALGORITMO DE MARKOV

Estos sistemas formalizan Estos sistemas formalizan procedimientos de cálculo. procedimientos de cálculo.

Los algoritmos de Markov son Los algoritmos de Markov son equivalentes a otros sistemas de equivalentes a otros sistemas de transformación como son las transformación como son las gramáticas formales gramáticas formales irrestrictasirrestrictas, las , las funciones recursivas y las máquinas funciones recursivas y las máquinas de Turing. de Turing.

Page 19: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Formalización de gramáticasFormalización de gramáticas

Sea Sea TT un conjunto de símbolos un conjunto de símbolos terminalesterminales y sea y sea VV un conjunto de un conjunto de símbolos símbolos variablesvariables. La unión de ellos, . La unión de ellos, , es un , es un alfabetoalfabeto de gramática. de gramática. AA* es * es el el diccionariodiccionario sobre sobre AA y consta de y consta de todas las palabras, de longitud finita, todas las palabras, de longitud finita, con símbolos en con símbolos en AA. . AA+ coincide con + coincide con AA*, salvo en que no posee a la *, salvo en que no posee a la palabra vacía, nil .palabra vacía, nil .

Page 20: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

JERARQUIA DE CHOMSKYJERARQUIA DE CHOMSKY

En función de la forma de sus En función de la forma de sus producciones, se puede caracterizar qué producciones, se puede caracterizar qué tan compleja es una gramática formal. tan compleja es una gramática formal. Noam Chomsky mostró que esta Noam Chomsky mostró que esta caracterización clasifica jerárquicamente caracterización clasifica jerárquicamente a las gramáticas formales: Gramáticas a las gramáticas formales: Gramáticas en un nivel están incluidas en los en un nivel están incluidas en los siguientes niveles y la inclusión entre siguientes niveles y la inclusión entre niveles es propia. Se puede dar varios niveles es propia. Se puede dar varios refinamientos de la Jerarquía de refinamientos de la Jerarquía de ChomskyChomsky

Page 21: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Autómatas Autómatas

Los autómatas vienen a ser mecanismos Los autómatas vienen a ser mecanismos formales que ``realizan'' derivaciones en formales que ``realizan'' derivaciones en gramáticas formales. La manera en que las gramáticas formales. La manera en que las realizan es mediante la noción de realizan es mediante la noción de reconocimientoreconocimiento. Una palabra será generada . Una palabra será generada en una gramática si y sólo si la palabra hace en una gramática si y sólo si la palabra hace transitar al autómata correspondiente a sus transitar al autómata correspondiente a sus condiciones terminales. Por esto es que los condiciones terminales. Por esto es que los autómatas son autómatas son analizadores léxicosanalizadores léxicos (llamados en inglés ``(llamados en inglés ``parsersparsers'') de las '') de las gramáticas a que correspondengramáticas a que corresponden

Page 22: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Autómatas RegularesAutómatas Regulares

Estos son los autómatas finitos más Estos son los autómatas finitos más sencillos. Se construyen a partir de un sencillos. Se construyen a partir de un conjunto de conjunto de estadosestados QQ y de un conjunto y de un conjunto de de símbolos de entradasímbolos de entrada TT. Su . Su funcionamiento queda determinado por funcionamiento queda determinado por una una función de transición t: q x T--función de transición t: q x T-- Q . Q .

Si Si tt((qq,,ss)=)=pp esto se interpreta como que esto se interpreta como que el autómata transita del estado el autómata transita del estado qq al al estado estado pp cuando arriba el símbolo cuando arriba el símbolo ss. En . En todo autómata finito se cuenta con un todo autómata finito se cuenta con un estado inicial q0 € Q y un conjunto de estado inicial q0 € Q y un conjunto de estados finales F C Q.estados finales F C Q.

Page 23: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Autómatas de PilaAutómatas de PilaEstos autómatas finitos cuentan con un Estos autómatas finitos cuentan con un dispositivo de memoria muy elemental, del dispositivo de memoria muy elemental, del tipo tipo pilapila, el cual es un almacenamiento lineal , el cual es un almacenamiento lineal que funciona bajo el principio PEUS: que funciona bajo el principio PEUS: Primero Primero en Entrar, Ultimo en Saliren Entrar, Ultimo en Salir..La función de La función de transicióntransición es de la forma t: Q x es de la forma t: Q x T x V T x V → Q x V→ Q x V**, donde la relación , donde la relación t(q,a,v)=(p,v) se interpreta: ``Si se está en t(q,a,v)=(p,v) se interpreta: ``Si se está en el estado el estado qq, arriba el símbolo , arriba el símbolo aa y en el tope y en el tope de la pila está el símbolo de la pila está el símbolo bb entonces se pasa entonces se pasa al estado al estado pp y se empila la palabra y se empila la palabra vv ''. ''. Un autómata de pila reconoce a una palabra Un autómata de pila reconoce a una palabra si, tras haberla leído, termina con su pila si, tras haberla leído, termina con su pila vacíavacía

Page 24: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Autómatas de PilaAutómatas de PilaConsideremos el autómata de pila cuyas Consideremos el autómata de pila cuyas componentes son las siguientes:componentes son las siguientes:

Q={Seguir, Éxito, Fracaso}Q={Seguir, Éxito, Fracaso} : estados,: estados,T={a,b,c}:símbolos de entrada,V={A,C}T={a,b,c}:símbolos de entrada,V={A,C}

:símbolos de Pila,:símbolos de Pila,qq00=Seguir=Seguir :símbolo inicial,:símbolo inicial,Y cuya función de transición actúa como sigue:Y cuya función de transición actúa como sigue:

(seguir,a,y)(seguir,a,y)→(Seguir,Ay) empila paréntesis →(Seguir,Ay) empila paréntesis que abrenque abren(seguir,c,A)→(seguir,nil) suprime paréntesis (seguir,c,A)→(seguir,nil) suprime paréntesis empatadosempatados

t:t: (seguir,c,nil)→(fracaso,C) no hay equilibrio,(seguir,c,nil)→(fracaso,C) no hay equilibrio,(seguir,b,A)→(fracaso,A) no hay equilibrio,(seguir,b,A)→(fracaso,A) no hay equilibrio,(seguir,b,nil)→(Éxito,nil) equilibrio verificado(seguir,b,nil)→(Éxito,nil) equilibrio verificado

Page 25: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Autómatas finitos

El término maquina evoca algo hecho El término maquina evoca algo hecho en metal, usualmente ruidoso y en metal, usualmente ruidoso y grasoso, que ejecuta tareas grasoso, que ejecuta tareas repetitivas que requieren de mucha repetitivas que requieren de mucha fuerza o velocidad o precisión. fuerza o velocidad o precisión. Ejemplos de estas máquinas son las Ejemplos de estas máquinas son las embotelladoras automáticas de embotelladoras automáticas de refrescos.refrescos.

Page 26: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Autómatas LinealesAutómatas Lineales

Los Los autómatas linealesautómatas lineales son autómatas son autómatas de pila deterministas que a lo largo de de pila deterministas que a lo largo de su computación sólo hacen un ``cambio su computación sólo hacen un ``cambio de turno''. A grandes rasgos, esto de turno''. A grandes rasgos, esto significa que toda computación consiste significa que toda computación consiste de un procedimiento de empilar de un procedimiento de empilar consecutivamente para después pasar a consecutivamente para después pasar a desempilar.desempilar.

Page 27: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Relaciones De OrdenRelaciones De Orden

ORDEN DE PREFIJOORDEN DE PREFIJOPrimeramente presentamos condiciones Primeramente presentamos condiciones

necesarias y suficientes para comparar necesarias y suficientes para comparar cadenas y subcadenas. cadenas y subcadenas.

ORDEN LEXICOGRAFICOORDEN LEXICOGRAFICOSea Sea ∑∑*un alfabeto dotado de un *un alfabeto dotado de un

orden”orden”≤”≤” ejemplo, para el alfabeto ejemplo, para el alfabeto ASCII consideramos el orden usual. ASCII consideramos el orden usual. Extendemos el orden “Extendemos el orden “≤” de ∑ a un ≤” de ∑ a un orden de ∑orden de ∑*.*.

Page 28: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

HomomorfismosHomomorfismos

Sean (Sean (SS1,*1,1,*1,uu1) y (1) y (SS2,*2,2,*2,uu2) dos monoides con 2) dos monoides con operaciones respectivas *1 y *2 y unidades operaciones respectivas *1 y *2 y unidades uu1 y 1 y uu2. Una función es un 2. Una función es un homomorfismohomomorfismo si si

En otras palabras, un homomorfismo es una En otras palabras, un homomorfismo es una correspondencia entre monoides que preserva las correspondencia entre monoides que preserva las operaciones. operaciones.

Page 29: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Relaciones de EquivalenciaRelaciones de Equivalencia

En un conjunto En un conjunto AA, una , una relación de relación de equivalenciaequivalencia RR es un subconjunto es un subconjunto tal que es tal que es

reflexiva: , ,reflexiva: , , simétrica: simétrica:

,y ,y

transitiva: transitiva: . .

Page 30: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Lenguajes

La noción más primitiva es la de La noción más primitiva es la de símbolo, que es simplemente una símbolo, que es simplemente una representación distinguible de representación distinguible de cualquier información. Los símbolos cualquier información. Los símbolos pueden ser cualesquiera, como w, 9, pueden ser cualesquiera, como w, 9, #, etc.,pero nosotros vamos a utilizar #, etc.,pero nosotros vamos a utilizar las letras a,b,c, etc. Un símbolo es las letras a,b,c, etc. Un símbolo es una entidad indivisible.una entidad indivisible.

Page 31: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Lenguajes, operaciones con lenguajes

Un lenguaje es simplemente un Un lenguaje es simplemente un conjunto de palabras. Así, conjunto de palabras. Así, {abracadabra} es un lenguaje (de {abracadabra} es un lenguaje (de una sola palabra), {ali, baba, y, sus, una sola palabra), {ali, baba, y, sus, cuarenta, ladrones} es otro, es otro, cuarenta, ladrones} es otro, es otro, etc.etc.

Page 32: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

GRAMATICAS FORMALESGRAMATICAS FORMALES

Una gramática es una estructura G = Una gramática es una estructura G = (V, T, P So,) donde las siguientes letras (V, T, P So,) donde las siguientes letras

representan:representan:

““V: Símbolos Variables”V: Símbolos Variables”

““T: Símbolos Terminales”T: Símbolos Terminales”

““P: Producciones o reglas sintácticas”P: Producciones o reglas sintácticas”

““So: Símbolo Inicial”So: Símbolo Inicial”

Page 33: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

PROPOSICIONES CORRECTAMENTE PROPOSICIONES CORRECTAMENTE FORMADASFORMADAS

Las proposiciones se construyen a partir de Las proposiciones se construyen a partir de un conjunto de variables proposicionales que un conjunto de variables proposicionales que siguen un conjunto de reglas gramaticales:siguen un conjunto de reglas gramaticales:

Una variable proposicional es una proposiciónUna variable proposicional es una proposición La negación de una proposición es una La negación de una proposición es una

proposición tambiénproposición también La conjunción, la disyunción, la implicación y La conjunción, la disyunción, la implicación y

la equivalencia de dos proposiciones es la equivalencia de dos proposiciones es también una proposicióntambién una proposición

Las proposiciones solo se obtiene mediante la Las proposiciones solo se obtiene mediante la aplicación sucesiva de las reglas anterioresaplicación sucesiva de las reglas anteriores

Page 34: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Para describir esta construcción Para describir esta construcción mediante una grámatica formal, mediante una grámatica formal, podemos considerar como un podemos considerar como un conjunto de símbolos terminales a conjunto de símbolos terminales a conjunto unión de los siguientes :conjunto unión de los siguientes :

Tabla de proridades de los Tabla de proridades de los conectivos:conectivos:

La prioridad de los conectivos da de La prioridad de los conectivos da de izquierda a derechaizquierda a derecha

Page 35: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

TERCETAS DE IGUAL LONGITUDTERCETAS DE IGUAL LONGITUD

En este lenguaje En este lenguaje consta de tres consta de tres bloques bloques consecutivos a’s, consecutivos a’s, b’s y c’s de b’s y c’s de igual igual longitudlongitud, sus reglas , sus reglas de producción son de producción son las siguientes:las siguientes:

Page 36: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

GRAMATICA:GRAMATICA:

Toda palabra generada en ella tiene un Toda palabra generada en ella tiene un longitud de múltiplos de 3longitud de múltiplos de 3

Toda la palabra generada es de la forma Toda la palabra generada es de la forma aakk,b,bkk y c y ck k para algún k para algún k ≥ 0≥ 0

En general la grámatica utlizada es :En general la grámatica utlizada es :

L(gramática) = LL(gramática) = L33

Page 37: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

PAREJAS DE IGUAL LONGITUDPAREJAS DE IGUAL LONGITUD

Esta grámatica es Esta grámatica es paracida a la paracida a la gramática de gramática de tercetas de igual tercetas de igual longitud solo que longitud solo que se suprime el se suprime el último bloque c’s. último bloque c’s. Sus reglas de Sus reglas de producción son las producción son las siguientes:siguientes:

Page 38: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

PALABRAS DOBLESPALABRAS DOBLES

En este lenguaje En este lenguaje consta de la consta de la palabras formadas palabras formadas por la repetición de por la repetición de una partícula en el una partícula en el alfabeto {0,1}, su alfabeto {0,1}, su gramática es:gramática es:

Page 39: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

De las reglas de producción se podemos De las reglas de producción se podemos considerar los siguientes símbolos:considerar los siguientes símbolos:

““S: Símbolo Inicial”S: Símbolo Inicial” ““A: Delimitador derecho del primer A: Delimitador derecho del primer

bloque”bloque” ““B: ‘cursor’ para seguir añadiendo B: ‘cursor’ para seguir añadiendo símbolos en los bloques generados”símbolos en los bloques generados”

““C: Delimitador derecho del segundo C: Delimitador derecho del segundo bloque”bloque”

““D: Recordatorio de que sea generado un D: Recordatorio de que sea generado un 0”0”

““E: Recordatorio que se ha generado un 1”E: Recordatorio que se ha generado un 1”

Page 40: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

ELEVACION AL CUADRADOELEVACION AL CUADRADO

Esta gramática se construye a partir Esta gramática se construye a partir de las cadenas de 1’s cuya longitud de las cadenas de 1’s cuya longitud es el cuadrado de un número es el cuadrado de un número positivo. Ya que para todo nodo n, positivo. Ya que para todo nodo n, (n+1)(n+1)22, y al incio, 1, y al incio, 122 = 1, la = 1, la gramática, una vez que genere una gramática, una vez que genere una cadena de longitud ncadena de longitud n22 ha de ha de concatenar con una de longitud n y concatenar con una de longitud n y otra de longitud n + 1.otra de longitud n + 1.

Page 41: CONJUNTOS El fundamento mas importante para el estudio de los lenguajes y autómatas es la Teorıa de Conjuntos. En efecto, siempre que hablemos de formalizar

Producciondes de Producciondes de elevación al elevación al cuadrado:cuadrado: