• No se han encontrado resultados

CI 3725 Clase 17 pdf

N/A
N/A
Protected

Academic year: 2020

Share "CI 3725 Clase 17 pdf"

Copied!
60
0
0

Texto completo

(1)TRADUCTORES E INTERPRETADORES Clase 17 (Y última del trimestre): Completitud. Profs. Carlos Pérez y Ricardo Monascal.

(2) Agenda • Reducciones • Dureza • Completitud. Profs. Carlos Pérez y Ricardo Monascal.

(3) Reducciones • ¿Es posible transformar un problema en otro?. Profs. Carlos Pérez y Ricardo Monascal.

(4) Reducciones • ¿Es posible transformar un problema en otro? – ¡Claro que si! – ¿Pero cuanto cuesta? ¿Realmente vale la pena?. Profs. Carlos Pérez y Ricardo Monascal.

(5) Reducciones • ¿Es posible transformar un problema en otro? – ¡Claro que si! – ¿Pero cuanto cuesta? ¿Realmente vale la pena? – Depende del problema.. Profs. Carlos Pérez y Ricardo Monascal.

(6) Reducciones • ¿Es posible transformar un problema en otro? – ¡Claro que si! – ¿Pero cuanto cuesta? ¿Realmente vale la pena? – Depende del problema.. • Diremos que una función f puede C-reducirse a otra función g si existe un computador que: – Transforme entradas para f en entradas para g.. Profs. Carlos Pérez y Ricardo Monascal.

(7) Reducciones • ¿Es posible transformar un problema en otro? – ¡Claro que si! – ¿Pero cuanto cuesta? ¿Realmente vale la pena? – Depende del problema.. • Diremos que una función f puede C-reducirse a otra función g si existe un computador que: – Transforme entradas para f en entradas para g. – Transforme salidas para g en salidas para f. Profs. Carlos Pérez y Ricardo Monascal.

(8) Reducciones • ¿Es posible transformar un problema en otro? – ¡Claro que si! – ¿Pero cuanto cuesta? ¿Realmente vale la pena? – Depende del problema.. • Diremos que una función f puede C-reducirse a otra función g si existe un computador que: – Transforme entradas para f en entradas para g. – Transforme salidas para g en salidas para f. – Ambas transformaciones estén en la clase C. Profs. Carlos Pérez y Ricardo Monascal.

(9) Reducciones • ¿Tiene sentido realizar una C-reducción para una función que pertenece a C?. Profs. Carlos Pérez y Ricardo Monascal.

(10) Reducciones • ¿Tiene sentido realizar una C-reducción para una función que pertenece a C? – Sería equivalente a computar la función.. Profs. Carlos Pérez y Ricardo Monascal.

(11) Reducciones • ¿Tiene sentido realizar una C-reducción para una función que pertenece a C? – Sería equivalente a computar la función.. • ¿Siempre es posible realizar una C-reducción de una función a otra?. Profs. Carlos Pérez y Ricardo Monascal.

(12) Reducciones • ¿Tiene sentido realizar una C-reducción para una función que pertenece a C? – Sería equivalente a computar la función.. • ¿Siempre es posible realizar una C-reducción de una función a otra? – ¡No! ¡De ser así, todas las clases de complejidad serían la misma!. Profs. Carlos Pérez y Ricardo Monascal.

(13) Reducciones • ¿Tiene sentido realizar una C-reducción para una función que pertenece a C? – Sería equivalente a computar la función.. • ¿Siempre es posible realizar una C-reducción de una función a otra? – ¡No! ¡De ser así, todas las clases de complejidad serían la misma! – ¿Y si todas las funciones involucradas pertenecen a una misma clase D? Profs. Carlos Pérez y Ricardo Monascal.

(14) Reducciones • Algunos ejemplos de Reducciones: – Sudoku se puede reducir al problema de colorear un grafo. • ¿Cuánto tiempo/espacio toma tal reducción?. Profs. Carlos Pérez y Ricardo Monascal.

(15) Reducciones • Algunos ejemplos de Reducciones: – Sudoku se puede reducir al problema de colorear un grafo. • ¿Cuánto tiempo/espacio toma tal reducción? • ¡Es una P-reducción!. Profs. Carlos Pérez y Ricardo Monascal.

(16) Reducciones • Algunos ejemplos de Reducciones: – Sudoku se puede reducir al problema de colorear un grafo. • ¿Cuánto tiempo/espacio toma tal reducción? • ¡Es una P-reducción!. – Buscar un elemento en un arreglo se puede reducir a ordenar el arreglo.. Profs. Carlos Pérez y Ricardo Monascal.

(17) Reducciones • Algunos ejemplos de Reducciones: – Sudoku se puede reducir al problema de colorear un grafo. • ¿Cuánto tiempo/espacio toma tal reducción? • ¡Es una P-reducción!. – Buscar un elemento en un arreglo se puede reducir a ordenar el arreglo. – Hallar un apareamiento máximo para un grafo bipartito, se puede reducir a conseguir un flujo máximo. Profs. Carlos Pérez y Ricardo Monascal.

(18) Dureza • Diremos que una función f es C-dura, con respecto a D, si para cualquier otra función g, que pertenezca a C, se puede conseguir una D-reducción de f a g.. Profs. Carlos Pérez y Ricardo Monascal.

(19) Dureza • Diremos que una función f es C-dura, con respecto a D, si para cualquier otra función g, que pertenezca a C, se puede conseguir una D-reducción de f a g. – ¿Todas las funciones en C son C-duras, con respecto a algún D no trivial?. Profs. Carlos Pérez y Ricardo Monascal.

(20) Dureza • Diremos que una función f es C-dura, con respecto a D, si para cualquier otra función g, que pertenezca a C, se puede conseguir una D-reducción de f a g. – ¿Todas las funciones en C son C-duras, con respecto a algún D no trivial? – ¿Todas las funciones C-duras, con respecto a algún D no trivial, pertenecen a C? Profs. Carlos Pérez y Ricardo Monascal.

(21) Dureza • Demostrar que una función f es C-dura, con respecto a D: – Implica demostrar que cada posible función g que pertenece a C se puede D-reducir a f.. Profs. Carlos Pérez y Ricardo Monascal.

(22) Dureza • Demostrar que una función f es C-dura, con respecto a D: – Implica demostrar que cada posible función g que pertenece a C se puede D-reducir a f. – Si ya se sabe que una cierta función h es C-dura, con respecto a D, basta con demostrar que h se puede D-reducir a f. • Las demás funciones se pueden transformar, componiendo las transformaciones hasta y desde h. Profs. Carlos Pérez y Ricardo Monascal.

(23) Completitud • Diremos que una función f es C-completa, con respecto a D, si: – f es C-dura con respecto a D. – f pertenece a C.. Profs. Carlos Pérez y Ricardo Monascal.

(24) Completitud • Diremos que una función f es C-completa, con respecto a D, si: – f es C-dura con respecto a D. – f pertenece a C.. • Escogiendo una D pertinente, las funciones C-completas con respecto a D, vienen a ser las funciones “mas difíciles de computar” en la clase C. Profs. Carlos Pérez y Ricardo Monascal.

(25) Completitud • Para algunas clases, existe una clase de completitud, con respecto a un determinado D, que es tan común que el D se omite.. Profs. Carlos Pérez y Ricardo Monascal.

(26) Completitud • Para algunas clases, existe una clase de completitud, con respecto a un determinado D, que es tan común que el D se omite. – Las funciones NP-completas. • Trabajan con respecto a P-reducciones.. Profs. Carlos Pérez y Ricardo Monascal.

(27) Completitud • Para algunas clases, existe una clase de completitud, con respecto a un determinado D, que es tan común que el D se omite. – Las funciones NP-completas. • Trabajan con respecto a P-reducciones.. – Las funciones PSPACE-completas. • Trabajan con respecto a P-reducciones.. Profs. Carlos Pérez y Ricardo Monascal.

(28) Completitud • Para algunas clases, existe una clase de completitud, con respecto a un determinado D, que es tan común que el D se omite. – Las funciones NP-completas. • Trabajan con respecto a P-reducciones.. – Las funciones PSPACE-completas. • Trabajan con respecto a P-reducciones.. – Las funciones P-completas. • Trabajan con respecto a NC-reducciones. Profs. Carlos Pérez y Ricardo Monascal.

(29) Completitud • Si se llega a concluir que P ≠ NP, entonces las funciones NP-completas serían las funciones “mas difíciles de computar” en NP. – En este hecho se basa la criptografía moderna.. Profs. Carlos Pérez y Ricardo Monascal.

(30) Completitud • Si se llega a concluir que P ≠ NP, entonces las funciones NP-completas serían las funciones “mas difíciles de computar” en NP. – En este hecho se basa la criptografía moderna.. • Algunas funciones NP-completas: – Coloración mínima de un grafo.. Profs. Carlos Pérez y Ricardo Monascal.

(31) Completitud • Si se llega a concluir que P ≠ NP, entonces las funciones NP-completas serían las funciones “mas difíciles de computar” en NP. – En este hecho se basa la criptografía moderna.. • Algunas funciones NP-completas: – Coloración mínima de un grafo. – Problema del Agente Viajero.. Profs. Carlos Pérez y Ricardo Monascal.

(32) Completitud • Si se llega a concluir que P ≠ NP, entonces las funciones NP-completas serían las funciones “mas difíciles de computar” en NP. – En este hecho se basa la criptografía moderna.. • Algunas funciones NP-completas: – Coloración mínima de un grafo. – Problema del Agente Viajero. – Suma sobre subconjuntos. Profs. Carlos Pérez y Ricardo Monascal.

(33) Completitud • ¿Cómo demostramos que una función f es NP-completa?. Profs. Carlos Pérez y Ricardo Monascal.

(34) Completitud • ¿Cómo demostramos que una función f es NP-completa? – Hay que demostrar que es NP. – Hay que demostrar que es NP-dura.. Profs. Carlos Pérez y Ricardo Monascal.

(35) Completitud • ¿Cómo demostramos que una función f es NP-completa? – Hay que demostrar que es NP. – Hay que demostrar que es NP-dura.. • Hace falta una función h que sepamos ya es NP-dura y lograr P-reducir h a f.. Profs. Carlos Pérez y Ricardo Monascal.

(36) Completitud • ¿Cómo demostramos que una función f es NP-completa? – Hay que demostrar que es NP. – Hay que demostrar que es NP-dura.. • Hace falta una función h que sepamos ya es NP-dura y lograr P-reducir h a f. – ¿Pero y si aún no se conoce tal función h?. Profs. Carlos Pérez y Ricardo Monascal.

(37) Completitud • ¿Cómo demostramos que una función f es NP-completa? – Hay que demostrar que es NP. – Hay que demostrar que es NP-dura.. • Hace falta una función h que sepamos ya es NP-dura y lograr P-reducir h a f. – ¿Pero y si aún no se conoce tal función h? – Hace falta una primera función NP-completa que nos sirva como guía. Profs. Carlos Pérez y Ricardo Monascal.

(38) Completitud • Consideremos el siguiente problema: – Se tiene una fórmula booleana, compuesta por: • Constantes: true y false. • Variables proposicionales. • Operadores de: conjunción, disyunción y negación.. Profs. Carlos Pérez y Ricardo Monascal.

(39) Completitud • Consideremos el siguiente problema: – Se tiene una fórmula booleana, compuesta por: • Constantes: true y false. • Variables proposicionales. • Operadores de: conjunción, disyunción y negación.. – ¿Existe una asignación de valores para las variables involucradas que resulte en la misma evaluando a true?. Profs. Carlos Pérez y Ricardo Monascal.

(40) Completitud • Consideremos el siguiente problema: – Se tiene una fórmula booleana, compuesta por: • Constantes: true y false. • Variables proposicionales. • Operadores de: conjunción, disyunción y negación.. – ¿Existe una asignación de valores para las variables involucradas que resulte en la misma evaluando a true? – Este problema se conoce como SAT (Boolean SATisbafility problem). Profs. Carlos Pérez y Ricardo Monascal.

(41) Completitud • El teorema de Cook-Levin enuncia:. SAT es NP-completo.. Profs. Carlos Pérez y Ricardo Monascal.

(42) Completitud • El teorema de Cook-Levin enuncia:. SAT es NP-completo. – Para cada función en NP, sea M una Computador no determinista, que la computa en tiempo polinomial.. Profs. Carlos Pérez y Ricardo Monascal.

(43) Completitud • El teorema de Cook-Levin enuncia:. SAT es NP-completo. – Para cada función en NP, sea M una Computador no determinista, que la computa en tiempo polinomial. – Se codifica M con su entrada E, de tal forma que resulte una formula booleana. • Si la máquina acepta la entrada, la fórmula será satisfacible. De lo contrario, será insatisfacible. • Revisar los detalles de la construcción, queda como ejercicio. Profs. Carlos Pérez y Ricardo Monascal.

(44) Completitud • Contando con una función que es NP-completa, podemos probar la NP-completitud de muchas otras, tomándola como base.. Profs. Carlos Pérez y Ricardo Monascal.

(45) Completitud • Contando con una función que es NP-completa, podemos probar la NP-completitud de muchas otras, tomándola como base. – ¡El Teorema de Cook-Levin es uno de los resultados más importantes de las ciencias de la computación!. Profs. Carlos Pérez y Ricardo Monascal.

(46) Completitud • Contando con una función que es NP-completa, podemos probar la NP-completitud de muchas otras, tomándola como base. – ¡El Teorema de Cook-Levin es uno de los resultados más importantes de las ciencias de la computación! – Aunque si P = NP, dicho resultado se haría obsoleto.. Profs. Carlos Pérez y Ricardo Monascal.

(47) Completitud • ¿Existe alguna función similar en el caso de las funciones PSPACE-completas?. Profs. Carlos Pérez y Ricardo Monascal.

(48) Completitud • ¿Existe alguna función similar en el caso de las funciones PSPACE-completas? – Consideremos el siguiente problema: • Se tiene una fórmula booleana, compuesta por: – – – –. Constantes: true y false. Operadores de: conjunción, disyunción y negación. Cuantificadores: universal y existencial. Variables proposicionales ligadas a los cuantificadores.. Profs. Carlos Pérez y Ricardo Monascal.

(49) Completitud • ¿Existe alguna función similar en el caso de las funciones PSPACE-completas? – Consideremos el siguiente problema: • Se tiene una fórmula booleana, compuesta por: – – – –. Constantes: true y false. Operadores de: conjunción, disyunción y negación. Cuantificadores: universal y existencial. Variables proposicionales ligadas a los cuantificadores.. • ¿La fórmula en cuestión evalúa a true?. Profs. Carlos Pérez y Ricardo Monascal.

(50) Completitud • ¿Existe alguna función similar en el caso de las funciones PSPACE-completas? – Consideremos el siguiente problema: • Se tiene una fórmula booleana, compuesta por: – – – –. Constantes: true y false. Operadores de: conjunción, disyunción y negación. Cuantificadores: universal y existencial. Variables proposicionales ligadas a los cuantificadores.. • ¿La fórmula en cuestión evalúa a true? • Este problema se conoce como TQBF (True Quantified Boolean Formula) o QSAT (Quantified SAT). Profs. Carlos Pérez y Ricardo Monascal.

(51) Completitud • Y con esto culmina nuestro tratamiento de las funciones computables, los lenguajes decidibles y todas sus clasificaciones.. Profs. Carlos Pérez y Ricardo Monascal.

(52) Completitud • Y con esto culmina nuestro tratamiento de las funciones computables, los lenguajes decidibles y todas sus clasificaciones. – Esperamos hayan disfrutado y aprendido bastante de este curso de Traductores e Interpretadores.. Profs. Carlos Pérez y Ricardo Monascal.

(53) Completitud • Y con esto culmina nuestro tratamiento de las funciones computables, los lenguajes decidibles y todas sus clasificaciones. – Esperamos hayan disfrutado y aprendido bastante de este curso de Traductores e Interpretadores. – Hemos visto apenas la punta del iceberg que es la teoría de la computación, queda mucho por discutir aún. Profs. Carlos Pérez y Ricardo Monascal.

(54) Completitud • Hemos aprendido a definir y reconocer Lenguajes.. Profs. Carlos Pérez y Ricardo Monascal.

(55) Completitud • Hemos aprendido a definir y reconocer Lenguajes. – Incluso hemos aprendido a implementar Lenguajes de Programación.. Profs. Carlos Pérez y Ricardo Monascal.

(56) Completitud • Hemos aprendido a definir y reconocer Lenguajes. – Incluso hemos aprendido a implementar Lenguajes de Programación. • ¿Pero que hace de un Lenguaje un buen Lenguaje?. Profs. Carlos Pérez y Ricardo Monascal.

(57) Completitud • Hemos aprendido a definir y reconocer Lenguajes. – Incluso hemos aprendido a implementar Lenguajes de Programación. • ¿Pero que hace de un Lenguaje un buen Lenguaje? • ¿Qué ventajas tiene cada uno y que problemas le son más aplicables para solucionar?. Profs. Carlos Pérez y Ricardo Monascal.

(58) Completitud • Hemos aprendido a definir y reconocer Lenguajes. – Incluso hemos aprendido a implementar Lenguajes de Programación. • ¿Pero que hace de un Lenguaje un buen Lenguaje? • ¿Qué ventajas tiene cada uno y que problemas le son más aplicables para solucionar? • ¿Existen diferentes paradigmas y formas de programación?. Profs. Carlos Pérez y Ricardo Monascal.

(59) Completitud • Hemos aprendido a definir y reconocer Lenguajes. – Incluso hemos aprendido a implementar Lenguajes de Programación. • ¿Pero que hace de un Lenguaje un buen Lenguaje? • ¿Qué ventajas tiene cada uno y que problemas le son más aplicables para solucionar? • ¿Existen diferentes paradigmas y formas de programación? • Eso quedará… Para el curso de Lenguajes de Programación I… Profs. Carlos Pérez y Ricardo Monascal.

(60) Completitud • Hemos aprendido a definir y reconocer Lenguajes. – Incluso hemos aprendido a implementar Lenguajes de Programación. • ¿Pero que hace de un Lenguaje un buen Lenguaje? • ¿Qué ventajas tiene cada uno y que problemas le son más aplicables para solucionar? • ¿Existen diferentes paradigmas y formas de programación? • Eso quedará… Para el curso de Lenguajes de Programación I… ¡Hasta entonces! Profs. Carlos Pérez y Ricardo Monascal.

(61)

Referencias

Documento similar

CONTRATO DE COMODATO QUE CELEBRAN POR UNA PARTE, EL MUNICIPIO DE TULA DE ALLENDE Y EL SISTEMA MUNICIPAL DIF DE TULA DE ALLENDE REPRESENTADO EN ESTE ACTO POR LOS

25 acuerdo con la presente invención que tiene una estructura en la que una parte de fijación de un cuerpo de cepillo que tiene la parte de fijación en un extremo y un cepillo unido

El artículo vincula el análisis de la migración a tendencias importantes en la teoría y metodología de varias disciplinas de ciencias sociales, e ilustra la

Se llega así a una doctrina de la autonomía en el ejercicio de los derechos que es, en mi opinión, cuanto menos paradójica: el paternalismo sería siempre una discriminación cuando

Este aspecto es, a mi juicio, uno de los logros del trabajo de Francisco Segado, no haber caído en una tentación fácil: la insistencia en las gráficas y datos que

Pero como "el fin egoísta en su rela- ción y condicionado por la generalidad constituye un sistema de correspondencia total, puesto que la sub- sistencia y el bienestar

APARTADO C.1.J. DEBE APORTAR COPIA DEL TITULO DE BACHILLER O EQUIVALENTE QUE UTILIZÓ PARA EL ACCESO A LA UNIVERSIDAD PARA PODERLE COMPUTAR EL TÍTULO DE TÉCNICO SUPERIOR EN

Pero mientras en Europa la democracia igualitaria, heredera del anden- régime, tien- de sle suyo a la centralización del poder, la democracia de los Es- tados Unidos