UNIDAD 1 INTRODUCCIÓN A LA TEORÍA DE LENGUAJES FORMALES
MTI. Rosa Imelda García Chi
LENGUAJES Y AUTÓMATAS
TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES
Introducción
INTRODUCCIÓN
Teoría de Autómatas y Lenguajes formales es un “repaso” a la informátic a teórica.
La informática teórica:
se ha desarrollado en base a la confluencia de campos en apariencia muy distintos:
Investigación acerca de Fundamentos Matemáticos,
Teoría de Máquinas,
Lingüística, …
MTI. ROSA IMELDA GARCÍA CHI
Ciencia multidisciplinar que se apoya en que los mismos fenómenos pueden actuar y servir de fundamento en áreas totalmente desconectadas (aparentemente) .
MATEMATICA FISICA QUIMICA BIOLOGIA PSICOLOGIA SOCIOLOGIA ECONOMIA POLITICA
MTI. ROSA IMELDA GARCÍA CHI
PILARES DE LA INFORMÁTICA TEÓRICA:
Autómatas / máquinas secuenciales Lenguajes y gramáticas Máquinas abstractas y algoritmos MTI. ROSA IMELDA GARCÍA CHI
AUTÓMATAS / MÁQUINAS SECUENCIALES
Primer pilar de la Informática Teórica
AUTÓMATAS / MÁQUINAS SECUENCIALES Eslabón de la informática teórica que proviene de la Ingeniería Eléctrica. 1938 – Claude Elwood Shannon: “A symbolic Analysis of relay and switching circuits” • Aplicación de la lógica matemática a los circuitos combinatorios y secuenciales.
Sus ideas desarrollaron la Teoría de los autómatas finitos y máquinas secuenciales • Un autómata es un dispositivo abstracto que es capaz de recibir información, cambiar de estado y transmitir información. MTI. ROSA IMELDA GARCÍA CHI
AUTÓMATAS / MÁQUINAS SECUENCIALES Un autómata puede describir de forma formal el funcionamiento de un sistema
Ejemplo: interruptor
MTI. ROSA IMELDA GARCÍA CHI
AUTÓMATAS / MÁQUINAS SECUENCIALES Un autómata es un modelo abstracto de una computadora digital • Lee símbolos en la entrada • Produce símbolos en la salida • Tiene una unidad de control que puede estar en uno de sus posibles estados internos • Puede cambiar de los estados internos en función de la entrada • Puede tener algún tipo de memoria
Autómatas transductores / generadores / aceptadores MTI. ROSA IMELDA GARCÍA CHI
Una mรกquina secuencial simple
Building the robot of Leonardo da Vinci in the Leonardo3 laboratories by Mario Taddei.
LENGUAJES Y GRAMร TICAS
Segundo pilar de la Informรกtica Teรณrica
LENGUAJES Y GRAMÁTICAS
Segundo eslabón: Lingüística (campo tradicionalmente considerado no científico).
Años 50 – Avram Noam Chomsky Teoría de las Gramáticas Transformacionales • Base de la Lingüística Matemática • Proporcionó una herramienta que no sólo podía aplicarse a los lenguajes naturales, sino que facilitaba el estudio y formalización de los lenguajes de ordenador que aparecían en aquella época. MTI. ROSA IMELDA GARCÍA CHI
LENGUAJES Y GRAMÁTICAS
Cualquier comunicación se realiza mediante cadenas de símbolos que corresponden a un lenguaje. Lenguajes son conjuntos de cadenas de símbolos (palabras, oraciones, textos o frases) MTI. ROSA IMELDA GARCÍA CHI
LENGUAJES Y GRAMÁTICAS Sintaxis: (gramática)
El estudio de los lenguajes se reduce, básicamente, a:
define las secuencias de símbolos que forman cadenas válidas de un lenguaje Descripción formalizada de las oraciones de un lenguaje.
Gramática Una gramática genera o describe un lenguaje.
Semántica
MTI. ROSA IMELDA GARCÍA CHI
significado de las cadenas que componen un lenguaje
LENGUAJES Y GRAMÁTICAS Ejemplo 1: A es un número natural.
Semántica:
A is a natural number. Diferente sintaxis en diferentes lenguajes:
A : Natural;
0100000100000001
MTI. ROSA IMELDA GARCÍA CHI
LENGUAJES Y GRAMÁTICAS Ejemplo 2: Sintaxis: • if_statement ::= if condition then sequence_of_statement {elsif condition then sequence_of_statements} [else sequence_of_statements] end if;
Semántica: • Si se cumple <condition> entonces haz lo que viene definido por <sequence_of_statements>. En caso contrario ...
Cadena del lenguaje: • if Line_Too_Short then raise Layout_Error; elsif Line_Full then New_Line; Put(Item); else Put(Item); end if; MTI. ROSA IMELDA GARCÍA CHI
LENGUAJES Y GRAMÁTICAS
es r j ua ne g n e ta Le ltó t dia ía de su me eor a í re in T r o les ón la as e T a aci on in . a L orm rel a c qu tas F a ect Má ac r un dir de bst y A
Se establecieron correspondencias (isomorfismos) entre ellas.
MTI. ROSA IMELDA GARCÍA CHI
Se fu pue sis nci de te on de gr ma am sc a len má s m ient ribir pr g tic ed o e og ua as ia de l ra jes -- nt m d > e ac e ión
LENGUAJES Y GRAMÁTICAS
Chomsky clasificó de las gramáticas en diferentes tipos:
Lenguajes del mismo tipo tienen propiedades en común
MTI. ROSA IMELDA GARCÍA CHI
Según el tipo de lenguaje, existen diferentes algoritmos que permiten comprobar la sintaxis de textos.
LENGUAJES Y GRAMÁTICAS
Surge “Backus normal form” Propuesto por John Bakus para gramática de ALGOL
• Lenguajes de Programación • Lenguajes Naturales • Sistemas de Comandos MTI. ROSA IMELDA GARCÍA CHI
LENGUAJES Y GRAMÁTICAS Relación entre autómatas, lenguajes y gramáticas:
Autómatas aceptadores: las entradas válidas corresponden a un lenguaje
MTI. ROSA IMELDA GARCÍA CHI
Mร QUINAS ABSTRACTAS Y ALGORITMOS
Tercer pilar de la Informรกtica Teรณrica
MÁQUINAS ABSTRACTAS Y ALGORITMOS La historia de la informática teórica se remonta a la década de los 30. 1931 - Kurt Gödel: “On formally undecidable Propositions in Principia Mathematica and related systems” • Revolución Matemática: “Cualquier teoría matemática ha de ser incompleta. Siempre habrá en ella afirmaciones que no se podrán demostrar ni negar.” MTI. ROSA IMELDA GARCÍA CHI
MÁQUINAS ABSTRACTAS Y ALGORITMOS ¿Cómo se puede formalizar el concepto de realizar un cálculo? 1937 – Alan Mathison Turing: “On computable numbers with an application to the Entscheidungsproblem” Definición de la Máquina de Turing como dispositivo matemático abstracto de cálculo que introduce el concepto de “algoritmo”. Origen “oficial” de la informática teórica. Precursora abstracta de las máquinas de calcular automáticas. La Máquina de Turing es un modelo abstracto de los ordenadores actuales. Demuestra la existencia de problemas irresolubles, los que ninguna máquina de Turing (y ningún ordenador) puede resolver o calcular. (Teoría de la Computabilidad). MTI. ROSA IMELDA GARCÍA CHI
LENGUAJE
Concepto
CONCEPTO DE LENGUAJE Lenguaje, medio de comunicación entre los seres humanos a través de signos orales y escritos que poseen un significado. En un sentido más amplio, es cualquier procedimiento que sirve para comunicarse. Algunas escuelas lingüísticas entienden el lenguaje como la capacidad humana que conforma al pensamiento. MTI. ROSA IMELDA GARCÍA CHI
CLASIFICACIÓN DE LENGUAJES
MTI. ROSA IMELDA GARCÍA CHI
CONCEPTO DE LENGUAJE FORMAL
¿Qué es un lenguaje? Informalmente: • un lenguaje es un conjunto de palabras o sentencias formadas sobre un alfabeto
Pasaremos a definirlo de manera formal.
MTI. ROSA IMELDA GARCÍA CHI
CONCEPTO DE SÍMBOLO
Entidad no definida MTI. ROSA IMELDA GARCÍA CHI
CONCEPTO DE CADENA
Secuencia finita de símbolos
Se representa con w
MTI. ROSA IMELDA GARCÍA CHI
PALABRAS O CADENAS
• Secuencia PALABR finita de Ao símbolos CADENA pertenecientes : a un alfabeto. MTI. ROSA IMELDA GARCÍA CHI
PALABRAS O CADENAS
Notación: • últimas letras del abecedario en minúsculas (.. w, x, y, z)
Ejemplos: • • • •
Σ: a, b, aa, ab, ba, bb, abcd, aadd Binario: 011, 11011, 00, 11 Letras: casa, pieza, del, abc Español: la_casa_es_linda, el_perro_come_alegremente MTI. ROSA IMELDA GARCÍA CHI
PALABRAS O CADENAS La palabra vacía, que representamos con λ (lambda) o (epsilon)
• es aquella secuencia que no contiene símbolo alguno.
Prefijo:
• secuencia de cero o más símbolos iniciales de una palabra.
Sufijo:
• secuencia de cero o más símbolos finales de una palabra.
Subcadena:
• secuencia de símbolos obtenida al eliminar un sufijo o un prefijo de una palabra.
Σ*
• representa al conjunto de todas las palabras w formadas por símbolos de dicho alfabeto, es decir el Conjunto Universal de arreglos con repeticiones de símbolos sobre Σ.
Σ+
• representa al Conjunto Universal sin la palabra vacía.
o sea que:
• Σ+ = Σ* - { λ } MTI. ROSA IMELDA GARCÍA CHI
CADENA VACÍA
Cadena sin símbolos que se represent a con o λ
•||=|λ|= 0
MTI. ROSA IMELDA GARCÍA CHI
ALFABETO Definición (Alfabeto): • Conjunto finito, no vacío, de elementos. • Conjunto finito de símbolos. • Generalmente usaremos para especificar alfabetos y los elementos los denominaremos “letras” o “símbolos”.
Ejemplos: • • • • • • • •
Los alfafetos español, inglés o alemán 1={0,…,9}, 01 2={x | x es un símbolo del código ASCII} 3={(,)} 4={1, A, 2, B} 5={a, b, c, d} 6={} 7= MTI. ROSA IMELDA GARCÍA CHI
ALFABETO
ALFABET O:
• Conjunto finito no vacío de símbolos diferentes. MTI. ROSA IMELDA GARCÍA CHI
Hasta aquí miércoles 23
ALFABETO
Notación: • Nombre genérico de un alfabeto: Σ • Símbolos abstractos de un alfabeto: primeras letras del abecedario en minúscula (a, b, c, …)
Ejemplos: • • • •
Σ = { a, b, c , d } Binario = { 0, 1 } Letras = { a, b, c, d, e, ….., x, y, z } Español = {el, la, … , casa, perro, …, es, come, … , linda, alegremente, …} MTI. ROSA IMELDA GARCÍA CHI
LENGUAJES FORMALES: Definición (Lenguaje universal): • Sea un alfabeto. • El lenguaje universal de es el conjunto formado por todas las palabras que se pueden formar con las letras de . • Representamos dicho lenguaje con W() o L.
Ejemplos: • 1 ={a} ⇒ W(1)={, a, aa, aaa, ...}
Nota: • La palabra vacía pertenece a todos los lenguajes universales de todos los alfabetos posibles. MTI. ROSA IMELDA GARCÍA CHI
LENGUAJES FORMALES: Definición (Lenguaje): • Sea un alfabeto . • Un lenguaje L sobre es cualquier subconjunto del lenguaje universal W().
Ejemplos: • • • • • • • •
1 ={a} ⇒ W(1)={, a, aa, aaa, ...} L1 ={a} W(1) L2 ={} W(1) (L2 = ) L3 =1 W(1) L4 =W(1) W(1) L5 ={}={} W(1) (Nota: L5L2) L6 ={, a, aaa, aaaaa} W(1) L7 ={, a, aaa, aaaaa, ...} W(1)
Hay lenguajes finitos, infinitos y vacíos. MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN FORMAL DE LENGUAJE
LENGUAJ E:
• Cualquier subconjunto L del Conjunto Universal de palabras sobre un alfabeto Σ. MTI. ROSA IMELDA GARCÍA CHI
LENGUAJE FORMAL
Notación: • L1, L2, ….
Ejemplos: • • • •
Σ: L1 = {a, b, aa, ab, ba, bb, abcd, aadd} Binario: L2 = {011, 11011, 00, 11} Letras: L3 = {casa, pieza, del, abc} Español: L4 = {la_casa_es_linda, el_perro_come_alegremente} MTI. ROSA IMELDA GARCÍA CHI
LENGUAJE FORMAL
Podemos decir que: L Σ* Los siguientes son casos particulares significativos: • El Lenguaje Universal Σ* • El Lenguaje Vacío Ф • El Lenguaje Lλ = { λ } MTI. ROSA IMELDA GARCÍA CHI
CERRADURA DE UN ALFABETO
Sea Σ un alfabeto, entonces Σ* denota al lenguaje formado con todas las cadenas definidas sobre Σ.
Incluye la cadena vacía
MTI. ROSA IMELDA GARCÍA CHI
EJEMPLO Considere el alfabeto Σ={0,1}, entonces los siguientes son lenguajes definidos en Σ: • • • • • • • • •
L1={} L11= L2={} L3={0} L4={0, 1, 00, 01, 10, 11} L5={,0} L6={0, 00, 000, 0000,…} L7={101, 1001, 10001,…} L8={,0, 1, 00, 01, 10, 11, 000,…,111, 0000,…, 1111,…} MTI. ROSA IMELDA GARCÍA CHI
EJERCICIOS DE CLASE
LENGUAJES
GENERA 5 LENGUAJES (L 1 , 2 , 3 . . N ) A PARTIR DE LOS SIGUIENTES ALFABETOS ():
1={0,1,2,3} 2={la, le, li, lo, lu} 3={if, then, else} 4={a, b, c, d, e} 5={00,01,10,11} 6={+, *, $, #} HASTA AQUÍ GRUPO c, b viernes 23 AGO HASTA AQUÍ GRUPO A MARTES 20 AGO MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON PALABRAS O CADENAS
UNIDAD 1
OPERACIONES CON PALABRAS O CADENAS
Concatenaciรณn Potencia Longitud Inversa MTI. ROSA IMELDA GARCร A CHI
OPERACIONES CON PALABRAS O CADENAS
Concatenaciรณ n
MTI. ROSA IMELDA GARCร A CHI
DEFINICIÓN DE CONCATENACIÓN
Función con dominio en Σ*x Σ* y rango en Σ*. Tal que dadas las palabras u y v, la concatenación de u con v da como resultado otra palabra w formada por la secuencia de símbolos de u seguida de la secuencia de símbolos de v. MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DE LA CONCATENACIÓN Notación: Propiedades: Asociativa: No conmutativa: Elemento Neutro
• w = u.v • dadas las palabras {u, v, w} se cumplen las leyes: • (u.v).w = u.(v.w) • En general u.v ≠ v.u • λ: λ.u = u.λ = u
MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DE LA CONCATENACIÓN
Ejemplos: • Dado el alfabeto • Vocal = {a, e, i, o, u} entonces • iui . λ = iui=iuiλ • ae . ou = aeou • (ieu . aa) . u = ieu . (aa . u) = ieuaau MTI. ROSA IMELDA GARCÍA CHI
CONCLUSIÓN DE LA CONCATENACIÓN Operación cerrada: sí • Si x e y están definidos sobre , entonces xy está definido sobre .
Asociativa: sí • x(yz)=(xy)z
Elemento nulo: • x=x=x
Conmutatividad: no • xyyx MTI. ROSA IMELDA GARCÍA CHI
EJERCICIOS DE CLASE
CONCATENACIÃ&#x201C;N
EJERCICIO DE CONCATENACIÓN Sea = {0, 1, 2}, x = 00, y = 1, z = 210
Definir las siguientes palabras: xy, xz, yz, xyz, zxx
Sea = {ae, bi, co, du, ma, ne, ti, po, zu}, x = aeduma, y = bicotizu, z = mapone
Definir las siguientes palabras: xy, xz, yz, yx, yxz, zxy MTI. ROSA IMELDA GARCÍA CHI
SOLUCIÓN EJERCICIO DE CONCATENACIÓN Sea = {0, 1, 2}, x = 00, y = 1, z = 210
Definir las siguientes palabras: xy, xz, yz, xyz, zxx
SOLUCIÓN xy=001 Yz=1210 Xz=00210 Xyz=001210 Zxx=2100000 MTI. ROSA IMELDA GARCÍA CHI
SOLUCIÓN DE EJERCICIO DE CONCATENACIÓN Sea = {ae, bi, co, du, ma, ne, ti, po, zu}, x = aeduma, y = bicotizu, z = mapone
Definir las siguientes palabras: xy, xz, yz, yx, yxz, zxy
Solución xy=aedumabicotizu xz=aedumamapone yz=bicotizumapone yxz=bicotizuaedumamapone zxy=maponeaedumabicotizu yx=bicotizuaeduma MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON PALABRAS O CADENAS
Potenci a MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN DE POTENCIACIÓN
Función con dominio en Σ*x N y rango en Σ*.
Tal que dada la palabra u y el número natural i, la potencia con base u y exponente i da como resultado otra palabra w formada por una sucesión de i palabras u.
MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DE LA POTENCIACIÓN Notación: • w = ui
Propiedades: • Desde un punto de vista práctico la potencia es una forma reducida de representar la concatenación de una palabra consigo misma.
Por definición • u0 = λ y u1 = u
Ejemplos: • Dado el alfabeto Binario = {0, 1} entonces • 00 0 = λ 101 2= 101101 1 3= 111 01 5 = 0101010101 MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DE LA POTENCIA i, j > 0 • xi+1=xxi=xix • xixj=xi+j
Se define x0= (palabra vacía): • Si i=0 ⇒ x0+1=x1=x=x=xx0=x=x0x • Si i, j=0 ⇒ xixj=x0x0===x0=x0+0
Nota: • = ; x=x; x=x • |xi|=i|x| MTI. ROSA IMELDA GARCÍA CHI
O TR A D E F I N I C I Ó N ( P O T E N C I A ) :
Sea i un número natural, y x una palabra o cadena. La potencia i-ésima de x, denominada xi, es la operación que consiste en concatenarla consigo misma i veces. Ejemplos: • x =abc ⇒ x1=abc • x2=abcabc • x3=abcabcabc
MTI. ROSA IMELDA GARCÍA CHI
EJERCICIOS DE CLASE
POTENCIA
EJERCICIO DE POTENCIA
Sea = {0, 1, 2}, x = 00, y = 1, z = 210 Resuelve las siguientes potencias: x3, y 2 , x 2y 2, (xy) 2, (zxx) 3, z 1, x0y2
MTI. ROSA IMELDA GARCÍA CHI
SOLUCIÓN A EJERCICIO DE POTENCIA Sea = {0, 1, 2}, x = 00, y = 1, z = 210 Resuelve las siguientes potencias: X 3 =000000 Y 2 =11 x 2 y 2 =000011 (x+y) 2= x 2 +2xy+y 2 =0000+2001+11 (xy) 2 =(001) 2 =001001 (zxx) 3 =(2100000) 3 = 210000021000002100000 z 1 =210 x 0 y 2 =11 =11 MTI. ROSA IMELDA GARCÍA CHI
SOLUCIÓN DE EJERCICIO DE POTENCIA Sea = {0, 1, 2}, x = 00, y = 1, z = 210 Resuelve las siguientes potencias: x 3 , y 2 , x 2 y 2 , (xy) 2 , (zxx) 3 , z 1 , x 0 y 2
Solución X 3 = 000000 y 2 = 11 x 2 y 2 =000011 (xy) 2 =001001 (zxx) 3 =210000021000002100000 z 1 =210 x 0 y 2 =11 MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON PALABRAS O CADENAS
Longitu d MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN DE L O N G I T U D
Función con dominio en Σ* y rango en N. Tal que dada la palabra u la longitud de u da como resultado la cantidad de símbolos que forman la palabra. MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DE LA LONGITUD Notación: • w = | u | = long(u)
Propiedades: • La longitud de λ es cero • | u | representa la cantidad de símbolos a que hay en u
Ejemplos: • • • • • • • •
Dado el alfabeto Dígitos = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 } long(λ) = 0 | 00110 | = 5 long(1011) = 4 | 02643 | = 5 Dado el alfabeto binario={00, 10, 01, 11} |000110|=3 |1111111111|=5 MTI. ROSA IMELDA GARCÍA CHI
ENTONCES, LA LONGITUD DE UNA CADENA O PALABRA SE REPRESENTA Si W es una cadena,
|w| denota la longitud de la cadena o el número de símbolos de la cadena
También se puede utilizar long
MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN (LONGITUD DE UNA PALABRA O CADENA):
Se llama longitud de una palabra x, • y se representa por |x|, al número de símbolos que la componen.
Ejemplos: • • • •
sobre ={a,b,c,d}: ||=0, |a|=1, |abc|=3 MTI. ROSA IMELDA GARCÍA CHI
EJERCICIOS DE CLASE
CONCATENACIÃ&#x201C;N
CALCULA LA LONGITUD DE LAS SIGUIENTES CADENAS: Si ={sa, fe, gi, ro, un, wi, va, xe, bo, lu, c, h, j, q, t } Calcula la longitud de las siguientes cadenas: |sawixelu|= |rounqfegi|= |cluxeboqva|= |jchqro|= |robolugirosaunwi|= |chgirountxeh|= |fewiqfe|=
MTI. ROSA IMELDA GARCÍA CHI
SOLUCIÓN CALCULA LA LONGITUD DE LAS SIGUIENTES CADENAS: Si ={sa, fe, gi, ro, un, wi, va, xe, bo, lu, c, h, j, q, t } Calcula la longitud de las siguientes cadenas: |sawixelu|=4 |rounqfegi|=5 |cluxeboqva|=6 |jchqro|=5 |robolugirosaunwi|=8 |chgirountxeh|=8 |fewiqfe|=4
MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON PALABRAS O CADENAS
Inversa
MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN INVERSA
Función con dominio en Σ* y rango en Σ*.
Tal que dada la palabra u la inversa de u da como resultado la imagen especular de u.
MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DE LA INVERSA Notación: • w = u -1
Propiedades: • λ -1 = λ • Involutiva: (u -1 ) -1 = u
Si se cumple que: • u -1 = u entonces se dice que u es palíndromo
Ejemplos: • Dado el alfabeto Letras = { a, b, c, ...., z} entonces: arroz -1 = zorra • y haciendo caso omiso del espacio en blanco y la tilde, las siguientes palabras son palíndromos: “neuquén” ; “adán nada”; “dábale arroz a la zorra el abad” ; “satán sala las natas” MTI. ROSA IMELDA GARCÍA CHI
OTRA DEFINICIÓN (PALABRA INVERSA)
Sea x=A1A2...An con Ai una palabra sobre el alfabeto . • Se llama palabra refleja o inversa de x, y se representa por x-1, a la palabra AnAn-1...A1. • Si x=λ entonces x-1=λ
Ejemplos: • x =abc ⇒ x-1=cba
Propiedades de la palabra inversa: • |x-1|=|x|
MTI. ROSA IMELDA GARCÍA CHI
EJERCICIOS DE CLASE
INVERSA
EJERCICIOS DE INVERTIR UNA CADENA Sea = {0, 1, 2}, x = 010, y = 10, z = 121 Calcula la inversa: X -1 = Y -1 = (xy) -1 =( ) -1 = (yz) -1 =( ) -1 = (x) -1 (z) -1 = MTI. ROSA IMELDA GARCÍA CHI
SOLUCIÓN EJERCICIOS DE INVERTIR UNA CADENA Sea = {0, 1, 2}, x = 010, y = 10, z = 121 Calcula la inversa: X -1 =010 Y -1 =01 (xy) -1 =( 01010 ) -1 =01010 (yz) -1 =( 10121 ) -1 =12101 (x) -1 (z) -1 =010121 MTI. ROSA IMELDA GARCÍA CHI
EJERCICIOS DE INVERTIR UNA CADENA Sea = {ma, re, sa, i, k}, x = reima, y = ksare, z = iki Calcula la inversa: x -1 = y -1 = (xy) -1 =( ) -1 = (yz) -1 =( ) -1 = (x) -1 (z) -1 = MTI. ROSA IMELDA GARCÍA CHI
SOLUCIÓN EJERCICIOS DE INVERTIR UNA CADENA Sea = {ma, re, sa, i, k}, x = reima, y = ksare, z = iki Calcula la inversa: X -1 =maire Y -1 =resak (xy) -1 =( reimaksare ) -1 =resakmaire (yz) -1 =( ksareiki ) -1 =ikiresak (x) -1 (z) -1 =maireiki MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON LENGUAJES
UNIDAD 1
OPERACIONES CON LENGUAJES (U OTROS CONJUNTOS) UNION DIFERENCIA INTERSECCIÓN COMPLEMENTO PRODUCTO O CONCATENACIÓN POTENCIACIÓN CLAUSURA, CIERRE O ESTRELLA DE KLEENE CLAUSURA, CIERRE O ESTRELLA POSITIVA INVERSA O REFLEXIÓN MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON LENGUAJES (U OTROS CONJUNTOS)
UNION MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN DE UNION
Función con dominio en 2 * x 2 * y rango en 2 * Tal que dados los lenguajes L1 y L2, la unión entre L1 y L2 da como resultado otro lenguaje L3 formado por todas las palabras de L1 y todas las palabras de L2 sin repeticiones. MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DE LA UNIÓN Notación: • L3 = L1 L2
Propiedades: dados los lenguajes L1, L2 y L3 se cumplen las leyes: • Asociativa: • (L1 L2) L3 = L1 (L2 L3) • Conmutativa: • L1 L2 = L2 L1 • Elemento Neutro Ф: • Ф L1 = L1 Ф = L1
Ejemplos: • Dados L1 = { λ, ba }; L2 = { a, b, ab } y L3 = { aa, ab } entonces: • L1 L2 = { λ, a, b, ab, ba } • L2 L3 = { a, b, aa, ab } MTI. ROSA IMELDA GARCÍA CHI
LA UNIÓN DE LENGUAJES Sea el alfabeto y dos lenguajes L1W() y L2W(). La unión de L1 y L2, L1L2, es un lenguaje que se define de la siguiente forma: L1 L2={x|xL1 o xL2}.
Propiedades de la unión: Operación cerrada: L1 W(), L2 W() ⇒ L1 L2 W() (la unión de dos lenguajes sobre el mismo alfabeto es también un lenguaje sobre este alfabeto) Asociativa: (L1 L2) L3=L1 (L2 L3) Elemento neutro: Ф L1, N L1 = L1 ¿Q ue es N? Conmutativa: L1 L2 = L2 L1 Idempotencia: L L = L
MTI. ROSA IMELDA GARCÍA CHI
EJERCICIOS DE CLASE
UNIÃ&#x201C;N
EJERCICIOS DE UNIÓN DE LENGUAJES Dados
L1 = { λ, aba, ebe, obu }; L2 = { d a, d e, d i } L3 = { a, e, i, o, u } L4={a, ebe, o, di}
entonces:
L1 L2 ={ L1 L3 ={ L2 L2 = { L1 L4 ={ L3 L4= { L1 L3 L4={
} } } } } }
MTI. ROSA IMELDA GARCÍA CHI
SOLUCIÓN EJERCICIOS UNIÓN Dados
L1 = {λ, ab a, ebe, ob u }; L2 = { d a, d e, d i } L3 = { a, e, i, o, u } L4={a, ebe, o, di}
entonces:
L1 L2 ={λ, aba, ebe, ob u, da, de, di } L1 L3 ={ } L2 L2 = {da, de, di } L1 L4 ={ } L3 L4= {a, e, i, o, u, ebe, d i } L1 L3 L4={ }
MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON LENGUAJES (U OTROS CONJUNTOS)
DIFERENCIA MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN DE DIFERENCIA
Función con dominio en 2 *x 2 * y rango en 2 *
Tal que dados los lenguajes L1 y L2, la diferencia entre L1 y L2 da como resultado otro lenguaje L3 formado por todas las palabras de L1 excepto aquellas que pertenezcan también a L2. MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DE LA DIFERENCIA Notación: • L3 = L1 - L2
Propiedades: • dados los lenguajes L1, L2 y L3 se cumplen las leyes:
No Asociativa: • (L1 - L2) - L3 ≠ L1 - (L2 - L3)
No Conmutativa: • en general L1 - L2 ≠ L2 - L1
Elemento Neutro Ф: • L1 - Ф = L1
Ejemplos: • Dados L1 = { λ, a, ab }; L2 = { a, b, ba } y L3 = { a, b, ab } entonces: • L1 - L2 = { λ, ab }={ab} • L2 - L3 = { ba } • L1 - L3 = { λ }=Ф MTI. ROSA IMELDA GARCÍA CHI
OTRAS OPERACIONES CLÁSICAS DE CONJUNTOS: DIFERENCIA Sean dos lenguajes L1 y L2. • La diferencia de L1 y L2, L1- L2 (o L1\L2) es el lenguaje que se define por: • L1- L2={x|xL1 y x L2}.
Propiedades de la diferencia • • • • •
Cerrada: L1W() , L2 W() ⇒ L1-L2 W() No es asociativa: ( L1, L2: (L1-L2)-L3=L1-(L2-L3)) No es conmutativa: ( L1, L2: L1-L2=L2-L1) No es idempotente: L: L-L= A-=A MTI. ROSA IMELDA GARCÍA CHI
EJERCICIOS DE CLASE
DIFERENCIA
DIFERENCIA Dados
L1 = {00, 01, 10, 11} L2 = { 0,00,000, 1, 11, 111} L3 = { 01, 001, 0001,00001} L4={00, 11, 000, 111}
entonces:
L1-L2={ L1-L3={ L3-L2={ L3-L1={ L2-L4-L1={ } L4-L3={
} } } } } - { }
MTI. ROSA IMELDA GARCÍA CHI
}={
SOLUCIÓN EJERCICIOS DE DIFERENCIA DE LENGUAJES Dados
L1 = {00, 01, 10, 11} L2 = { 0,00,000, 1, 11, 111} L3 = { 01, 001, 0001,00001} L4={00, 11, 000, 111}
entonces:
L1-L2={01, 10} L1-L3={00, 10, 11 } L3-L2={01, 001, 0001,00001} L3-L1={001, 0001,00001} L2-L4-L1={ 0, 1 } - {00, 01, 10, 11}={0, 1 } L4-L3={00, 11, 000, 111 }
MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON LENGUAJES (U OTROS CONJUNTOS)
INTERSECCIÓN MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN DE INTERSECCIÓN
Función con dominio en • 2 * x 2 * y rango en 2 *
Tal que dados los lenguajes L1 y L2, la intersección entre L1 y L2 da como resultado • otro lenguaje L3 formado por todas las palabras que pertenecen a L1 y que también pertenecen a L2.
MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DE LA INTERSECCIÓN Notación: • L3 = L1 L2
Propiedades: • dados los lenguajes L1, L2 y L3 se cumplen las leyes:
Asociativa: • (L1 L2) L3 = L1 (L2 L3)
Conmutativa: • L1 L2 = L2 L1
Elemento Neutro Σ*: • Σ* L1 = L1 Σ* = L1
Ejemplos: • Dados L1 = { λ, a, ab }; L2 = { a, b, bb } y L3 = { b, bb, aa } entonces: • L1 L2 = { a } • L2 L3 = { b, bb } • L1 L3 = Ф MTI. ROSA IMELDA GARCÍA CHI
OTRAS OPERACIONES CLÁSICAS DE CONJUNTOS: I N T E R S E C C I Ó N Sean dos lenguajes L1 y L2.
• •
La intersección de L1 y L2, L1 L2, es el lenguaje que se define por: L1 L2={x|xL1 y xL2}.
Propiedades de la intersección Cerrada: Asociativa:
• L1W() , L2 W(S) ⇒ L1L2 W() • (L1 L2) L3=L1 (L2 L3)
Conmutativa:
• L1 L2= L2 L1
Idempotencia:
• L L=L • L = MTI. ROSA IMELDA GARCÍA CHI
EJERCICIOS DE CLASE
INTERSECCIÃ&#x201C;N
INTERSECCIÓN DADOS LOS SIGUIENTES LENGUAJES: L1={111, 321, 123, 453, 891, 762} L2={111, 222, 333, 321, 123} L3={768, 45, 232, 453}
CALCULA:
L1 L2={ } (L1 L2) L3={ } L2 L3={ } L1 L3={ }
MTI. ROSA IMELDA GARCÍA CHI
SOLUCIÓN EJERCICIOS DE INTERSECCIÓN DE LENGUAJES DADOS LOS SIGUIENTES LENGUAJES: L1={111, 321, 123, 453, 891, 762} L2={111, 222, 333, 321, 123} L3={768, 45, 232, 453}
CALCULA:
L1 L2={ 111, 321, 123 } (L1 L2) L3={}= L2 L3={} = L1 L3={453}
MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON LENGUAJES (U OTROS CONJUNTOS)
COMPLEMENTO MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN DE COMPLEMENTO
Función con dominio en 2 * y rango en 2 *
Tal que dado el lenguaje L1, el complemento de L1 da como resultado otro lenguaje L3 formado por todas las palabras que pertenecen a Σ* y que no pertenecen a L1.
MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DEL COMPLEMENTO Notación: • L3 = ~L1 = L1
Propiedades: • ~L1 = Σ* - L1 • ~Σ* = Ф y ~Σ+ = Lλ
Involutiva: • ~(~L1) = L1
Ejemplos: • Dado L1 = { λ, a, b } entonces: • ~L1 = {todas las secuencias de a y/o b excepto la palabra vacía y las palabras unisimbólicas a y b } MTI. ROSA IMELDA GARCÍA CHI
OTRAS OPERACIONES CLÁSICAS DE CONJUNTOS: C O M P L E M E N T O Sea L un lenguaje sobre el alfabeto . El complemento de L, denotado con (o con c(L)) es el siguiente lenguaje: • ={x|xW() y xL}
Propiedades del complemento • Cerrada: LW() ⇒ W() • = • =L MTI. ROSA IMELDA GARCÍA CHI
EJERCICIOS DE CLASE
COMPLEMENTO
COMPLEMENTO DADO EL ALFABETO Y LOS SIGUIENTES LENGUAJES: *={, 0O,000,0000, 11, 111, 1111, 01, 10, 0001, 1000, 1001, 0110}
Calcula los complementos: L1={00, 01, 10,11}, el complemento de (L1)={
}
L2={000, 01, 1001, 1111}, el complemento de (L2)={ L3={00, 000, 0000}, el complemento de (L3)={ }
MTI. ROSA IMELDA GARCÍA CHI
}
SOLUCIÓN EJERCICIOS DE COMPLEMENTO DADO EL ALFABETO Y LOS SIGUIENTES LENGUAJES: *={, 0O,000,0000, 11, 111, 1111, 01, 10, 0001, 1000, 1001, 0110}
Calcula los complementos: L1={00, 01, 10,11}, el complemento de (L1)={,111, 1111, 0001, 1000, 1001, 0110 } L2={000, 01, 1001, 1111}, el complemento de (L2)={, 0O, 0000, 11, 111, 10, 0001, 1000, 0110 } L3={00, 000, 0000}, el complemento de (L3)={, 11, 111, 1111, 01, 10, 0001, 1000, 1001, 0110 }
MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON LENGUAJES (U OTROS CONJUNTOS)
PRODUCTO O CONCATENACIÓN MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN DE PRODUCTO O CONCATENACIÓN
Función con dominio en 2 * x 2 * y rango en 2 *
• Tal que dados los lenguajes L1 y L2, el producto o concatenación entre L1 y L2 da como resultado otro lenguaje L3 formado por todas las palabras que resultan de concatenar una palabra de L1 con una palabra de L2 y solo en ese orden.
MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DEL PRODUCTO O CONCATENACIÓN Notación: • L3 = L1 .L2
Propiedades: • dados los lenguajes L1, L2 y L3 se cumplen las leyes:
Asociativa: • (L1 . L2) . L3 = L1 . (L2 . L3)
No Conmutativa: • en general L1 . L2 ≠ L2 . L1
Elemento Neutro Lλ: • Lλ . L1 = L1 . Lλ = L1
Ejemplos: • Dados L1 = { λ, a }; L2 = { b, bb } y L3 = { aa } entonces: • L1 . L2 = { b, bb, ab, abb } • L2 . L3 = { baa, bbaa } • L2 . Ф = Ф MTI. ROSA IMELDA GARCÍA CHI
CONCATENACIÓN: Sean dos lenguajes L1, L2. La concatenación de L1 y L2, representado por L1L2 (a veces por L1.L2), es un lenguaje que se define de la siguiente forma: L1L2={xy|xL1 , yL2}. Ejemplos: ={a,b,c} • L1 ={ab, ac, cb}; L2={b, bba} ⇒L1L2={abb,abbba,acb,acbba,cbb,cbbba} • L1 ={a, aa, aaa, ...}; L2={, b, bb, bbb, ...} ⇒ L1L2=¿?
¿Qué pasa si L1 o L2 es ? MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DE LA CONCATENACIÓN Cerrada: • L1W(), L2W() ⇒ L1L2W()
Asociativa: • (L1L2)L3 = L1(L2L3)
No es conmutativa: • (L1, L2: L1L2=L2L1)
Elemento neutro({}): • L1: L1{}={}L1=L1
No es idempotente: • ( L: LL=L) MTI. ROSA IMELDA GARCÍA CHI
EJERCICIOS DE CLASE
CONCATENACIÃ&#x201C;N
CONCATENACIÓN Dados los siguientes lenguajes:
L1={a1, b2, c3} L2={a, aa, aaa} L3={1, 2, 3} L4={a, ab, abc}
Calcula las siguientes concatenaciones
L1.L2={ } L2.L3={ } L3.L4={ } L1.L2.L4={ } L3.L3= { } L2.L2={ }
MTI. ROSA IMELDA GARCÍA CHI
SOLUCIÓN EJERCICIOS DE CONCATENACIÓN DE LENGUAJES Dados los siguientes lenguajes:
L1={a1, b2, c3} L2={a, aa, aaa} L3={1, 2, 3} L4={a, ab, abc}
Calcula las siguientes concatenaciones
L1.L2={ a1a, a1aa, a1aaa, b2a, b2aa, b2aaa, c3a, c3aa, c3aaa } L2.L3={a1, a2, a3, aa1, aa2, aa3, aaa1, aaa2, aaa3 } L3.L4={ 1a, 1ab, 1abc, 2a, 2ab, 2abc, 3a, 3ab, 3abc } L1.L2.L4={ } L3.L3= {11,12,13,21,22,23,31,32,33 } L2.L2={ aa,aaa,aaaa,aaa,aaaaa }
MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON LENGUAJES (U OTROS CONJUNTOS)
POTENCIACIÓN MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN DE POTENCIACIÓN
Función con dominio en 2 * x N y rango en 2 *
Tal que dado el lenguaje L1 y el número natural i mayor o igual que 2, la potencia con base L1 y exponente i da como resultado otro lenguaje L3 formado por el producto de L1 consigo mismo (i - 1) veces
MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DE LA POTENCIA Notación: • L3 = L1 i
Propiedades: • Desde un punto de vista práctico la potencia es una forma reducida de representar el producto de un lenguaje consigo mismo.
Por definición • L1 0 = λ
y
L1 1 = L1
Ejemplos: • Dados L1 = { a, b } L2 = { bab, bb, ab } • L1 3 = { a, b } .{ a, b } .{ a, b } ={ aaa, aab, aba, abb, baa, bab, bba, bbb } • L2 2 = { babbab, babbb, babab, MTI. ROSA bbbab, IMELDA GARCÍAbbbb, CHI bbab, abbab, abbb,
POTENCIA DE UN LENGUAJE La potencia i-ésima de un lenguaje L consiste en el lenguaje resultante de concatenar el lenguaje consigo mismo i veces. • Li = LLL...L (i veces)
Propiedades de la potencia • Cerrada: L W() ⇒ Li W() • Li+1 = LiL = LLi (i>0) • LiLj = Li+j (i,j>0)
¿Que pasa si i, j = 0? • Se define L0 = {} • L0+1 = L1 = L = {}L=L0L • L0L0= {}{} ={}=L0 = L0+0 MTI. ROSA IMELDA GARCÍA CHI
EJEMPLOS DE POTENCIA DE UN LENGUAJE
L1 = {,ab, ac} • ⇒L12={,ab,ac,abab,abac,acab,acac} • ⇒L13={,ab,ac,abab,abac,acab,acac,ababab,ababac, abacab,abacac,acabab,acabac,acacab,acacac}
L2 = {a, aa, aaa, ...} • ⇒ L22=¿? • ⇒ L23=¿? MTI. ROSA IMELDA GARCÍA CHI
EJERCICIOS DE CLASE
POTENCIA
POTENCIA Dados los siguientes lenguajes:
L1={a1, b2, c3} L2={a, aa, aaa} L3={1, 2, 3} L4={a, ab, abc}
Calcula las siguientes concatenaciones
L1 2 L2 2 L3 3 L4 3
={a1, b2, c3} . {a1, b2, c3 }= ={ a,aa,aaa}. { a,aa,aaa}={ } ={1, 2, 3}. {1, 2, 3}. {1, 2, 3}={} ={a, ab, abc}. {a, ab, abc}. {a, ab, abc}={ }
MTI. ROSA IMELDA GARCÍA CHI
SOLUCIÓN EJERCICIOS DE POTENCIA Dados los siguientes lenguajes:
L1={a1, b2, c3} L2={a, aa, aaa} L3={1, 2, 3} L4={a, ab, abc}
Calcula las siguientes concatenaciones L1 2 ={a1, b2, c3} . {a1, b2, c3}={ a1a1,a1b2,a1c3, b2a1, b2b2,b2c3, c3a1,c3b2, c3c3 } L2 2 ={ a,aa,aaa}. { a,aa,aaa}={aa,aaa,aaaa,aaa,aaaa,aaaaa,aaaa,aaaaa,aaaaaa} L3 3 ={1, 2, 3}. {1, 2, 3}. {1, 2, 3}={} ={ 1 , 2 , 3 } . { 1 , 2 , 3 } . {1, 2, 3}={11, 12, 13, 21, 22, 23, 31, 32, 33} . {1, 2, 3} ={ } L4 3 ={a, ab, abc}. {a, ab, abc}. {a, ab, abc}={aaa, aaab, aaabc,…}
MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON LENGUAJES (U OTROS CONJUNTOS)
CLAUSURA, CIERRE O ESTRELLA DE KLEENE MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN DE CLAUSURA, CIERRE O ESTRELLA DE KLEENE
Función con dominio en 2 * y rango en 2 * Tal que dado el lenguaje L1, la operación “L1 estrella” (L1*) da como resultado otro lenguaje L3 formado por todas las potencias de base L1 y exponente i, desde i igual a cero hasta infinito. MTI. ROSA IMELDA GARCÍA CHI
CLAUSURA, CIERRE O ESTRELLA DE KLEENE Notación: • L3 = L1 *= L1 0 L1 1 L1 2 …… =
Propiedades: • (L1*) *= L1*
Por definición Ф* = Lλ y Lλ* = Lλ Ejemplos: • Dado L1 = { aa, ab, ba, bb } • L1*= { todas las secuencias de a y/o b de long. par incluida la vacía} MTI. ROSA IMELDA GARCÍA CHI
CLAUSURA, ITERACIÓN, CIERRE O ESTRELLA DE KLEENE La clausura de un lenguaje L se define por: Nota: Propiedades de la clausura:
• L*=
• L: L*, ya que {}=L0. • Cerrada: LW()⇒ L+ W() , L* W() • L*=L0 ()= L0 L++={} L+ • L+ =LL*= L*L • Demostración¿?
MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON LENGUAJES (U OTROS CONJUNTOS)
CLAUSURA, CIERRE O ESTRELLA POSITIVA MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN DE CLAUSURA, CIERRE O ESTRELLA POSITIVA Función con dominio en 2 * y rango en 2 * Tal que dado el lenguaje L1, la operación “L1 estrella positiva” da como resultado otro lenguaje L3 formado por todas las potencias de base L1 y exponente i, desde i igual a uno hasta infinito. MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN DE CLAUSURA, CIERRE O ESTRELLA POSITIVA Notación: • L3 = L1 += L1 1 L1 2 L1 3 …… = )
Propiedades: • (L1 +) + = L1 +
Por definición • Ф += Ф y Lλ + = Lλ
Ejemplos: • Dado L1 = { aa, ab, ba, bb } L2 = { λ, aa, ab, ba, bb } • L1 + = { todas las secuencias de a y/o b de long. par } • L2 + = L2*
MTI. ROSA IMELDA GARCÍA CHI
CLAUSURA POSITIVA La clausura positiva de un lenguaje L se define por: • L +=
Ejemplos: • • • • • •
L ={a,aa,aaa,aaaa,...} = {an | n1} ⇒ L2={ aa,aaa,aaaa,...} = {anam | n,m 1} = {an | n 2} ⇒ L3={ aaa,aaaa,...} = {anam | n 1, m 2} = {an | n 3} ⇒ L+= ={a,aa,aaa,aaaa,...} = L ={a,b}, es un lenguaje sobre , ya que W() += ={a,b,aa,ab,ba,bb,aaa,...} = W() - {}
Nota: • Si L, entonces L+. MTI. ROSA IMELDA GARCÍA CHI
OPERACIONES CON LENGUAJES (U OTROS CONJUNTOS)
INVERSA O REFLEXIÓN MTI. ROSA IMELDA GARCÍA CHI
DEFINICIÓN DE INVERSA O REFLEXIÓN
Función con dominio en 2 * y rango en 2 *
Tal que dado el lenguaje L1, la inversa de L1 da como resultado otro lenguaje L3 formado por todas las inversas correspondientes a las palabras de L1.
MTI. ROSA IMELDA GARCÍA CHI
PROPIEDADES DE LA INVERSA O REFLEXIÓN Notación: • L3 = L -1
Propiedades Distributiva: • (L1 . L2) -1 = L2 -1 . L1 • (L1*) -1 = (L1 -1 )*
-1
Involutiva: (L1 -1 ) -1 = L1 Ejemplos: • Dados L1 = { ab, bb } L2 = { aa, ba } • L1.L2 = { abaa, abba, bbaa, bbba} • ( L1 . L2 ) -1 = { aaba, abba, aabb, abbb } • L2 -1 = { aa, ab } • L1 -1 = { ba, bb } • L2 -1. L1 -1 = { aaba, abba, aabb, abbb } = ( L1 . L2 ) -1 ¿es igual? MTI. ROSA IMELDA GARCÍA CHI
REFLEXIÓN Sea L un lenguaje. Se llama lenguaje inverso (lenguaje reflejo) de L, y se representa por L-1 al lenguaje: L-1={x-1|xL}. Ejemplos: • • • •
L ={ana, julio, jesus, norma} ⇒ L-1={ana, oiluj, susej, amron} L ={a,aa,aaa,...} ⇒ ¿L-1? Propiedades de la reflexión: Cerrada: LW() ⇒ L-1 W() MTI. ROSA IMELDA GARCÍA CHI
EJERCICIOS DE CLASE
INVERSA
REFLEXIÓN O INVERSA DADO LOS SIGUIENTES LENGUAJES: L1={1234, 5678, 9101, 3456, 8765} L2={then, else, if, for, while, do} L3={Antonio, Guadalupe, Martha, Emiliano}
Calcula: L1 -1 ={} L2 -1 ={} L3 -1 ={}
MTI. ROSA IMELDA GARCÍA CHI
SOLUCIÓN EJERCICIOS DE REFLEXIÓN O INVERSA DADO LOS SIGUIENTES LENGUAJES: L1={1234, 5678, 9101, 3456, 8765} L2={then, else, if, for, while, do} L3={Antonio, Guadalupe, Martha, Emiliano}
Calcula: L1 -1 ={4321, 8765, 1019, 6543, 5678} L2 -1 ={neht, esle, fi, rof, elihw, od} L3 -1 ={oinotnA, epuladauG, ahtraM, onailimE}
MTI. ROSA IMELDA GARCÍA CHI
CONCLUSIÓN GRÁFICA
LENGUAJES
REPRESENTACIÓN GRAFICA OPERACIONES CON CONJUNTOS O LENGUAJES
MTI. ROSA IMELDA GARCÍA CHI
OTRAS LEYES DE LAS OPERACIONES SOBRE CONJUNTOS
OPERACIONES CON LENGUAJES
LEYES DE OPERACIONES DE CONJUNTOS
MTI. ROSA IMELDA GARCÍA CHI
EJEMPLOS DE OPERACIONES
con Palabras y con Lenguajes
EJEMPLO 1 Dado el alfabeto Letras = { a, b, c, .…, z } Haciendo caso omiso de las tildes y los espacios en blanco, los siguientes son casos curiosos de palíndromos: • ananá, oso, ojo, asa, ala, sus, allá, anilina, reconocer, somos, aérea, rasar, atar a la rata, alábala a la bala, anita lava la tina, arroz a la zorra, dábale arroz a la zorra el abad
diversas palabras del español resultan de concatenar dos o más palabras del mismo lenguaje: • limpia.para.brisas = limpiaparabrisas • bala . cera = balacera • casa . miento = casamiento • agua . tero = aguatero • rápida . mente = rápidamente • villa . nada = villanada
las siguientes palabras y sus inversas tienen distintos significados: • odio, oído, osar, raso, orar, raro, lava, aval, raza, azar, acera, areca MTI. ROSA IMELDA GARCÍA CHI
EJEMPLO 2 Dado el alfabeto Sílabas = { ma, mon, mo, ca, co, li, ra, re, ro, ta, to, ja, bron } haciendo caso omiso de las tildes tenemos los siguientes palíndromos: • maroma, cólico, retaré, remaré, coco, caca, caraca
las siguientes palabras y sus inversas tienen significados distintos: • jamón, monja, bronca, cabrón, mora, ramo, coca, caco, • raco, cora, maca, cama, coma, maco, como, moco, • rata, tara, roca, caro, tomón, monto, rato, tora MTI. ROSA IMELDA GARCÍA CHI
EJEMPLO 3 Dado el alfabeto Σ = { a, b, c, …, z, 0, 1, … 9 , _ } se puede definir los siguientes lenguajes unisimbólicos : • Letras = { a, b, c, …. , z } • Dígitos = { 0, 1, 2, 3, …. , 9} • Guión = { _ }
Combinando convenientemente estos lenguajes se puede representar el conjunto de todos los identificadores de un lenguaje de programación: • Identificador = (Letras Guión) . (Letras Dígitos Guión)*
MTI. ROSA IMELDA GARCÍA CHI
NIVELES DE UN LENGUAJE
LENGUAJES Y AUTOMATAS
NIVELES DE UN LENGUAJE
Con el objetivo de estudiar una frase o sentencia, se puede considerar 4 niveles de lenguajes. Esto facilita la tarea de anĂĄlisis, ya que la divide en fases o etapas que permiten un procesamiento escalonado del lenguaje; desde un menor nivel de complejidad a un mayor nivel de complejidad. MTI. ROSA IMELDA GARCĂ?A CHI
ESTOS NIVELES SON:
MTI. ROSA IMELDA GARCÍA CHI
NIVEL LEXICOGRÁFICO: Se refiere al reconocimiento del léxico de un lenguaje o sea la identificación de los símbolos del alfabeto del lenguaje, llamados componentes léxicos. Es lo que normalmente llamamos diccionario.
También incluye la clasificación en tipos de componentes léxicos.
Cabe destacar que este nivel no depende del contexto.
MTI. ROSA IMELDA GARCÍA CHI
NIVEL LEXICOGRÁFICO: Por ejemplo: Diccionario del Lenguaje de programación C++:
Tipos de componentes léxicos de C++: palabras claves, delimitadores, operadores, identificadores, números, etc. MTI. ROSA IMELDA GARCÍA CHI
NIVEL SINTÁCTICO
Se trata de la forma en la que los componentes léxicos se organizan dentro de una frase o sentencia, es decir la estructura de dicha secuencia de símbolos.
Este nivel es independiente o libre del contexto.
MTI. ROSA IMELDA GARCÍA CHI
NIVEL SINTÁCTICO Por ejemplo: Lenguaje de programación C++: Estructura de una sentencia selectiva • if ( exp.lógica ) sentencia else sentencia;
Estructura de una sentencia de asignación: • identificador = expresión ; • if (N>=0) S1 = S1 + N; else S2 = S2 + N; MTI. ROSA IMELDA GARCÍA CHI
NIVEL SEMÁNTICO Se refiere al significado o connotación de una palabra de un lenguaje. Tiene en cuenta la coherencia de una frase o sentencia. Este nivel es dependiente del contexto.
MTI. ROSA IMELDA GARCÍA CHI
NIVEL SEMÁNTICO
Por ejemplo: Lenguaje de programación C++: Comprobación de Tipos: verificación de la correspondencia entre las declaraciones de identificadores y el uso de dichos identificadores.
Observación: En este caso la sentencia es incorrecta semánticamente, ya que se utiliza una variable I de tipo float como índice del arreglo V. MTI. ROSA IMELDA GARCÍA CHI
NIVEL PRAGMÁTICO
Tiene que ver con los hechos o acciones que evocan las frases o sentencias de un lenguaje y su utilización por parte de un procesador humano o computacional.
Este nivel es dependiente del contexto.
MTI. ROSA IMELDA GARCÍA CHI
NIVEL PRAGMÁTICO
Por ejemplo:
Lenguaje de programación C++: Una sentencia de entrada implica la espera del dato que ingresa por el periférico correspondiente, la toma desde el buffer de dicho periférico, la verificación del formato y de la coherencia del mismo; y almacenamiento en la posición de memoria RAM correspondiente al identificador de la variable.
Observación: Para que no se produzca un error pragmático, en tiempo de ejecución, el operador debe introducir un dato de tipo numérico.
MTI. ROSA IMELDA GARCÍA CHI
RESUMEN GRร FICO DE LA UNIDAD 1
Introducciรณn a los lenguajes
GRACIAS rosa.garcia@tecvalles.mx
Por su atenciรณn