Teoría de la Computabilidad



Documentos relacionados
Capítulo 1 Lenguajes formales 6

Pregunta 1 [40 puntos] Diga si las siguientes afirmaciones son verdaderas o falsas, demostrando su respuesta.

Teoría de Lenguajes. Teoría de la Programación I

Cualquier lenguaje de contexto libre, L, puede ser generado por medio de una GCL, G, que cumpla las siguientes condiciones:

Una cadena sobre Σ es cualquier secuencia de elementos de longitud finita sobre Σ.

y los conos serán todos los diagramas (acá usamos la palabra en el sentido habitual, no en el que acabamos de definir) de la forma

Las Funciones Analíticas. f (z 0 + h) f (z 0 ) lim. h=z z 0. = lim

Estructuras Algebraicas Una estructura algebraica es un objeto matemático consistente en un conjunto no vacío, con por lo menos una operación binaria.

Subespacios vectoriales en R n

Números Reales. MathCon c

Subconjuntos destacados en la

1. Producto escalar, métrica y norma asociada

Nota 2. Luis Sierra. Marzo del 2010

Ejemplos y problemas resueltos de análisis complejo ( )

Grupos. Subgrupos. Teorema de Lagrange. Operaciones.

Sistemas de vectores deslizantes

ESTRUCTURAS ALGEBRAICAS 1

1. Objetivos. 2. Idea Principal. Teoría de Autómatas y Lenguajes Formales. Boletín de Autoevaluación 3: Cómo se minimiza un AFD?.

Apuntes de Matemática Discreta 1. Conjuntos y Subconjuntos

Anexo 1: Demostraciones

4.1 El espacio dual de un espacio vectorial

1-Comportamiento de una función alrededor de un punto:

Números algebraicos. Cuerpos de números. Grado.

Definición 1 Un carrier para un juego v es una coalición T tal que para cualquier S, v(s) = v(s T ).

Notemos que un camino puede repetir aristas y vértices, es decir, pasar varias veces por las mismas aristas y los mismo vértices.

Autómatas Finitos. Leopoldo Altamirano, Eduardo Morales. Verano, 2011 INAOE. Introducción a. Autómatas. Definición formal de un. Finito Determinístico

VII. Estructuras Algebraicas

ESTRUCTURAS ALGEBRAICAS. Parte 1

Matrices equivalentes. El método de Gauss

Apuntes de Matemática Discreta 9. Funciones

Problemas indecidibles

Listas de vectores y conjuntos de vectores

1. Números Reales 1.1 Clasificación y propiedades

Operaciones Morfológicas en Imágenes Binarias

Teoría de Autómatas, Lenguajes Formales y Gramáticas. David Castro Esteban

9.1 Primeras definiciones

4 APLICACIONES LINEALES. DIAGONALIZACIÓN

Introducción a la Teoría de Grafos

DERIVADA DE UNA FUNCIÓN DEFINIDA EN FORMA PARAMÉTRICA

Ejemplo 1.2 En el capitulo anterior se demostró que el conjunto. V = IR 2 = {(x, y) : x, y IR}

Definición Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas.

XLIV Olimpiada Matemática Española Fase nacional 2008 (Valencia) PRIMERA SESIÓN (28 de marzo)

Juan Antonio González Mota Profesor de Matemáticas del Colegio Juan XIII Zaidín de Granada

Tema 3. Espacios vectoriales

Escenas de episodios anteriores

BASES Y DIMENSIÓN. Propiedades de las bases. Ejemplos de bases.

LÍMITES Y CONTINUIDAD DE FUNCIONES

Caracterización de los campos conservativos

Dominios de factorización única

Matemáticas Discretas

TEMA 1: SISTEMAS INFORMÁTICOS. Parte 2: representación de la información

Aplicaciones lineales continuas

DOMINIO Y RANGO página 89. Cuando se grafica una función existen las siguientes posibilidades:

RELACIONES DE RECURRENCIA

I. ALGEBRA DE BOOLE. c) Cada operación es distributiva con respecto a la otra: a. ( b + c) = a. b + a. c a + ( b. c ) = ( a + b ).

Diferenciabilidad. Definición 1 (Función diferenciable). Cálculo. Segundo parcial. Curso

FORMA CANONICA DE JORDAN Y ECUACIONES DIFERENCIALES LINEALES A COEFICIENTES CONSTANTES

CAPÍTULO III. FUNCIONES

Aplicaciones Lineales y Multilineales Continuas

Segundo de Bachillerato Geometría en el espacio

Límite y continuidad de funciones de varias variables

Aplicaciones abiertas y cerradas

2. Aquí se muestra la fecha de captura y el número de folio correspondiente a la solicitud, ambos datos son capturados por el sistema.

MÓDULO 2. LEYES FINANCIERAS DE CAPITALIZACIÓN Y DESCUENTO SIMPLE

ESTRUCTURAS ALGEBRAICAS

Módulo 9 Sistema matemático y operaciones binarias

Aplicaciones Lineales

Álgebras de Boole. Juan Medina Molina. 25 de noviembre de 2003

1 Espacios y subespacios vectoriales.

Cómo?: Resolviendo el sistema lineal homógeneo que satisfacen las componentes de cualquier vector de S. x4 = x 1 x 3 = x 2 x 1

EXÁMENES DE REPASO Teoría de Autómatas y Lenguajes Formales UNIVERSIDAD FRANCISCO DE VITORIA

Estructuras algebraicas

Nota 1. Los determinantes de orden superior a 3 se calculan aplicando las siguientes propiedades:

Tema 1. Representación de la información MME

ANÁLISIS DE DATOS NO NUMERICOS

INTRODUCCIÓN A LA PROGRAMACIÓN MATEMÁTICA

Lógica Proposicional IIC2212. IIC2212 Lógica Proposicional 1 / 56

Tema 12: Teorema de Herbrand

Límites y Continuidad de funciones

Relaciones binarias. ( a, b) = ( c, d) si y solamente si a = c y b = d

Estructuras algebraicas

Diagonalización de matrices

Tema 2. Espacios Vectoriales Introducción

1. Se establecen los conceptos fundamentales (símbolos o términos no definidos).

4 Aplicaciones Lineales

TEMA: EVALUACION DE ALTERNATIVAS

Espacios generados, dependencia lineal y bases

MICROECONOMÍA II PRÁCTICA TEMA III: MONOPOLIO

Materia: Informática. Nota de Clases Sistemas de Numeración

Problemas Resueltos de Desigualdades y Programación Lineal

Funciones de varias variables

Juegos Cooperativos. Core

Datos del autor. Nombres y apellido: Germán Andrés Paz. Lugar de nacimiento: Rosario (Código Postal 2000), Santa Fe, Argentina

UNIDAD I: LÓGICA PROPOSICIONAL

Funciones de dos variables. Gráficas y superficies.

1. SOLUCIONES A LOS EJERCICIOS PROPUESTOS

Transcripción:

LC vs. Regulares Teoría de la Computabilidad GLC APND Módulo 5: Propiedades de lenguajes libres de contexto regulares Libres de Contexto 015 Departamento de Cs. e Ing. de la Computación Universidad Nacional del Sur Bahía Blanca, Argentina GR AF 1 LC vs. Regulares Recordatorio: Clausura de LR regulares Libres de Contexto L L 4 3... L n L * LLCs L L Autómatas Finitos Autómatas a Pila ND L Σ*- LRs Autómatas 3 La clase de lenguajes regulares es cerrada bajo: unión, concatenación, estrella de Kleene, complemento e intersección. 4 Propiedades de LLC Estudiaremos ahora propiedades de los Libres de Contexto. Enunciaremos primeramente una serie de propiedades de clausura, que son análogas a las enunciadas para LR, excepto en que los LLC no son cerrados bajo intersección ni complemento. Propiedades de Clausura Teo.: Los LLC son cerrados bajo reflexión, unión, concatenación, estrella de Kleene e intersección con un LR. Demostración: Consideraremos cada caso en particular. Las demostraciones serán constructivas. 5 6

Propiedades de Clausura - Unión Consideremos dos gramáticas LCs G 1 =( Vn1, Vt1, S 1, P 1 ) y G =(Vn, Vt, S, P ) Desde el símbolo no terminal S 1 podemos generar todaslascadenas del(g 1 ) Desde el símbolo no terminal S podemos generar todaslascadenas del(g ) Una gramática que genere la unión de estos lenguajes debe ser capaz de generar todas las cadenas de cada uno Cómo puede construirse esta gramática? Propiedades de Clausura - Unión Ejemplo: G 1 =( {S 1 },{a,b,$}, S 1, {S 1 as 1 a, S 1 bs 1 b, S 1 $}), G =( {S },{c}, S, {S cs c, S c} ) Queremos definir G para generar L(G 1 ) L(G ). Podemos hacer lo siguiente: G=( Vn, Vt, S, P) Vn = {S, S 1, S }, Vt = {a,b,$, c}, P= {SS 1, SS } P 1 P S S S S 1 7 8 Propiedades de Clausura - Unión Sean G 1 =(V n1,v t1,s 1, P 1 ) y G =(V n,v t,s,p ) dos GLC (podemossuponerv n1 V n ). Probaremos que L(G 1 ) L(G ) es LC, construyendo G para generar el lenguaje unión. Sea S un nuevo no terminal, S V n1 V n. Luego definimos G=(V n,v t,s,p), V n =V n1 V n {S}, V t =V t1 V t P=P 1 P {S S 1,SS } Si S 1 λ P 1 o S λ P, las eliminamos y agregamos S λ.luegol(g 1 ) L(G )=L(G),puesSS 1 yss, yentoncess G* >ωcon ω (V t1 V t )*sssis G* 1 >ω obien S G* >ω. Ya que G 1 y G tienen no terminales disjuntos, ent.s G* >ωsssis G1* 1 >ωós G* >ωsssis G* >ω,cqd. 9 Propiedades de Clausura - Concatenación Consideremos dos gramáticas LCs G 1 =( Vn1, Vt1, S 1, P 1 ) y G =(Vn, Vt, S, P ) Desde el símbolo no terminal S 1 podemos generar todaslascadenas del(g 1 ) Desde el símbolo no terminal S podemos generar todaslascadenas del(g ) Una gramática LC que genere la concatenación de estos lenguajes debe ser capaz de generar una cadena deg 1 seguida deotradeg Cómo puede construirse esta gramática? 10 Propiedades de Clausura - Concatenación Consideremos G 1 =(V n1,v t1,s 1,P 1 ) y G =(V n,v t,s,p ) Ejemplo: G 1 =({S 1 },{a,b,$},s 1, {S 1 as 1 a, S 1 bs 1 b, S 1 $}), G =({S },{c}, S, {S cs c, S c}) QueremosdefinirG paragenerarl(g 1 ) L(G ). Podemos hacer lo siguiente: G=( Vn, Vt, S, P) S Vn = {S, S 1, S }, Vt = {a,b,$, c}, S 1 S P= {SS 1 S } P 1 P 11 Propiedades de Clausura - Concatenación Sean G 1 = (V n1,v t1,s 1, P 1 ) y G =(V n,v t,s,p ) dos GLC (podemos suponer V n1 V n ). Para probar que L(G 1 ) concatenado L(G )eslc,sedefineg=(v n,v t,s,p): V n =V n1 V n {S}, V t =V t1 V t P=P 1 P {S S 1 S } Si S 1 λ P 1 sustituimos S 1 λ por S S. Si S λ P sustituimos S λ por S S 1. Si S 1 λ P 1 y S λ P ent.eliminamosambasreglas dep,yagregamosss 1, SS ysλ Sea ω L(G), ent. S G* >ω, es decir S G >S 1 S G* >ω. Pero S 1 S G* >ω sssi S G1* 1 >ω 1 y S G* >ω con ω= ω 1 ω, ent. ω =ω 1 ω sssi ω 1 L(G 1 ) y ω L(G ). Luego L(G 1 ) L(G ) = L(G). cqd. 1

Propiedades de Clausura - Estrella de Kleene Consideremos una gramáticas LCs G 1 =( Vn1, Vt1, S 1, P 1 ) Desde el símbolo no terminal S 1 podemos generar todaslascadenas del(g 1 ) Una gramática LC que genere la estrella de Kleene de este lenguaje debe ser capaz de generar una cadena formada por la concatenación de cero o máscadenas deg 1 Cómo puede construirse esta gramática? Propiedades de Clausura - Estrella de Kleene Consideremos G 1 =( Vn1, Vt1, S 1, P 1 ) Ejemplo: G 1 =( {S 1 },{a,b,$}, S 1, {S 1 as 1 a, S 1 bs 1 b, S 1 $}), QueremosdefinirG paragenerarl(g 1 )*. Podemos hacer lo siguiente: G=( Vn, Vt, S, P) Vn = {S, S 1 }, Vt = {a,b,$}, P= {Sλ,SS 1,S 1 S 1 S 1 } P 1 13 14 Propiedades de Clausura - Estrella de Kleene Sea G 1 = (V n1,v t1,s 1, P 1 ). Construiremos ahora G = (V n,v t,s,p),talquel(g 1 )*=L(G). V n =V n1 {S}, V t =V t1 P=P 1 {S λ, S S 1, S 1 S 1 S 1 } SiS 1 λ P 1 dicharegladebeeliminarse. Veamos que L(G 1 )*=L(G). Sea ω L(G). Ent. S G* >ω ; pero si S deriva ω, entonces o bien ω= λ o bien S G* 1 >ω (pues las únicas producciones que involucran S en G sonsλyss 1 ). Si S G* 1 >ω solo pueden usarse las reglas SS 1 y S 1 S 1 S 1 paraobtener unasecuenciadeunoomásno terminales iniciales de G 1 : S 1 S 1 S 1...S 1 y esto solo permitegenerarcadenas ω L(G 1 )*,cqd. 15 Propiedades de Clausura - Intersección Si L p es un LLC, y L f es un lenguaje regular, entonces L=L p L f esunllc. Demostraremos esto usando la equivalencia con máquinas: Si L p es LLC => existe AP M p que lo reconoce. Si L f es LR=> existe AF M f que lo reconoce. Probaremos que puedo definir un nuevo autómata M (que será Autómata a Pila) que reconoce L p L f 16 Propiedades de Clausura - Intersección Si L p es un LLC, y L f es un lenguaje regular, entonces L=L p L f esunllc. L p =L(M p )paraunciertoautómata apila M p = (S p, Σ, Γ, δ p, s 0p, F p ), yl f =L(M f )paraunaut. finitodeterminista M f =(S f, Σ,δ f,s 0f,F f ) Idea: combinar M p y M f en un único autómata a pila M que lleve la computación de M p y M f en paralelo, y acepte sólo las cadenas que ambas hubieran aceptado. Propiedades de Clausura - Intersección Construimos M= (S p x S f, Σ, Γ, δ, (s 0p, s 0f ), F p x F f ). δ((s p,s f ),u, γ 1 )=( (t p,t f ), γ )sssi δ p (s p,u, γ 1 )=(t p,γ ) yδ f (s f,u)=t f Esto es, M pasa del estado (s p,s f ) a (t p,t f ) de la misma forma que M p pasa de s p a t p, y además considera el cambio de estado de M f por la misma entrada. Queda como ejercicio demostrar que L(M)=L(M p ) L(M f ) 17 18

Propiedades de Clausura en LRs y LLCs L 3 L 4... L n L L L L 3 L 4 L 3 L 4 * L Σ*- L 4 L LLCs L 3 * LRs Los LLC son cerrados bajo unión, concatenación, estrella de Kleene e intersección con un LR. 19 Utilidad de las Propiedades de Clausura Sea L = {a n b n n>=0} podemos asegurar queesunllc. Porqué? Por poder expresarlo como L, es libredecontexto yl esregular. ={w w {a,b}*ywtieneigualcantdea syb s} L =a*b* es LLC, pues puede definirse un AP que apile cadaaydesapile alrecibirunab. L esclaramenteregular. Luego L esllc. 0 Def.: Sean Σ 1 y Σ dos alfabetos. Llamaremos sustitución a un mapeo f s : Σ 1 P(Σ *). Una sustitución f s es una función que asocia un lenguajeacada símbolodeσ. El mapeo función se extiende a cadenas de Σ 1 * ya lenguajes como sigue: Σ 1 a b c f s (a) f s (b) f s (c) Σ * f c :Σ 1 * P(Σ *) f L : P(Σ 1 *) P(Σ *) f c (α) = f c (λ) ={λ} f c (x a)= f c (x) f s (a) f L (L) = U α L f c (α) 1 Gracias a este mapeo de símbolos en conjuntos de cadenas podemos obtener, de un lenguaje L, nuevos lenguajes substituyendo las cadenas de L por el lenguaje generado con f s fs(abc) s = fs(a) s fs(b) s fs(c) s esto es un lenguaje Σ * Σ * L = f L ( ) Cada cadena wde define un lenguaje f s (w) La unión de todos estos mini-lenguajes forma por supuesto un nuevo lenguaje... Cada cadena wde define un lenguaje f s (w) La unión de todos estos mini-lenguajes forma por supuesto un nuevo lenguaje... L se obtiene por sustitución a partir de 3 4

Sustitución. Ejemplo Sea el lenguaje regular 0*(0+1)1*, con Σ 1 ={0,1}, Σ ={a,b},ylasustitución f s (α) = f c (x) = f s (0) = {a} f s (1)=b* Cuálesf L ( )?Enestecaso basándonos en f s podemos definir: f c ( λ) = {λ} f c (x 0)= f c (x) apara long(x)>=0 f c (x 1)= f c (x) b*para long(x)>=0 Luego f L ( )esellenguajerepresentado por a*(a+b*)(b*)* La sust. f L es llamada regular, pues f s (0) y f s (1) son regulares 5 Hemos visto que los leng. usados para sustitución pueden ser finitos o infinitos. Def.: Una familia de lenguajes se dice cerrada bajo sustitución si siempre que un lenguaje L Σ* es y se aplica una sustituciónf s talquef s (a)es detipoiparacada a Σ,entonces f L (L)tambiénesdetipoi. 6 Σ * Σ * L = f L ( ) Si es y para cada cadena w de, se cumple que f s (w) es, entonces......el lenguaje L =f L ( ) es también. 7 8 Podemos enunciar el siguiente teorema: Teo.: La clase de lenguajes LC es cerrada bajo sustitución. Σ * es LC f c es LC entonces f L ( ) = U α L1 f c (α) es libre de contexto 9 Demostración: Sea G=(V n,v t,s,p) una GLC, L=L(G) un LLC, L Σ* y para cada símbolo a Σ tomemos L a un LLC generado a partir de una gramática G a =(V na,v ta,s a,p a ). Puede asumirse que V n V na =. Construimos ent.g =(V n,v t,s,p )talque V n =U a Σ V a n V n V t =U a Σ V a t S =S P = U a Σ P a {A α A α se obtiene a partir de A α de P, sustituyendo S a en cada aparición de a Σenα} Naturalmente, si el lenguaje original era LC, su gramática lo era. Luego la parte dcha. de cada regla será del tipo (V n V t )*, y también lo será el tipodereglasdep. 30

Sustitución. Ejemplo Sustitución. Ejemplo Sea Σ={0,1},yf s unasustitución talque Lenguaje Generado por Tipo f s (0)={a}, f s (1)={ww r w {b,c} + } La sustitución f L mapea el cjto. {0 n 1 n n 1} en el cjto. ={a n w 1 w 1r w w r...w n w nr w i {b,c} +,1 i n} Siqueremosprobarque eslc,podemosusarla propiedad anterior. Si probamos que f s (0) y f s (1) son LLC, como {0 n 1 n n 1} es un LLC, entonces =f L (L)esLC. 31 {0 n 1 n n 1} f s (0)= {a} f s (1)= {ww r w {b,c} + } Por teorema... f L (L) G=( {S},{0,1},S, {S01,S 0S1} ) G 1 =( {S 1 },{a},s 1, {S 1 a} ) G =({S },{b,c},s, {S bs b, S cs c, S bb, S cc} ) G L =( {S,S 1,S }, {a,b,c}, S, { SS 1 S, SS 1 SS } P 1 P ) 3 Sustitución Libre de λ- Concepto Def.: Una sustitución f s se denomina sustitución libre de λ si ninguno de los lenguajes f s (a), para todoa Σcontienelapalabranula λ. Sustitución libre de λ. Ejemplos Usos conocidos de homomorfismo libre de la cadena vacía son el código morse, el código Braille y el código ASCII. Caso particular:homomorfismos sobre cadenas, la fc. asocia a cada símbolo del alfabeto una palabra. Más formalmente, hes tal que h(a)=w, para cada a Σ 1 y alguna palabra w Σ *. Un homomorfismo sobre cadenas es entonces un mapeo h:σ 1 Σ *. El homomorfismo es libre de λsi ninguna de las palabras de la imagen es λ. hola 686F6C61 33 34 LCs son cerrados bajo homomorfismos Corolario (del teo. anterior): La clase de lenguajes LC es cerrada bajo homomorfismo. Notemos que en el caso de homomorfismos no es necesario demostrar el tipo de lenguaje que genera la cadena a utilizar para la sustitución. Por ser una cadena una secuencia conocida de símbolos, siempre podemos definir un AF para reconocerlo (o una G regular para generarla). Ejemplo:Sea la gramáticag=(v n,v t,s,p), con V n ={S}, V t ={[,]}, P={ S[], SSS, S[S]}. 35 LCs son cerrados bajo homomorfismos - Ejemplo Sea L el lenguaje de las cadenas de corchetes balanceados. Probar que el lenguaje L de cadenas balanceadas de begin y end es libre de contexto utilizando un homomorfismo. Seaelhomomorfismo h:{[,]}{begin,end},tq: h(x) = h( [) = begin h ( ])= end QPQ probar que L es LC. Como h(l)=l, ent. podemos usar la prop. anterior para probar que h(l)eslc. h([)es generable por una GLC, G 1 =({S},{b,e,g,i,n},S,{Sbegin}) Lo mismo para h(])usando otra gram. G L es LC(ya lo hemos probado anteriorm.) Luego h(l)=l es LC. 36

Corolario importante Corolario (de los resultados anteriores): Los lenguajes regulares son cerrados bajo sustitución y homomorfismo. Justificación: Dado que las pruebas anteriores las realizamos sobre lenguajes libres de contexto, se aplican en particular a los lenguajes regulares. Teos. sobre LLC para y complemento Teorema : La clase de lenguajes libres de contexto no es cerrada bajo intersección. Demostración: Para probar esto, recurriremos a un contraejemplo. Dados dos lenguajes y L que son LC, mostraremos que L= L no es LC. Consideremos ={a n b n c i n 1, i 0} y L ={a j b n c n n 1, j 0}. Ambos son LC. 37 38 Teos. sobre LLC para y complemento Teos. sobre LLC para y complemento ={a n b n c i n 1, i 0} L ={a j b n c n n 1, j 0} Teorema : La clase de lenguajes libres de contexto no es cerrada bajo complemento. L = L = {a n b n c n n 1} Como se verá más adelante, este lenguaje no es LC. Luego podemos concluir que los lenguajes que son LC no son cerrados bajo intersección (pues existe un contraejemplo). L 39 Demostración: Queda como ejercicio. Se sugiere hacerlo por contradicción, combinando las estrategias usadas para LR cuando se consideró la clausura bajo intersección. 40 Que hemos visto en este módulo Propiedades de clausura de LLC: union, intersección, est.kleene, intersección. con un lenguaje regular. Substitución. Concepto. Sustitución libre de cadena vacía. Homomorfismo para LLCs. Vimos que los LLCs son cerrados bajo homomorfismo Vimos que existen lenguajes que no son LLCs: L= {a n b n c n n 1} 41