Matematicas d Matematica Discreta Apuntes i

March 22, 2018 | Author: Juan Andre | Category: First Order Logic, Proposition, Deductive Reasoning, Theoretical Computer Science, Truth


Comments



Description

Apuntes de clase — Matem´ atica DiscretaLuis Dissett Segundo Semestre, 2004 ´ Indice general 1. L´ ogica Proposicional 1.1. Proposiciones, conectivos, f´ ormulas proposicionales 1.1.1. Algunos conectivos . . . . . . . . . . . . . . 1.2. F´ ormulas proposicionales . . . . . . . . . . . . . . 1.3. Algunos comentarios . . . . . . . . . . . . . . . . . 1.4. Valor de verdad de proposiciones compuestas . . . . 1.5. Asignaciones de verdad . . . . . . . . . . . . . . . 1.6. Tablas de Verdad . . . . . . . . . . . . . . . . . . . 1.7. Tautolog´ ıas y contradicciones . . . . . . . . . . . . 1.8. Consecuencia l´ ogica . . . . . . . . . . . . . . . . . 1.9. Definici´ on de consecuencia l´ ogica . . . . . . . . . . 1.10. Equivalencia l´ ogica . . . . . . . . . . . . . . . . . . 1.11. Las leyes de la l´ ogica . . . . . . . . . . . . . . . . . 1.12. Reglas de sustituci´ on . . . . . . . . . . . . . . . . . 1.13. El principio de dualidad . . . . . . . . . . . . . . . 1.14. Formas Normales . . . . . . . . . . . . . . . . . . . 1.15. Reglas de inferencia . . . . . . . . . . . . . . . . . 1.16. Las reglas . . . . . . . . . . . . . . . . . . . . . . . 1.17. Sistemas deductivos . . . . . . . . . . . . . . . . . 1.18. Ejemplo de uso de las reglas . . . . . . . . . . . . . 1.19. Otro ejemplo . . . . . . . . . . . . . . . . . . . . . 1.20. Resoluci´ on . . . . . . . . . . . . . . . . . . . . . . . 1.21. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . 1 1 1 1 2 2 2 3 3 3 4 4 5 6 6 6 7 7 9 9 10 10 11 13 13 13 13 13 14 14 14 14 14 15 15 17 17 17 17 18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2. L´ ogica de predicados 2.1. Definiciones b´ asicas . . . . . . . . . . . . . . . . . . . . . 2.1.1. Predicados at´ omicos . . . . . . . . . . . . . . . . 2.1.2. Variables, constantes, funciones y operaciones . . 2.1.3. Interpretaciones y dominios . . . . . . . . . . . . 2.1.4. Cuantificadores . . . . . . . . . . . . . . . . . . . 2.1.5. Variables libres y ligadas . . . . . . . . . . . . . 2.2. Verdad l´ ogica, consecuencia l´ ogica y equivalencia l´ ogica 2.2.1. Interpretaciones y valores de verdad . . . . . . . 2.2.2. Proposiciones v´ alidas (l´ ogicamente verdaderas) . 2.2.3. Consecuencia l´ ogica . . . . . . . . . . . . . . . . 2.2.4. Equivalencia l´ ogica . . . . . . . . . . . . . . . . . 2.2.5. Resumen de definiciones . . . . . . . . . . . . . . 2.3. Negaci´ on de proposiciones con cuantificadores . . . . . . 2.4. Reglas de inferencia usando predicados . . . . . . . . . . 2.5. Teor´ ıas matem´ aticas . . . . . . . . . . . . . . . . . . . . 2.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3. 4. . . . . . . . . Operaciones en N . . Reticulados (lattices) . . . . . . . . .2. .7. . . . . . . . .8. . . .2. . Ejemplo: los enteros m´ odulo n . . . . .3. . . . . . . . . . . . . . . . . . . . . . . . . .1.5. . . . . . .1.3. . . . . . . . . . . . . . . . . . . . ii P. . . . . . . . . .5. . . . . . . . . . .1. .2. . . . . . . . . . . . . . . . . . . . . . . . . . Chile. . . .3. . . Independencia de los representantes . . .6. . . . . . . . . . . . . . . .3. . 4. . . . . . . . . . 4. . .2. . .3. . . . . . . . . . . . . . .4. . . . . . . . . . .4. . . .3.1. . . . . . . . . . . . Conjuntos con elementos repetidos . . . . . . . . . . . . . . . . . .1. . . . . . . . .4. . . . . . . . . . . . . 4. . . . . . . . . . .1. . supremos. . . . .3. . . . . . . . . .9. . . . . . . . .7. . . . . .2. . . . . . . c Luis Dissett.6. . Producto cartesiano . . . . . .1. . . . . . . . .7. . Clases de equivalencia . . . . . .U. . . . . . . . ´ 4. . . . . . . . 4. Operaciones generalizadas . . . . . . . . . . . . . . . . . . . .11. . . . . . . . . . 4. . . . . . . Definiendo nuevos objetos con relaciones de equivalencia 4. . . .3. . .´ INDICE GENERAL 3. .2. . . . . . . . . . .2. . . Ejercicios . . . . . Relaciones 4. . . . . . . . . . . . . . Particiones . . . . . . . . . . . . . . . . . . . . .5. . . . . .1. . . . . 4. . . ´ 4. . . . . . . . . . . . . . . .7.5. . . . . . . . . . . . . . . . . Ejemplos . . . . . . . . . . . . . . . . . . . . . .2. . . . . . .9. . . . . . Las funciones de proyecci´ on . 4. . . . . . . . . . . . . . . . . . . . . . . . .4. El conjunto vac´ ıo . . . . . El volumen de la botella de Klein . . . . . . . . . . . . . . . 3. . . . . . . . .8. . . . . . Producto de m´ as de dos conjuntos . . . . . . . . 3. . . . . . . . . . . . . . . . . . .6. . . . . . .3. . . . . . . . .5. Ordenes estrictos . . . . .2.1. . . . . . . . . . . . 4. . .4. . . . .2. . 3. . . . . .1. . . . . . . . . . . . . . . . . . . . . . .3. . 4. . . . . . . . . . El axioma del supremo . . . . 4. . . . . . . . . . . . . .C. . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . Definiciones b´ asicas . . . . . . . 4. . . . . . . .1. . . . . . . . . . . . . . 4. . . . . . . . . . 4. . . . . . . . . . . . . . . Otros objetos definidos por relaciones de equivalencia . . . . . . . . . . . . . . . .2. . . . . . 4. . . . .7. . . . . . . . . . . .1. . . .8. . . .7. . . . . . . . . Relaciones n-arias . . . .1. . . 4. . . . . . . . . . . Formas de representar relaciones binarias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nociones primitivas . . Teor´ ıa de Conjuntos 3. . . . . . . . . . Ordenes parciales . Definiciones b´ asicas . 4. 3. . . . . . . . . . . . . . Las Leyes de la Teor´ ıa de Conjuntos . . . . . . . . . . . Ejemplo . 3.1. . 4. Elementos maximales y m´ aximos . . . . . . . . . . . . . . . . . . . .3. . . . . . . . Aplicaci´ on: definici´ on formal de la aritm´ etica 3. . . .2.3. . . Relaciones de equivalencia . . . . . . Operaciones . . . . ´ 4. Definici´ on axiom´ atica de N . . . 3. . . . . . 2004 . . 4. . . . . . . . . . . . . . . . . . . . Ordenes lineales o totales . . . . . . 4. . . . . . .3. .1. . . 4. . . . . ´ INDICE GENERAL 19 19 19 19 19 20 20 20 20 21 21 22 23 24 24 25 25 27 27 27 27 27 28 28 28 28 29 29 29 30 30 30 31 31 32 32 32 33 33 34 34 34 35 35 35 36 36 36 36 37 40 40 . . . . . . . . . . . . . . . . . . . ´ ınfimos . . . . . .2. . . 4. . . . . . .1. . . . . . . . . . . . . 3. . 4.2. . . . . 4. . . . . 4. . 4. . . . . . .2. . . . . El teorema de Knaster-Tarski . . . . . . . . . . . . . . . . . . . . . . . . . . . . Subconjuntos. . . Cotas. . . . . . . . . . . . . . . . . . . 4.2. . Pares ordenados . . . . . . Operaciones con conjuntos de ´ ındices . . . . . 3.1. . . . . . . . . . . . . . . . .12. . . . . . . .10. . . Lidiando con las paradojas . . . . . 4. . . . . .2. . . . . . . . . . . . . . 3. Los reales y los racionales . . . . Producto cartesiano generalizado . . . . . Operaciones en Zn . . . . . . . . Diagramas de Hasse . . . . . . . . . . . . . . . . .4. . . . . . . . . . . . . . . . . . . . . . . .6. . . Propiedades de las relaciones binarias . . . . . 3. . . . Relaciones binarias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . La paradoja de Russell . . . . . . . . . . . Ordenes completos . . .3. . . . . . . . . . . . . . . . . . . . . . . . .2. . .10. . . . .2. . . . . .3. . . . . . . . . .1. . . . Maneras de definir un conjunto . . . igualdad de conjuntos . . . . . . . . .3. . . . .1.1.2. . . . . . . . . . . . . . . . Ejercicios . . . . . . . . . 3. . 3. . . . . . . . . . . . . ´ 4. . . . . . . . . . . . . . . . 3. . . . . . . .8. . . 4. . . Propiedades de las clases de equivalencia . . . . . . . . . . . . . . . . .2.2. . . 6. . . . . . Una definici´ on alternativa . . . . . . .5. . . . . . . . . . . . . . . . . . . . Caracterizaciones de numerabilidad . . . . . . . . . . . . . .1. . . . . .7. . . . . . . . Una formulaci´ on equivalente . . . . . . . . . . . . . . .1. . . . . . . .2. . . . . . . 6. . . . . . . . . . . . . . . . .1. . 5. . . . . . . . 5. . . . . . . . . . . . Funciones 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Soluci´ on final . . . . . . . . . Soluci´ on (temporal) del problema . . . . . . . .2. . . . . . Correcci´ on de programas recursivos . Casos base en en PICV . . . . . . . . . . . Otro ejemplo: b´ usqueda binaria . .1. . . . . 6. . . . . . . . . . . .8. . . . . . . . . . . . . . . . . . . . Caracterizando los conjuntos finitos . . . . . . . . . . . . . . . . . . . . . Cardinalidad . . . . . . . . . . . . . . . . . . . . . . 5. . . . . . . . .4. . . . . Ejercicios . 5. Propiedades de clausura . . . . .9. . . . . . . . . . .1. . . . . . . . . . . . Conjuntos cerrados bajo una relaci´ on . . . . . . . . . . . . . .3. . . . . . 6. . . . . . .1. . . . . Chile. . . . . . 5. . .2. . . . . . . . . . . . .2. . . . . . . . . . . . . . . . . . . . . . 6. . . . . . 6. . . . .3.1. .4. . ´ INDICE GENERAL 43 43 43 43 44 44 44 44 44 45 45 45 45 46 46 46 46 47 47 48 48 51 51 51 51 52 52 53 53 53 53 54 54 54 55 55 55 55 56 56 57 57 57 57 58 59 61 61 62 63 66 . . . . . . . . . . . . . . . .2. 6. . . . . . . . . . . . . . Clausura sim´ etrica de una relaci´ on . . . . . . . . .1. . . . 5. . . . . . . . . . . . . Otra forma de ver las clausuras . . . . . . . . . . . .2. c Luis Dissett. . . . . 5. . . . . . . .3. . . . . . . . . Clausuras . . . . . . . . . . . . . . . . . . .2. . . . . . . . . 5. . 6. . . . . . . . . . . . . 5. . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . .1. .2. . . . . . . . . . . . . . . . . . . 7. . 6. . .2. . . . .1. . . . . . . 6. . Definiciones b´ asicas . . .2. . . . . . . . . . . . . . . . . . . . 6. . . . . . . . . . . . . . . . .7. . . . . . . . . iii P.6. . . . . . . . . 5. . . . . 5. . . .2. . . . . .2. . . . . . . .2. . . . . . . . . El teorema de Cantor-Schr¨ oder-Bernstein (CSB) 5. . 6. .3. . . . . . . . .2.2. . . . 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5. . . . . . . 7. 6. . . . . . .4. . . . . . . . . . . . El menor conjunto que satisface ψ . . . . . Conjuntos completos de conectivos . 6. . 6. .6. Aplicaciones de inducci´ on en N . . . . . . . Proleg´ omeno: . 6. .2. . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . .4. Inducci´ on y clausuras 6. . .8. . . . . . . . . . . . . . . Conjuntos no completos . . .4. . . . . . . . Ejemplo: mezcla de dos archivos 7. . . . . . . . . Correcci´ on de programas 7. . . . . . . . . .8. . . . . . Ejercicios . . . . . . . . . . . Inducci´ on Estructural . . . . . .1. . . . . El problema de la detenci´ on . . . . . . . . Conjuntos finitos e infinitos . . . . 6. . . . . . . . . . . . . 5. . Conjuntos cerrados . . . . . . . .2. . . . . . . .1. 6. .3. . . Inducci´ on (sobre los naturales) . . . . . . . . . . . . . . . . . . Ejemplo: l´ ogica proposicional . . Los reales . . . .C. . . . . . . . . . . . . . . . . . . . . . . . . . . .4. . . . . . . . . . . . . Principios de Inducci´ on . . Tipos de funciones . Ejemplos de conjuntos numerables . . Demostraci´ on de C-S-B . . . . . Capas . .9. . . . . . . . . . . . . .8. . . . . Orden entre cardinalidades . . . . . . . . 5. . . . . . . . . . . . . . . .2. . 6. .3.3. . . . . . . . . . . . . . . . . . . . . . . . . .1.1. . . . . . . . . 6. . . . . .3. . Un problema . . . . . 5. . . . . . . . . . Funciones n-arias . . . . . .4. . . . . . . . . . . . . . . . . . . . .4. . . .1. . . . . . . . 6. . . . . . . .8. . . . . . . . . Correcci´ on de programas iterativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5. .4. . . . . . . . . .4. . . . . . . . . . . . 6. . . . . 2004 . . . . . Otro conjunto completo . . Conjunto numerables . . . . . . . . . . . . . . . . . . . .1. . . . Los racionales . . . .1. . . . . . . Clausura bajo una relaci´ on . . . .6. . . . . . . . . . . . Propiedades de .8. . . 5. . . . . . . . .U. . .2. . .´ INDICE GENERAL 5. . .5. . . . . . . . . . . . . . . . . Otros puntos de partida . . . . . . . . . . . . . . . . . . . . . . 6. . . . .6. .1. . . . . . . . . . . . El argumento de Cantor . . . . . . . . .2.7. . . .1. . . . .1. . . . . . . . . . . . . . 5. . . . . . . . . . . . . . . . . 6. 7. . . . . . . . . . . .4. . . . . . . . . . . . . . . . . . . . La caracter´ ıstica de Euler . Grafos finitos . . . 9. . . et regna ” . . . . . . . Matrices de adyacencia e incidencia . . . . . . Rutas en una red de caminos . .15. . . . . . . . . . . .C. . . . . . . . . . . . . . . . . . subgrafos inducidos . . . . . . . 9. .10. . . . . . . . . . . . . . . . . .11. . . . . .6. . . Ejemplos . . . . . . . . .U. . . . . . . . . . . . . . . . . . . . . . . . . . . .17. . . . . . . . . . Complejidad de algoritmos y programas 8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . .4. . . . . . .2. . . 9. . . .2. . . . P y N P 10. . . . .5. . . . . . . . . . An´ alisis del problema (Resumen) . ´ INDICE GENERAL 69 69 70 70 71 71 71 72 72 72 73 73 74 74 75 75 75 75 76 76 76 76 77 77 77 78 78 78 79 79 79 80 80 80 81 81 81 82 82 82 83 83 84 87 87 87 87 88 88 88 88 89 89 . . . . . 10. Complejidad de un problema . . . . . . . . . . . . . . . . . . . . . . . . . . . Ejercicios . . . Grafos autocomplementarios . . . . . . . . . Reuniones de comisiones del Senado . . . . . . . . . . . . . .14. . . . . . . . . . .10. . . . . . Grafos como modelos . . . . . . M´ as notaci´ on asint´ otica . .1. . . . . . . 8. . . . . . v´ ertices aislados . . . . . . . . . 10. . . . . . . . . . Complejidad de un algoritmo . 9. . . . . . . . . . . . . . . . . . . . . . . .8. . . . . . . . . . . . . . . .3. . . . .2. . . . . . . . . . . . . .11. . . . . . . . . 10. . .10. . .1. . . . . . . . . . . . 9. . . .13. . . .2. . . . . . . . . .7. . . . . . . . .10. . . . . . isomorfismo . . . . . . . . 2004 .5. . . . . . . . . . . . . . . . 9. . . . . . . . . . . . .2. . 9. Complejidad de algoritmos y problemas 10. . . . .3. . . . . . . . . . . . Comentarios . . . . . . . . . . . . . . . . El teorema fundamental de los algoritmos “divide b 8. . . . . . . . . . . . . .1. . . . . . .1. . . . . . . iv P. . . . .2. . . Problemas de evaluaci´ on .3. . . . . . . .1. . . . . . . . . . . . 8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Los grafos con 4 v´ ertices . . . 9. . . . . . . . Chile. . Dibujos sin levantar el l´ apiz .2. .2. . . .6. . . . . . 9. Ciclos y caminos Hamiltonianos . . . . . . . . 8. . Subgrafos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4. . . . . . . . . . . . . . . . . . . . . .4. . grados. . . . . . . . . . . . . . . . 9. . . . . . . . . . Grafos conexos . . . . . . .2. . . . . . . . . . . . . . . . . . . . . .9. . . . . . . ¿Por qu´ e el umbral b− 1? . . . . . . . . . 9.6. . . . . . . . . . . . . . . . . . . .16. . . . . . . Problemas de b´ usqueda . . . . . . . . . . . . Problemas de optimizaci´ on . . . . . . . . . . . . . Problemas de decisi´ on . .2. . . . . . . . . . . .1. . 9. . . . . . . . . . . . . . 10. . . . . An´ alisis de la complejidad de mergesort . . . . . . . 8. . . 9. . . . . . 9. . . . .5. .1. . . Problemas computacionales relacionados con cliques y conjuntos independientes 9. .3. . . . Complemento de un grafo. . . . . . . . . . . . . . 10. .2. . 9. . . . . . Motivaci´ on: los puentes de K¨ onigsberg . . . . . . . . . . . . . . . . . . . . . . .2. . . . . Conocidos mutuos y desconocidos mutuos . . . . .2. . 9. . . 9. . . . . . . . . . . . . Tama˜ no de una instancia . . . . . . 9. . . . . . . . .3. . . . . . . . 9. . . . . . . . . . .5. .4. 8. . . . .1. . 9. c Luis Dissett. . . . . . . Problemas solubles eficientemente . . . Introducci´ on a complejidad . . . . Multigrafos. . . . . 9. . . . . .1. 10. . .6. . . . . . . . . . . . . . . . . . . . . . . . . . . Algunas clases importantes . . . . . . . . . . . . . Tipos de problemas . . .10. . . . . . . . . . Inducci´ on constructiva . . . . . . . . . . . . . 9. . . . . . . . . . . . . . . 9. . . . . .3. . . . An´ alisis del problema de K¨ onigsberg (Euler) . 8. . . . . . . . . . . . .11. . . . .2. . . . . . . . .7. . . . 10. . . . . . . . . Planaridad . .8. . Asignaci´ on de tareas a distintos empleados . . . .3. . . . 9. Grafos multipartitos y coloraci´ on . . . . . . . . . . . . . . . . . . . . . . . . . . . grafos simples . . . . . . . . . . . . . . . . Grafos 9. . . . . . . . . . . . . . . . .2. .2. . . . . . . 8. . . . . . . . . . . . 9. . . . . . . . . Notaci´ on asint´ otica . . . .10. . . . Clases de isomorfismo . . Propiedades estructurales. . . . . . . . . . .16. . . . . . . . . . 9. . 10. . . . . . . 9. . .12. . . . . . . . . . . . . . . . . . . . Otros grafos comunes . . . . . . . . . . . . . . .´ INDICE GENERAL 8. . . . . . . . . . . . . . El grafo nulo y los grafos triviales . . . . . . . . . . . . . . . . 9. . .3. . . Cliques y conjuntos independientes. . . . . . . . . . Subgrafos . . . . . .5. . . . . . . . . . . 9. . . . . . 9. . . . . . . . .1. . . . . .1. . . Adyacencia. . . Definiciones b´ asicas . . 9. . .2. . . . . . . . . . . . . . . . . . . . . . .3. . . . . . . . . . . 10. Inversos en Zn . . . . Codificaci´ on en RSA . . . . . M´ aximo com´ un divisor . . . . . . . . . . . . . . . . . . . . . . Ejemplos de problemas en N P .4. .3. . . . . . . . . . . . . . . . . . . . . Firma de mensajes . 10. . . . . . . . . . . Algoritmos no determin´ ısticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Problemas N P -completos . . v P. . . . .2.5. . . .3. El teorema de Cook . . . . . . . . . . . . . . . 10. . . . 11. . . . . . . . . . . . . . . Ejemplo: recubrimiento de un grafo por v´ ertices . . . . . . .2. . . .6. . . . . . Ejemplo de problema de decisi´ on: SAT . . . . . .3. . . . . . . 10. . . . .3. 11.8. . . . . . M´ aximo com´ un divisor . . . . . . . 10. . .5. . . . . . . . . . . . . . 11. Aritm´ etica modular . . . . . .6. . . . . .3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . .3. . 11. . . . . . 11. . . .1. .5. . . . . . . . . . . . . . . . . . . . . .3. Otros teoremas importantes. . . . . . . . . . 10. .5. . . . . . Ejemplo: coloraci´ on de mapas .5. . . . . .3. . . . . .6. . . . . . . 10. . . . . . . . . . . . .1. . . . . 11. . Complejidad de un problema . . . . . . . . . . . . . . . . El algoritmo de la divisi´ on . . . . . 11. . . . 11. . . . . . . 11. . . . . . .2. . Reducciones entre problemas . La demostraci´ on del teorema de Cook . . . . . . . . . . . . . . . . . . . . . . . . . . Exponenciaci´ on modular (na¨ ıve ) . . . Un protocolo de encriptaci´ on de clave p´ ublica . . . . . . . . . 11. . . . SAT en forma normal conjuntiva . . . . . . . . . . . .4. 10. . . Exponenciaci´ on modular . Divisores comunes. . .2. . . . . 89 89 89 89 90 90 90 90 91 91 91 91 92 92 92 92 92 93 93 94 95 95 97 97 97 98 98 98 98 99 99 99 100 100 100 100 101 101 101 101 102 103 103 104 104 104 104 104 105 106 106 . . 11. .4. 10. . . . . . . . . . . . .4. . . . . . . . . .5. . . . . y demostraciones pendientes 11. . . . . . . .6. . . . . . . . .1. . . . . . .3. . . . . . . . . .4. . . . . . 11. . . . . . . 10. 11. . . . . . . . . Transformaciones entre SAT -F N C y SAT . . . . . . Complejidad del algoritmo anterior . . ¿C´ omo se demuestra que un problema es N P -completo? 10. . . . . . . . . . . . .3. . . . . . . . . . . . . . . . . . . . . .1. Chile. . . . . . . Demostraci´ on del peque˜ no teorema de Fermat . . . . . . . . .5. . El algoritmo de Euclides. . . . . . . . . . . . . . . Transformaciones entre problemas de decisi´ on . . . . . . . .7. . . . . . . 11. . .2.2. . .2. . . .3. . 11. . . . . . . . . .1. . . . .6. . . . . . . . . .Aritm´ etica modular y criptograf´ ıa 11. . . . . . . . . . . .6. . . . . . .6. . . . . . Complejidad del algoritmo anterior . . . .2. . c Luis Dissett.6. . . Problemas de decisi´ on vs otros problemas . . . . .2. . . . . . . . . . . . .1. . . . . 2004 .4. . 10. . . . . . . . . . . . . . . . . . . ´ INDICE GENERAL . . . . . . . . . . . . . . . . . . . . . . . . . .2. . . . . . . . . . . . . . . . . . 11. . . . . . . . . . . 10. . .4. . . . . . . . . . . 11. . . .1. . Otros problemas N P –completos .4. . . 11. . . . . .2.6. . . . . . . . El algoritmo extendido de Euclides . . Demostraci´ on del teorema chino de los restos . . . . . . . . . . . . . . . . . . . Cuerpos . . . . . . . . . . . 10. . . . . . . . . . . Relaci´ on entre Z y Zn . . . . . . . . . . . . . . . . .3. . . . . . . . . . . .4. . . . . . . 10. . . . . .7. .4.5.2. La clase N P (Non-deterministic Polynomial) . . . . . . . . . . . . . . . . . . . . . . .4.5. .7. .6. . . . . . . . . . . .4. . 11. . . . . . . . . . . . . . . . .4. . . ¿C´ omo se demostrar´ ıa que P = N P (o que P = N P )? . . . . . . . . .´ INDICE GENERAL 10. . . Algoritmos eficientes . . . . . . . . Introducci´ on a la Criptograf´ ıa . . . . . . . . . . . . . El peque˜ no teorema de Fermat . . . . 10. Otros problemas . . Exponenciaci´ on modular (m´ as astuta) . 11. . . . . .1. .U. . . . . El teorema chino de los restos . . . .4. . .1. . . . . . . . . .1. . . 10. . Verificaci´ on de la firma . . . . . . . . . . . . .4. . . . . Decodificaci´ on en RSA . 10. 11. . . . . .6. . . . . . . . . . Relaci´ on entre P y N P . . . . . .7. . .8. Divisibilidad. .3. El (gran) teorema de Fermat . . . . . . . . . . . . . . . . . . . . . .6. . . . . . . . . . . .3. . . . . . . . . . . . . . . . 11. . . . . .5. 11.1. . . . .1. . . . . . . . . . . 11. . . . . . . . . . . . . . . . .1. . . . . 11. . . . . . . Supuestos para que RSA funcione . . . . . . . 10. . . . . Complejidad de un algoritmo . Teorema fundamental de la aritm´ etica . . . . . . . . . . . .4. . . . . . . . .1. . . . . .2.4. . . . . . . . . . 10. . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . 10. . 11. . . . 11. . . . . .2. . . . . . .C. . 2004 .U. vi P. Chile.C.´ INDICE GENERAL ´ INDICE GENERAL c Luis Dissett. Espero que le sean u ´tiles. a mis alumnos en futuras versiones de estos cursos. en primer lugar. y tambi´ en a otros profesores que deseen usarlos como referencia para sus cursos. vii . este borrador de apuntes) resumen el contenido de los cursos de Matem´ atica Discreta que he dictado en las Facultades de Matem´ atica e Ingenier´ ıa entre los a˜ nos 2000 y 2004.Pr´ ologo (provisorio) Estos apuntes (o mejor dicho. viii P. 2004 .U.´ INDICE GENERAL ´ INDICE GENERAL c Luis Dissett. Chile.C. 1. Algunos conectivos Negaci´ on La negaci´ on de una proposici´ on es la que afirma que la proposici´ on original no es verdadera. Una proposici´ on es una afirmaci´ on que puede ser verdadera o falsa. cada vez que el antecedente es verdadero. o ambas son verdaderas. En estricto rigor. Para combinar proposiciones y formar nuevas proposiciones m´ as complejas usamos los llamados conectivos l´ ogicos . F´ ormulas proposicionales Para trabajar con proposiciones. Puede ser obtenido precediendo el antencedente por “si” e intercalando “entonces” entre el antecedente y el consecuente.Cap´ ıtulo 1 L´ ogica Proposicional 1. ¿Cu´ antos conectivos binarios (esencialmente diferentes) es posible definir? Respuesta. Hay un total de 24 = 16 conectivos binarios distintos. Puede ser obtenida intercalando la frase “si y s´ olo si”. a la cual se asocia una proposici´ on. Se obtiene intercalando “o” entre las dos proposiciones originales. Generalmente se obtiene agregando “no” (o “no es verdad que”) antes de la proposici´ on original. Proposiciones.2. 1 . Se obtiene intercalando “y” entre las dos proposiciones originales. Conjunci´ on La conjunci´ on de dos proposiciones es la que afirma que ambas proposiciones son verdaderas. 1. Una proposici´ on es at´ omica si es imposible descomponerla en proposiciones m´ as simples. el consecuente tambi´ en lo es. f´ ormulas proposicionales Definici´ on 1. conectivos. Condicional La proposici´ on condicional entre dos proposiciones (el antecedente y el consecuente ) es la que afirma que. llamadas —apropiadamente— f´ ormulas proposicionales . las representamos por f´ ormulas .1. una f´ ormula proposicional es simplemente una secuencia de s´ ımbolos. Postergaremos la justificaci´ on de esto hasta que veamos tablas de verdad . o ambas son falsas.1.1. Bicondicional La proposici´ on bicondicional entre dos proposiciones es la que afirma que. o bien “siempre y cuando” entre las dos proposiciones originales. Disyunci´ on La disyunci´ on de dos proposiciones es la que afirma que al menos una de las dos proposiciones es verdadera. Ejercicio. 3. as´ ı. ALGUNOS COMENTARIOS ´ CAP´ ITULO 1. Las proposiciones compuestas son representadas como sigue: si dos proposiciones ϕ y ψ son representadas. 1 Estrictamente hablando. 1. 2004 . formada por subproposiciones. etc.U. entonces representamos (y leemos) las siguientes proposiciones compuestas como sigue: Proposici´ on Representaci´ on Lectura Negaci´ on de ϕ (¬p) no p. R. Una asignaci´ on de verdad es una lista de “valores de verdad” (Verdadero o Falso) asociadas a las proposiciones at´ omicas que forman las proposiciones con las que estamos trabajando1 As´ ı.1. ser´ a verdadera o falsa dependiendo de los valores de verdad de las subproposiciones que la forman. 1. . 2 P. respectivamente. Valor de verdad de proposiciones compuestas Una proposici´ on compuesta.3. que generalmente son letras may´ usculas: P . una asignaci´ on de verdad asigna Verdadero o Falso a las variables proposicionales que estamos considerando. podemos tener variables proposicionales P1 . en la medida de lo posible. Bicondicional entre ϕ y ψ (p ↔ q ) p si y s´ olo si q . Q2 . LOGICA PROPOSICIONAL Las proposiciones at´ omicas son representadas por variables proposicionales . En el ejemplo anterior. Conjunci´ on de ϕ y ψ (p ∧ q ) p y q. (¬P ∧ Q) ser´ a falsa (conjunci´ on de una proposici´ on falsa y una verdadera). cuando no se preste a confusiones.C. Algunos comentarios Note que tenderemos a identificar las f´ ormulas proposicionales con las proposiciones que representan. ((¬P ∧ Q) ∨ (R ∨ P )) ser´ a verdadera (disyunci´ on de una proposici´ on falsa y una verdadera). nuestra suposici´ on de que P y Q eran verdaderas y R falsa constituye una asignaci´ on de verdad. por las f´ ormulas proposicionales p y q . en la medida en que esto no deje ambigua a la f´ ormula. Disyunci´ on de ϕ y ψ (p ∨ q ) p o q. Q. Finalmente. Q1 . Ejemplo. y sup´ ongase que P y Q son verdaderas y R falsa. Entonces: ¬P ser´ a falsa (negaci´ on de una proposici´ on verdadera). Adem´ as. Condicional entre ϕ y ψ (p → q ) si p entonces q . a veces diremos “proposici´ on” cuando lo correcto ser´ ıa decir “f´ ormula proposicional”.5. . una asignaci´ on de verdad determina el valor de verdad de cada una de las proposiciones compuestas con las que estamos trabajando. Q3 . Chile. Consid´ erese la proposici´ on ((¬P ∧ Q) ∨ (R ∨ P )).. S . etc. P3 . (R ∨ P ) ser´ a verdadera (disyunci´ on de una proposici´ on falsa y una verdadera). 1. eliminaremos los par´ entesis m´ as exteriores de (p ∧ q ).4. (p ∨ q ). identificaremos las proposiciones at´ omicas con las variables proposicionales que las representan. etc. recurrimos a sub-´ ındices. intentaremos eliminar la mayor cantidad posible de par´ entesis. Asignaciones de verdad Definici´ on 2. P2 . En general. En particular. . o sea. Si debemos utilizar demasiadas variables proposicionales. c Luis Dissett. 3 P.U. y (2 < 4 → 2 + 2 = 4).6. Al tratar de demostrar que una cierta conclusi´ on c se desprende de una serie de premisas p1 . Denotaremos las tautolog´ ıas por To y las contradicciones por Fo . mientras que la proposici´ on r : 1 + 3 = 4 tambi´ en lo es. TABLAS DE VERDAD 1. ∧ pn ) → c es una tautolog´ ıa. (P ∧ ¬P ). Las proposiciones s : t : (2 < 3 → 2 < 4). Consecuencia l´ ogica Consideremos dos situaciones: 1. 2. Tautolog´ ıas y contradicciones Definici´ on 3. La tabla de verdad para ((¬P ∧ Q) ∨ (R ∨ P )) es como sigue: P 0 0 0 0 1 1 1 1 Q 0 0 1 1 0 0 1 1 R 0 1 0 1 0 1 0 1 ((¬P 1 1 1 1 0 0 0 0 ∧ 0 0 1 1 0 0 0 0 Q) ∨ 0 1 1 1 1 1 1 1 (R ∨ 0 1 0 1 1 1 1 1 P) 1. Chile. LOGICA PROPOSICIONAL 1.6. mientras que la proposici´ on u : (2 < 3 → 2 + 2 = 4) tambi´ en lo es. Ejemplo. son verdaderas. . Tablas de Verdad Resumiremos los valores de verdad de que toma una proposici´ on compuesta. Las proposiciones p q : (3 < 2 ∨ 1 + 3 = 4).´ CAP´ ITULO 1. . en el fondo estamos tratando de probar que (p1 ∧ p2 ∧ . . p2 . y : (2 < 5 → 1 + 3 = 4). Ejemplo. Una tautolog´ ıa es una proposici´ on que es verdadera en toda asignaci´ on de verdad. . son verdaderas. en una tabla de verdad .C. Notaci´ on. . Una contradicci´ on es una proposici´ on que es falsa en toda asignaci´ on de verdad. para todas las posibles asignaciones de verdad. usaremos los s´ ımbolos 1 para indicar Verdadero y 0 para indicar Falso. ((P → Q) ↔ (¬P ∨ Q)).8. 2004 .7. Ejemplo. 1. En dichas tablas. c Luis Dissett. . pn . Ejemplo. . Si Σ = {ϕ}. Chile. Podemos escribir: p:X ∨Y q:Z→Y r:Y s:F →G t:G→H u : F → H. . t y u son s´ olo consideradas en funci´ on de su estructura.U. r. Denotaremos la equivalencia l´ ogica entre P y Q por P ⇔ Q.9. ϕn } de proposiciones.C. Tratando de construir una asignaci´ on de verdad que haga verdaderas todas las proposiciones de Σ y falsa a ψ . q. donde X. Definici´ on de consecuencia l´ ogica Definici´ on 4. Falso a Y y Falso a Z . . Esto puede ser hecho usando tablas de verdad (de nuevo. q y r. Notaci´ on. ϕ2 . .´ DE CONSECUENCIA LOGICA ´ CAP´ ´ 1. F. Note que ψ es tautolog´ ıa si y s´ olo si ∅ |= ψ . ϕn hace verdadera tambi´ en a ψ . Y. Denotaremos el hecho de que ψ es consecuencia l´ ogica de Σ por Σ |= ψ Observaci´ on. es imposible hallar una asignaci´ on de verdad que haga verdaderas a s y t y haga falsa a u (¿c´ omo es posible convencerse de esto. que ser´ a explicada en la primera ayudant´ ıa. 1. Equivalencia l´ ogica Definici´ on 5. DEFINICION ITULO 1. Z. ¿Ser´ a verdad que toda asignaci´ on de verdad que hace verdaderas a p y a q debe tambi´ en hacer verdadera a r? ¿Ser´ a verdad que toda asignaci´ on de verdad que hace verdaderas a s y a t debe tambi´ en hacer verdadera a u? Observamos que. Dados un conjunto Σ = {ϕ1 . 1. G y H son proposiciones at´ omicas. Sean P y Q dos proposiciones cualesquiera (at´ omicas o compuestas). ϕ2 . . . y mostrando que esto es imposible. aparte de probando todas las asignaciones de verdad posibles?). es posible hallar una asignaci´ on de verdad (para las proposiciones at´ omicas X. ¿C´ omo refutar consecuencia l´ ogica? Respuesta: Encontrando una asignaci´ on de verdad que haga verdaderas todas las proposiciones de Σ y falsa a ψ . En el segundo caso. LOGICA PROPOSICIONAL Consideremos s´ olo las estructuras de las proposiciones involucradas. Notaci´ on. s. Vistas de esta forma. Denotamos este hecho por |= ψ . ¿C´ omo probar consecuencia l´ ogica? Tablas de verdad (fuerza bruta). Notaci´ on. 2004 . y una proposici´ on ψ . . Diremos que P y Q son l´ ogicamente equivalentes si toda asignaci´ on de verdad que hace verdadera a P hace verdadera a Q y viceversa. pero hace falsa a r. Una estrategia que puede ser u ´til en este sentido es la de resoluci´ on . debemos asignar Verdadero a X . . Simplemente. sin embargo.10. Y y Z ) que hace verdaderas a p y q . 4 P.9. c Luis Dissett. para p. fuerza bruta) o bien tratando de construir dicha asignaci´ on de verdad (y teniendo ´ exito en el intento). en lugar de decir que ψ es consecuencia l´ ogica de {ϕ} diremos simplemente que ψ es consecuencia l´ ogica de ϕ. diremos que ψ es consecuencia l´ ogica de Σ si toda asignaci´ on de verdad que hace verdaderas a ϕ1 . en que p. LOGICA PROPOSICIONAL ´ 1.C. 1. ⇔ Fo . p ∧ (q ∨ r) ⇔ (p ∧ q ) ∨ (p ∧ r). Dadas dos proposiciones P y Q. ⇔ To . Chile.´ CAP´ ITULO 1. p ∧ (q ∧ r) ⇔ (p ∧ q ) ∧ r. ⇔ p. Ejercicio. Leyes de de Morgan ¬(p ∨ q ) ⇔ ¬p ∧ ¬q. Las leyes de la l´ ogica Las siguientes equivalencias l´ ogicas son conocidas como las leyes de la l´ ogica : Ley de la doble negaci´ on ¬¬p ⇔ p.11. ⇔ Fo . se tiene que P ⇔ Q si y s´ olo si P ↔ Q es una tautolog´ ıa. ⇔ q ∨ p. Leyes de idempotencia p∨p p∧p Leyes de elemento neutro p ∨ Fo p ∧ To Leyes de elemento inverso p ∨ ¬p p ∧ ¬p Leyes de dominaci´ on p ∨ To p ∧ Fo Leyes de absorci´ on p ∨ (p ∧ q ) ⇔ p. Demostraci´ on. ⇔ q ∧ p. 2004 . ⇔ p. ⇔ To . ¬(p ∧ q ) ⇔ ¬p ∨ ¬q. ⇔ 5 ¬p ∨ q. Leyes conmutativas p∨q p∧q Leyes asociativas p ∨ (q ∨ r) ⇔ (p ∨ q ) ∨ r.11. ⇔ p. Ley de la implicaci´ on p→q c Luis Dissett.U. Leyes distributivas p ∨ (q ∧ r) ⇔ (p ∨ q ) ∧ (p ∨ r). LAS LEYES DE LA LOGICA Una formulaci´ on equivalente Teorema. p ∧ (p ∨ q ) ⇔ p. P. ⇔ p. c Luis Dissett. Esta tabla de verdad tiene 2n l´ ıneas. . A continuaci´ on demostraremos que toda f´ ormula proposicional puede ser escrita como: conjunci´ on de disyunciones de literales. Ejercicio. Si F ⇔ G. Dada una f´ ormula proposicional ϕ. ϕ est´ a en FND. y la ley seguir´ a siendo v´ alida.C. . Si en P se reemplazan una o m´ as ocurrencias de una proposici´ on Q por una proposici´ on Q l´ ogicamente equivalente a Q. 6 P. q . As´ ı. es posible reemplazar todas las ocurrencias de una proposici´ on at´ omica (p. Sea F una proposici´ on que contiene s´ olo los conectivos ¬. El principio de dualidad Las leyes anteriores (excepto en dos casos) est´ an agrupadas en pares. Llamamos literales a los s´ ımbolos que representan proposiciones at´ omicas.12. o bien disyunci´ on de conjunciones de literales. Como ψ ⇔ ¬ϕ. podemos hallar una f´ ormula ψ en FND l´ ogicamente equivalente a ¬ϕ. etc. X2 . En cada caso. .´ 1. Cada l´ ınea de la tabla de verdad corresponde a una asignaci´ on de verdad a las variables proposicionales X1 . . Entonces la proposici´ on dual de F (que denotamos por F d ) es la proposici´ on que resulta de reemplazar cada aparici´ on de ∧ por ∨ (y viceversa). A la primera forma la llamamos Forma Normal Conjuntiva (FNC).) por cualquier proposici´ on . Considere la tabla de verdad para la f´ ormula proposicional ϕ. una f´ ormula ϕ en FND que es l´ ogicamente equivalente a ϕ est´ a dada por la disyunci´ on de las conjunciones de literales correspondientes a las l´ ıneas de la tabla de verdad donde ϕ se hace verdadera. Chile. o bien representan proposiciones at´ omicas.U. ∧ y ∨. .13. representaciones de proposiciones como strings de s´ ımbolos. Teorema (Principio de dualidad). . Para hallar una f´ ormula ϕ en FNC que sea l´ ogicamente equivalente a ϕ. Estos s´ ımbolos. existen f´ ormulas proposicionales ϕ y ϕ tales que ϕ est´ a en FNC. LOGICA PROPOSICIONAL 1. . M´ as precisamente. y al s´ ımbolo de negaci´ on (¬) seguido de un s´ ımbolo que representa a una proposici´ on at´ omica.12. y a la segunda Forma Normal Disyuntiva (FND). tenemos que ¬ψ ⇔ ϕ. y despu´ es aplicar De Morgan dos veces para transformar ¬ψ en una f´ ormula en FNC. y Li = ¬Xi si la asignaci´ on de verdad asigna Falso a Xi ). Definici´ on 6. . Toda proposici´ on puede ser re-escrita en FNC o en FND. basta probar una de las leyes de cada par de duales. . X2 . o bien son conectivos. y cada aparici´ on de To por Fo (y viceversa). ϕ ⇔ ϕ y ϕ ⇔ ϕ . Formas Normales Recordemos que estamos estudiando f´ ormulas proposicionales . 1. entonces F d ⇔ Gd . 1. se tiene el siguiente Teorema. REGLAS DE SUSTITUCION ´ CAP´ ITULO 1.14. As´ ı. ∧ Ln (donde Li = Xi si la asignaci´ on de verdad asigna Verdadero a Xi . r. y puede ser interpretada como una conjunci´ on de n literales L1 ∧ L2 ∧ . 2004 . una de las leyes es lo que llamamos el dual de la otra. Sean X1 . o sea. Aplique el m´ etodo indicado arriba para encontrar f´ ormulas en FNC y FND que sean l´ ogicamente equivalentes a (P ∧ Q) → (R ∧ ¬Q). Xn las variables proposicionales que aparecen en ϕ. . Xn . la proposici´ on P resultante ser´ a l´ ogicamente equivalente a P . Demostraci´ on. Sea P una proposici´ on cualquiera. Reglas de sustituci´ on En las leyes anteriores. No veremos la demostraci´ on de este teorema. nos gustar´ ıa poder asegurar que la implicaci´ on es v´ alida (l´ ogicamente verdadera). 2004 . vemos que (p ∧ q ) → (¬q ∨ r) (p ∧ q ) (¬q ∨ r) c Luis Dissett. de modo de terminar obteniendo la conclusi´ on deseada.U. As´ ı. Modus Tollens . Las primeras reglas de inferencia que consideraremos est´ an dadas por las equivalencias que aparecen en las leyes de la l´ ogica.´ CAP´ ITULO 1. La regla de amplificaci´ on disyuntiva . La regla de demostraci´ on por casos .15. si tenemos como premisa P y una ley de la l´ ogica nos dice que P ⇔ Q. La regla de conjunci´ on .C. 7 P. etc. sin tener que probar todas las combinaciones de valores de verdad (que pueden ser demasiados). ∧ pn ) → c. En lo que sigue. La regla de simplificaci´ on conjuntiva . . P . Estudiaremos a continuaci´ on reglas de inferencia que nos permitir´ an ir obteniendo conclusiones a partir de un conjunto de premisas. La regla de resoluci´ on . Otras reglas que estudiaremos son: La ley del silogismo . tenemos derecho a deducir P → R. La regla de demostraci´ on condicional . Reglas de inferencia Queremos enunciar reglas que nos permitan justificar nuestras deducciones de conclusiones a partir de premisas dadas. no necesariamente at´ omicas. La regla de contradicci´ on . 1. a las que posiblemente habremos aplicado las reglas de sustituci´ on . La ley del silogismo disyuntivo ..16. La regla del dilema constructivo . REGLAS DE INFERENCIA 1. Aplicando modus ponens . por ejemplo. Las reglas Ley del silogismo Cada vez que tengamos como premisas proposiciones de las formas P → Q y Q → R. tenemos derecho a deducir Q. o “m´ etodo de la afirmaci´ on”.15. LOGICA PROPOSICIONAL 1. Chile. Q. En s´ ımbolos: P →Q P Q Ejemplo. o “m´ etodo de la negaci´ on”. representan proposiciones cualesquiera. al hacer una demostraci´ on del tipo (p1 ∧ p2 ∧ . La regla del dilema destructivo . En s´ ımbolos: P →Q Q→R P →R Modus ponens Cada vez que tengamos como premisas proposiciones de las formas P → Q y P . . Modus Ponens . entonces podemos deducir Q. R. Supongamos que tenemos por premisas (p ∧ q ) y ((p ∧ q ) → (¬q ∨ r)). As´ ı. 8 P. En s´ ımbolos: P → Fo ¬P Regla de simplificaci´ on conjuntiva Cada vez que tengamos como premisa una proposici´ on de la forma P ∧ Q. tenemos derecho a deducir R. LOGICA PROPOSICIONAL Modus tollens Cada vez que tengamos como premisas proposiciones de las formas P → Q y ¬Q. tenemos derecho a deducir ¬P . Aplicando modus tollens .16. LAS REGLAS ´ CAP´ ITULO 1.C. tenemos derecho a deducir P ∧ Q. En s´ ımbolos: P ∨Q ¬P Q Regla de contradicci´ on Cada vez que tengamos como premisa una proposici´ on de la forma P → Fo . En s´ ımbolos: P ∧Q P Regla de amplificaci´ on disyuntiva Cada vez que tengamos como premisa una proposici´ on de la forma P . tenemos derecho a deducir ¬P . En s´ ımbolos: P →Q ¬Q ¬P Ejemplo. En s´ ımbolos: P P ∨Q Regla de demostraci´ on condicional Cada vez que tengamos como premisas proposiciones de las formas P ∧ Q y P → (Q → R). Chile. tenemos derecho a deducir P ∨ Q.1.U. vemos que (p ∨ q ) → r ¬r ¬(p ∨ q ) Regla de conjunci´ on Cada vez que tengamos como premisas proposiciones de las formas P y Q. Supongamos que tenemos por premisas (p ∨ q ) → r y ¬r. En s´ ımbolos: P ∧Q P → (Q → R) R c Luis Dissett. 2004 . En s´ ımbolos: P Q P ∧Q Ley del silogismo disyuntivo Cada vez que tengamos como premisas proposiciones de las formas P ∨ Q y ¬P . tenemos derecho a deducir P . tenemos derecho a deducir Q. que no sea posible deducir nada que no sea consecuencia l´ ogica de las premisas. agregadas a las leyes de la l´ ogica. en otras palabras. En s´ ımbolos: P →R Q→R (P ∨ Q) → R Regla del dilema constructivo Cada vez que tengamos como premisas proposiciones de las formas P → Q. En s´ ımbolos: P →Q R→S P ∨R Q∨S Regla del dilema destructivo Cada vez que tengamos como premisas proposiciones de las formas P → Q. SISTEMAS DEDUCTIVOS Regla de demostraci´ on por casos Cada vez que tengamos como premisas proposiciones de las formas P → R y Q → R. R → S y P ∨ R. entonces ϕ puede ser deducido de ´ estas. Chile. necesariamente. o sea. Ejemplo de uso de las reglas Consideremos el sistema deductivo formado por todas las reglas enunciadas anteriormente. ¬r ∨ q. q → r} . Sistemas deductivos Llamamos sistema deductivo a cualquier conjunto de reglas (de entre las mencionadas. Entre las caracter´ ısticas que nos interesa que tenga un posible sistema deductivo se destacan dos: (a) Que sea correcto (en ingl´ es. tenemos derecho a deducir Q ∨ S . tenemos derecho a deducir ¬P ∨ ¬R. R → S y ¬Q ∨ ¬S .18.17. c Luis Dissett. nos permitan deducir conclusiones a partir de premisas. sound ). u otras) que.U.17. y (b) Que sea completo . LOGICA PROPOSICIONAL 1. que cualquier conclusi´ on que se obtenga a partir de las premisas deba ser. 2004 . tenemos derecho a deducir (P ∨ Q) → R.´ CAP´ ITULO 1. 1. o sea. 9 P. que si ϕ es consecuencia l´ ogica de las premisas.C. Las usemos para demostrar que p→q es consecuencia l´ ogica de {p ∧ (r ∨ q ). consecuencia l´ ogica de ´ estas. En s´ ımbolos: P →Q R→S ¬Q ∨ ¬S ¬P ∨ ¬R 1. 11.7 Ley de la implicaci´ on. LOGICA PROPOSICIONAL Premisa Premisa Premisa Simplificaci´ on conjuntiva.2) (1.11 Premisa Ley de la doble negaci´ on. 1. 2004 .8) (1. tenemos derecho a deducir P ∨ R.16 Modus ponens.13 Ley de la implicaci´ on.1 Regla de conjunci´ on. 1.12 y 1. 11. s ∨ r.9) 1.10 y 1.2 y 1. 1. En s´ ımbolos: P ∨Q ¬Q ∨ R P ∨R Este sistema deductivo es correcto (sound ) y completo (no lo demostraremos aqu´ ı).1) (1.1.4) (1. 10 P. ya que P ⇔ P ∨ Fo y ¬P ⇔ ¬P ∨ Fo .15 y 1.19. c Luis Dissett.7) (1. 1.11) (1.16) (1.18) (1.5 (1. Chile. 1.13) (1. ¬s ∧ ¬t} . 1. p → q. 1. y no s´ olo puede ser usado para deducir sino tambi´ en para refutar.15) (1.10) (1.19) 1.14 Premisa Simplificaci´ on conjuntiva.12) (1.18 (1.U.14) (1. 1. Note que de P y ¬P podemos deducir Fo .4 Ley distributiva.C. Nuestro argumento es como sigue: p p→q q s∨r ¬¬s ∨ r ¬s → r ¬s ∧ ¬t ¬s r q∧r Premisa Premisa Modus Ponens.6 Amplificaci´ on disyuntiva.5) (1. 1. OTRO EJEMPLO El argumento que damos es el siguiente: p ∧ (r ∨ q ) ¬r ∨ q q→r r∨q (¬r ∨ q ) ∧ (r ∨ q ) (¬r ∧ r) ∨ q q ¬p ∨ q p→q ´ CAP´ ITULO 1. 1.6) (1.3) (1.20.19. Otro ejemplo Usemos este mismo sistema deductivo para demostrar que q∧r es consecuencia l´ ogica de {p.17) (1.5 Elemento neutro.17 Regla de conjunci´ on. Resoluci´ on Un sistema deductivo muy importante en Inteligencia Artificial es el formado por la u ´nica regla de resoluci´ on : Cada vez que tengamos como premisas proposiciones de las formas P ∨ Q y ¬Q ∨ R. Q → R} |= R. de R y ¬R obtenemos nuestra contradicci´ on. ¬R} . Traduzca a s´ ımbolos: a) b) c) Si el sol est´ a brillando. LOGICA PROPOSICIONAL 1. hacemos lo siguiente: Transformamos todas las f´ ormulas de Σ a FNC. Sucesivas aplicaciones de la regla de resoluci´ on dan: de P ∨ Q y de ¬P ∨ R. obtenemos Q ∨ R. Sean p. En caso contrario. s: la humedad es baja.´ CAP´ ITULO 1. Σ |= R. Soluci´ on: T ras transformar las f´ ormulas de Σ a FNC.C. y agregar la negaci´ on de R en FNC. no lo es. entonces juego tenis. Chile. de Q ∨ R y ¬Q obtenemos R. Demostraremos que Σ = {P ∨ Q. P → R. r las siguientes proposiciones: p: hago la tarea.21. . q : juego al tenis. Aplicamos la regla de resoluci´ on. Hacer la tarea es requisito para que jugar al tenis. ´ Arboles de refutaci´ on PENDIENTE 1. c ) q → q. r: el sol est´ a brillando. 11 P. entonces Q es consecuencia l´ ogica de Σ. Determine el valor de verdad de: a ) p ∧ q. de ¬Q ∨ R y ¬R obtenemos ¬Q. O sea. finalmente. 2004 c Luis Dissett. 1. ¬P ∨ R. b ) ¬p ∨ q . EJERCICIOS Deducci´ on usando resoluci´ on Para demostrar (o refutar) el que Σ |= Q. Ejemplo. Ejercicios Sean p y q dos proposiciones at´ omicas tales que p → q es falsa.21. d ) ¬q → ¬p. Si el sol est´ a brillando y la humedad es baja entonces juego tenis. ¬Q ∨ R. Negamos la conclusi´ on deseada (Q) y la ponemos en FNC. usando resoluci´ on. Si se lleg´ o a una contradicci´ on. hasta que: o bien derivamos una contradicci´ on. obtenemos: {P ∨ Q. o bien la regla no puede ser aplicada. 2. q .U. 12 P. que (p ∨ q ) → (q → q ) es una tautolog´ ıa. Demuestre que p → q no es consecuencia l´ ogica de {p ∨ r. . La humedad no es baja. entonces (p → (q ∨ r)) ⇔ ((p ∧ ¬q ) → r)). C2 . ” . que tambi´ en est´ a en forma normal conjuntiva. dada una proposici´ on ϕ en forma normal conjuntiva (o sea. 5.1. ¿Es (p ∨ q ) → (q → (p ∧ q )) una tautolog´ ıa? 7. y tal que ϕ es satisfactible (o sea. Cn son cl´ ausulas). ϕ = C1 ∧ C2 ∧ . a menos que el sol est´ e brillando . Demuestre que p → q es consecuencia l´ ogica de {p ∧ (r ∨ q ). las reglas de sustituci´ on y las leyes de la l´ ogica. c Luis Dissett. o bien una proposici´ on at´ omica. es posible encontrar una f´ ormula ϕ . ¬r ∨ q. ∧ Cn donde C1 . existe una asignaci´ on de verdad que la hace verdadera) si y s´ olo si ϕ lo es. Demuestre. una f´ ormula proposicional est´ a en Forma Normal Conjuntiva (FNC) si es una conjunci´ on de cl´ ausulas: n mi ( i=0 j =0 lij ). 2004 . donde cada cl´ ausula est´ a formada por exactamente tres literales.21. ¬r ∨ q. . (p ∧ r) → (q ∨ r} Demuestre. una disyunci´ on de literales es llamada una cl´ ausula . q y r son proposiciones at´ omicas. EJERCICIOS d) e) 3. Chile. a) b) c) Verifique que p → (q → (p ∧ q )) es una tautolog´ ıa. LOGICA PROPOSICIONAL Ni el sol est´ a brillando ni la humedad es baja. o la negaci´ on de una proposici´ on at´ omica. esta vez usando ´ arboles de refutaci´ on. sin usar tablas de verdad . que si p. . . 4. Demuestre que.C. q → r}. 8. Repita los ejercicios de los tipos “¿es la f´ ormula Q consecuencia l´ ogica de . .U. 6. usando la parte (a). . Recuerde que: a) b) c) un literal es. . ´ CAP´ ITULO 1. Sean p y q dos proposiciones at´ omicas. podemos escribir P (x. 2. y otros). En el predicado u + f (v.Cap´ ıtulo 2 L´ ogica de predicados 2. y su valor de verdad depender´ a de los valores que tengan x e y . z . podemos distinguir entre los predicados P (x. A veces escribimos las relaciones como s´ ımbolos entre los elementos que relacionan (ejemplo: no escribimos < (x.1. 2. Interpretaciones y dominios No podemos estudiar un predicado sin asignarle un significado a los distintos s´ ımbolos que en ´ el aparecen. etc. Predicados at´ omicos En el ejemplo anterior. Para esto. Como este predicado depende de x y de y . al analizar un predicado. Variables. constantes (0. por ejemplo: P (x. π . y ) sino x < y ). y otros predicados.). La frase “x es par e y es impar” no es una proposici´ on (no es ni verdadera ni falsa).1. y .3.1. v y w. y ).2. las variables u. consideraremos una interpretaci´ on . s´ ımbolos de funci´ on y operaci´ on y a los s´ ımbolos que representan relaciones (predicados at´ omicos). y los s´ ımbolos de operaci´ on + y ·. Si reemplazamos x e y por dos n´ umeros enteros. Si denotamos “x es par” por Q(x) e “y es impar” por R(y ). 13 . y los predicados Q(x) y R(y ) por el otro: el primero est´ a formado por otros predicados. la frase se transforma en una proposici´ on. y ) por un lado. Definiciones b´ asicas Ejemplo. encontramos s´ ımbolos que representan variables (x. A los predicados que no pueden ser descompuestos en predicados m´ as peque˜ nos los llamaremos predicados at´ omicos . el s´ ımbolo de funci´ on f . 0) = 2 · w encontramos las constantes 0 y 2.1. funciones y operaciones . mientras que los u ´ltimos no pueden ser descompuestos en predicados m´ as peque˜ nos. funciones y operaciones En un predicado. 2.1. lo denotaremos por una letra con x e y entre par´ entesis. 2. Ejemplo. 1. que consiste en un dominio o universo D y en asignaciones de significado a las constantes. Usamos estos predicados para representar relaciones. constantes. Diremos que la frase anterior es una “proposici´ on abierta” o “predicado”. y ) ⇔ Q(x) ∧ R(y ). Proposiciones v´ alidas (l´ ogicamente verdaderas) El concepto de tautolog´ ıa.2. Z. Cuantificadores En matem´ aticas. 2. sino a una matriz.C. Los s´ ımbolos ∀ y ∃ son llamados cuantificador universal y cuantificador existencial respectivamente. 2. podemos formar las proposiciones: ∀x(P (x)) ∃x(P (x)) : Si reemplazamos x por cualquier elemento de D. La proposici´ on ∃x∀y (P (x. y ) un predicado binario (con dos argumentos). y ) representa la relaci´ on “x divide a y ”. el conjunto de matrices de 2 × 2). las variables pueden aparecer relacionadas con un cuantificador (ligadas ) o libres . Verdad l´ ogica. 14 P. 2. 2. Sea P (x) un predicado. Ejemplo. Ejemplo. entonces P (x) se hace verdadera.U.2.1. As´ ı. LOGICA DE LOGICA Ejemplo. La proposici´ on ∀x(P (x) ∨ ¬P (x)) es l´ ogicamente verdadera. La misma proposici´ on es verdadera si D = N. o proposici´ on l´ ogicamente verdadera de la l´ ogica proposicional tiene su contraparte en l´ ogica de predicados.2. si P (x) es un predicado que depende s´ olo de x.2.5.1. al reemplazar x por dicho valor.´ ´ CAP´ ´ ´PREDICADOS 2. CONSECUENCIA LOGICA ITULO Y EQUIVALENCIA 2. el dominio de interpretaci´ on puede ser N. Al considerar el predicado S (x) : x = 0 → x · x = 0. y ) representa la relaci´ on x > y . y P (x. C o incluso alg´ un conjunto no num´ erico (por ejemplo. VERDAD LOGICA. Si P es una proposici´ on en l´ ogica de predicados. abreviaremos usando el s´ ımbolo ∀ y en el segundo usaremos el s´ ımbolo ∃. la proposici´ on resultante es verdadera. 2. Chile. Un predicado que no tiene variables libres es una proposici´ on.2. el s´ ımbolo 0 no representar´ a a un n´ umero. R. : En D hay al menos un valor tal que. muchas afirmaciones son de la forma “todos los elementos de D (un dominio dado) satisfacen el predicado P (x)” o bien “hay al menos un elemento de D que satisface P (x)”. Q. Sea P (x. Un predicado con variables libres es una proposici´ on abierta. c Luis Dissett. 2004 .4. y )) es falsa en la interpretaci´ on en que D = N y P (x. consecuencia l´ ogica y equivalencia l´ ogica Interpretaciones y valores de verdad Las proposiciones en l´ ogica de predicados son verdaderas o falsas dependiendo de la interpretaci´ on en que sean consideradas. Variables libres y ligadas En un predicado.1. En este u ´ltimo caso. En el primer caso. decimos que P es l´ ogicamente verdadera (o v´ alida ) si se hace verdadera en toda interpretaci´ on. y )) es consecuencia l´ ogica de ∃y ∀x(P (x. si P y Q son l´ ogicamente equivalentes. Ejemplo. y )) |= ∀x∃y (P (x. si Σ consiste de una sola proposici´ on) entonces diremos que Q es consecuencia l´ ogica de P (en lugar de decir que lo es de {P }). Equivalencia l´ ogica Si P y Q son dos proposiciones en l´ ogica de predicados.1) es verdadera en I. y )) es verdadera en I. y en caso contrario P (c) ∨ ¬P (c) tambi´ en es Verdadero (disyunci´ on de una proposici´ on falsa y una verdadera). Sea Q otra proposici´ on en l´ ogica de predicados. Notaci´ on. Finalmente. 2. CONSECUENCIA LOGICA Y EQUIVALENCIA LOGICA Demostraci´ on. y )) es verdadera en I. c Luis Dissett. y )) es verdadera bajo la interpretaci´ on I. debemos demostrar que dado cualquier elemento c ∈ D. es l´ ogicamente verdadera. Ejemplo. Pero esto es cierto ya que. O sea: la proposici´ on P (c)∨¬P (c) es Verdadero. como I es una interpretaci´ on arbitraria (de la que s´ olo supusimos que hac´ ıa verdadera a ∃y ∀x(P (x. anotaremos Σ |= Q. y )). si Q es consecuencia l´ ogica de Σ. 2. y )) es verdadera en I. Como c ∈ D era arbitrario. 2. Demostraci´ on. la proposici´ on ∃y (P (c. o sea. y )). y )) es verdadera bajo la interpretaci´ on I. anotaremos P ⇔ Q. hemos demostrado que ∀x∃y (P (x. Si este valor de verdad es Verdadero. hemos demostrado que ∃y ∀x(P (x. Como I es una interpretaci´ on arbitraria. Chile. d). Diremos que Q es consecuencia l´ ogica de Σ (o que Σ l´ ogicamente implica Q) si toda interpretaci´ on que hace verdaderas todas las proposiciones de Σ necesariamente hace verdadera a Q. VERDAD LOGICA LDE OGICA.2.C. sin importar qu´ e elemento c ∈ D tomemos . 2004 . y sea D su dominio. hemos demostrado que ∀x(P (x) ∨ ¬P (x)) se hace verdader a en toda interpretaci´ on. Queremos demostrar que ∀x∃y (P (x. Al igual que en el caso proposicional. Para esto. Al igual que en el caso proposicional. debido a (2.2.2.´ ´ PREDICADOS ´ ´ CAP´ ITULO 2. diremos que ellas son l´ ogicamente equivalentes si toda interpretaci´ on le asigna el mismo valor de verdad a ambas. y para cada c ∈ D consideremos el valor de verdad que I le asigna a P (c). d)) (2. Como ∃y ∀x(P (x.3. Consecuencia l´ ogica Sea Σ un conjunto de proposiciones en l´ ogica de predicados. y )). La proposici´ on ∀x∃y (P (x.U. Pero entonces la proposici´ on ∀x(P (x) ∨ ¬P (x)) es verdadera en la interpretaci´ on I.4.1) se tiene P (c. La proposici´ on ∀x(Q(x) ∧ R(x)) es l´ ogicamente equivalente a ∀x(Q(x)) ∧ ∀x(R(x)). existe alg´ un elemento d ∈ D tal que ∀x(P (x. por lo que ∃y (P (c. Sea I una interpretaci´ on arbitraria que hace verdadera a ∃y ∀x(P (x. y ))). 15 P. Si Σ = {P } (o sea. Sea I una interpretaci´ on arbitraria con dominio D. dado c ∈ D. entonces P (c) ∨ ¬P (c) es Verdadero(disyunci´ on de una proposici´ on verdadera y una falsa). Dejamos cada una de estas dos demostraciones como ejercicio al lector.C.U.2. 16 P. Demostrar que dos proposiciones son l´ ogicamente equivalentes es lo mismo que demostrar que cada una de ellas es consecuencia l´ ogica de la otra. CONSECUENCIA LOGICA ITULO Y EQUIVALENCIA 2. Chile.´ ´ CAP´ ´ ´PREDICADOS 2. 2004 . LOGICA DE LOGICA Demostraci´ on. c Luis Dissett. VERDAD LOGICA. 17 P.U. .C. dado a ∈ D arbitrario . . . Resumen de definiciones En l´ ogica proposicional En l´ ogica de predicados Una proposici´ on P es . Teor´ ıas matem´ aticas PENDIENTE. .4. ¬∃x(P (x)) ⇔ ∀x(¬P (x)). . l´ ogicamente equivalente a otra Q . Dejamos la demostraci´ on como ejercicio.3. si toda interpretaci´ on que hace verdadera a Q hace verdadera a P . en l´ ogica de predicados pueden usarse las siguientes: Especificaci´ on universal Si se tiene la proposici´ on ∀x(P (x)). l´ ogicamente verdadera . 2. donde a ∈ D es un elemento arbitrario que no ha sido usado en la demostraci´ on de ∃x(P (x)). . . c Luis Dissett. si toda asignaci´ on de verdad la hace verdadera. Reglas de inferencia usando predicados Adem´ as de las reglas de inferencia dadas en el cap´ ıtulo sobre l´ ogica proposicional. LOGICA 2. 2004 . si toda asignaci´ on de verdad las hace ambas verdaderas o ambas falsas. 2. entonces es posible deducir la proposici´ on P (a). Generalizaci´ on existencial Si se tiene la proposici´ on P (a) (donde a ∈ D).5. es posible demostrar P (a).2. Chile. Generalizaci´ on universal Si. 2. . y a ∈ D es arbitrario. entonces es posible deducir ∀x(P (x)). DE NEGACI PREDICADOS ON 2. si toda interpretaci´ on las hace verdaderas o ambas falsas. si toda asignaci´ on de verdad que hace verdadera a Q hace verdadera a P . Especificaci´ on existencial Si se ha demostrado la proposici´ on ∃x(P (x)). Negaci´ on de proposiciones con cuantificadores Para negar proposiciones (o predicados) que contienen cuantificadores pueden usarse las siguientes equivalencias: ¬∀x(P (x)) ⇔ ∃x(¬P (x)). podemos deducir ∃x(P (x)).3. si toda interpretaci´ on la hace verdadera.5. consecuencia l´ ogica de otra Q .´ ´ DE PROPOSICIONES CON CUANTIFICADORES CAP´ ITULO 2. podemos deducir P (a). ahora tomando como universo todos los n´ umeros reales (incluyendo al cero). 5. 7. 6. 8. c ) ∀x [(p(x) → q (x)]. Demuestre este hecho. indique si una de las implicaciones l´ ogicas es correcta o si ambas son falsas. ahora tomando como universo todos los n´ umeros reales distintos de cero. ∃x∃y [(2x + y = 5) ∨ (x − 3y = −8]. 11. ∀x [p(x) ∧ q (x)] ⇔ ∀x(p(x)) ∧ ∀x(q (x)). ¿Qu´ e se puede concluir de este ejemplo? 18 c Luis Dissett.2. ∃x [p(x) ∧ q (x)] ⇔ ∃x(p(x)) ∧ ∃x(q (x)).U. Demuestre que. Repita el ejercicio anterior. LOGICA DE PREDICADOS 2. ∃x [p(x) ∨ q (x)] ⇔ ∃x(p(x)) ∨ ∃x(q (x)). ∀x∃y (x · y = 1). Determine el valor de verdad de cada proposici´ on. ∀x∀y sen2 x + cos2 x = sen2 y + cos2 y . EJERCICIOS ´ CAP´ ITULO 2. 3. ∃x∀y (x · y = 1). ¬∃x(P (x)) ⇔ ∀x(¬P (x)). Justifique sus respuestas . P. a) b) c) d) e) f) ∀x [p(x) → q (x)] ⇔ ∀x(p(x)) → ∀x(q (x)). Demuestre que las proposiciones ∀x(Q(x) ∨ R(x)) y ∀x(Q(x)) ∨∀x(R(x)) no son l´ ogicamente equivalentes. En cada uno de los siguientes casos. En caso de que su respuesta sea negativa. y es utilizada en inteligencia artificial). Chile. Una de las dos proposiciones presentadas anteriormente es consecuencia l´ ogica de la otra. ∃x∃y [(2x + y = 5) ∧ (x − 3y = −8].C. dada cualquier proposici´ on en l´ ogica de predicados. Ejercicios Para las siguientes proposiciones. 4. Demuestre que las proposiciones ∀x(Q(x) ∧ R(x)) y ∀x(Q(x)) ∧ ∀x(R(x)) son l´ ogicamente equivalentes. 2. ∃x [p(x) → q (x)] ⇔ ∃x(p(x)) → ∃x(q (x)). 9. ∃x∃y [(3x − y = 7) ∧ (2x + 4y = 3]. 2004 . y escriba la negaci´ on de cada una de ellas. ∀x [p(x) ∨ q (x)] ⇔ ∀x(p(x)) ∨ ∀x(q (x)). Escriba las negaciones de las siguientes proposiciones: a ) ∃x [p(x) ∨ q (x)]. Demuestre las equivalencias l´ ogicas ¬∀x(P (x)) ⇔ ∃x(¬P (x)). 1. d ) ∃x [(p(x) ∨ q (x)) → ¬r(x)]. ∃x∃y [(3x − y = 7) ∨ (2x + 4y = 3]. y los significados de los s´ ımbolos de funci´ on y operaciones aritm´ eticas es el usual. D´ e un ejemplo de una interpretaci´ on que haga verdaderas ∀x [p(x)] y ∀x [q (x) → p(x)] pero que no haga verdadera ∀x [q (x)].6. existe una proposici´ on l´ ogicamente equivalente a ella en que todos los cuantificadores est´ an al principio de la proposici´ on. y se aplican globalmente a ella (´ esta es llamada la Forma Normal Prenex . decida si la equivalencia l´ ogica expresada es verdadera o no.6. Repita el ejercicio anterior. b ) ∀x [p(x) ∧ ¬q (x)]. 10. el universo consiste en todos los enteros distintos de cero. a) b) c) d) e) f) g) h) ∃x∃y (x · y = 1). 3. Z5 = {x : x ∈ N ∧ x < 5}. Ejemplo.1. 1. Note que consideramos que N contiene al cero.1. Ejemplo.2. 2.1. o sea. si A = {x : ϕ(x)}. decimos que A es subconjunto de B (en s´ ımbolos. Si A y B son conjuntos. pertenencia (∈). no necesitan explicaci´ on) las siguientes nociones: elemento. dando una propiedad ϕ(x) que caracterice a los elementos del conjunto (y s´ olo a dichos elementos).e. diremos que A y B son iguales sii A ⊆ B y B ⊆ A. Z5 = {0. Maneras de definir un conjunto Definiremos conjuntos de dos formas distintas: Por extensi´ on .1. listando todos sus elementos. Definiciones b´ asicas Nociones primitivas Consideramos como “primitivas” (i. 3.3.1. conjunto. 3. Definici´ on 8. As´ ı. igualdad de conjuntos Definici´ on 7. Definiremos los otros conceptos relacionados con conjuntos a partir de estas nociones b´ asicas.Cap´ ıtulo 3 Teor´ ıa de Conjuntos 3.. Subconjuntos. 3. 4}. Si A y B son conjuntos. A = B ↔ (A ⊆ B ∧ B ⊆ A). entonces ∀x(x ∈ A ↔ ϕ(x)). o sea. Discutiremos esto m´ as adelante. A ⊆ B ) sii ∀x(x ∈ A → x ∈ B ). En s´ ımbolos. Por comprensi´ on . 19 . C. 2. Chile.U.2. El conjunto vac´ ıo (denotado por ∅) es un conjunto que no contiene elementos. Demuestre que. se tiene: 1. O sea. Por extensi´ on. c Luis Dissett. 2} = {1. 1. . {1. 1.1. dado cualquier conjunto A. Ejercicio. En estos apuntes no discutiremos multiconjuntos en detalle. pero donde es necesario tomar en cuenta la cantidad de veces que se repite cada elemento. TEOR´ IA DE CONJUNTOS 3. 3. 2}. A ⊆ A.2. tenemos que A∈A↔A∈ / A. quisi´ eramos definir ∅ = {x : ϕ(x)} donde ϕ(x) es una propiedad que es falsa sin importar el valor de x. 3. la u ´nica manera de que A sea un elemento de s´ ı mismo es . As´ ı.1. 2. ∅ = {} . La paradoja de Russell ¿Es posible usar cualquier propiedad ϕ(x) al momento de definir un conjunto por comprensi´ on? Es necesario un poco de cuidado: en 19??. por lo cual debemos agregar restricciones. ∅ ⊆ A. .2. Por comprensi´ on. ¡que no sea un elemento de s´ ı mismo! Cualquier parecido entre esta paradoja (debida a Bertrand Russell) y la “paradoja del barbero” es absolutamente intencional. 2.1. 2004 .4. llamada “paradoja de Russell”: si ϕ(x) es la propiedad “x ∈ / x” entonces definimos el conjunto A = {x : x ∈ / x} y nos formulamos la pregunta: ¿Es A un elemento de A? De la definici´ on de A. Bertrand Russell demostr´ o que el ser demasiado permisivos con las propiedades usadas para definir conjuntos nos lleva a “paradojas” (contradicciones dentro de la teor´ ıa de conjuntos).5. 1. Conjuntos con elementos repetidos Note que de la definici´ on de igualdad se deduce que en un conjunto da lo mismo si “se repiten los elementos”. Una posible elecci´ on de ϕ(x) es: ϕ(x) : x = x. La m´ as famosa de estas paradojas es la siguiente. no cualquier propiedad puede definir un conjunto. El conjunto vac´ ıo Definici´ on 9. LA PARADOJA DE RUSSELL CAP´ ITULO 3. 20 P.3. 3. A veces es necesario considerar “multiconjuntos”: objetos similares a los conjuntos. Lidiando con las paradojas ¿C´ omo evitar las paradojas en la teor´ ıa de conjuntos? Esencialmente. por ejemplo. Propiedades conmutativas A∪B A∩B Propiedades asociativas A ∪ (B ∪ C ) = (A ∪ B ) ∪ C.3.3. 21 P. S´ olo se permiten f´ ormulas del tipo ϕ(x) : x es un conjunto y . TEOR´ IA DE CONJUNTOS 3. Chile.U. ¿Por qu´ e previene esto la paradoja de Russell? 3. bastante aceptada. Operaciones A ∪ B = {x : x ∈ A ∨ x ∈ B } . P (A) = {x : x ⊆ A} . A ∩ B = {x : x ∈ A ∧ x ∈ B } . Ejercicio. Propiedades distributivas A ∪ (B ∩ C ) = (A ∪ B ) ∩ (A ∪ C ). Las Leyes de la Teor´ ıa de Conjuntos (Ac )c = A. A ∩ (B ∪ C ) = (A ∩ B ) ∪ (A ∩ C ).4.CAP´ ITULO 3. = Ac ∪ B c . ψ (x). de eliminar paradojas como la de Russell consiste en lo siguiente: Se distingue entre “clases” (colecciones arbitrarias de elementos) y “conjuntos” (clases que son elementos de otras clases). Las clases que no son conjuntos son llamadas “clases propias”. es posible construir nuevos conjuntos: En realidad. A partir de conjuntos dados. Ley del doble complemento Leyes de de Morgan (A ∪ B )c (A ∩ B )c = Ac ∩ B c . A ∩ (B ∩ C ) = (A ∩ B ) ∩ C. = B ∩ A. necesitamos axiomas que nos aseguren que las clases as´ ı definidas son efectivamente conjuntos. = B ∪ A. .C. 3. Una forma. 2004 . OPERACIONES Ejemplo. . A \ B = {x : x ∈ A ∧ x ∈ / B} . c Luis Dissett. c Luis Dissett. si A es conjunto. . Dejamos esta demostraci´ on como ejercicio. 2004 . por ejemplo. . A ∩ (A ∪ B ) = A. entonces estas nuevas clases tambi´ en lo son) como sigue: A = {x : ∃y ∈ A(x ∈ y )}. Para definir adecuadamente uniones e intersecciones de una cantidad infinita de conjuntos. Propiedades de elemento neutro A ∪ ∅ = A. A2 . = ∅. A = {x : ∀y ∈ A(x ∈ y )}. OPERACIONES GENERALIZADAS Propiedades de idempotencia CAP´ ITULO 3. Propiedades de absorci´ on A ∪ (A ∩ B ) = A. ∅ = ∅ (f´ acil). consideren una cantidad (finita) mayor. Sea A un conjunto cualquiera (del que supondremos que sus elememtos son. usamos la definici´ on siguiente: Definici´ on 10. en lugar de considerar dos conjuntos. Demostraci´ on.5. TEOR´ IA DE CONJUNTOS A ∪ A = A. 22 P. a su vez. conjuntos).    n  Ai = n−1   i=1  Ai ∪ An si n > 1. Operaciones generalizadas Las operaciones binarias definidas anteriormente (uni´ on e intersecci´ on) pueden f´ acilmente ser generalizadas de modo que. .5. = U. la siguiente: si A1 .   i=1 Si se desea unir o intersectar una cantidad infinita de conjuntos. Chile. Ejemplos. 3. An son conjuntos. ∅ = U (no tan f´ acil). A ∩ ∅ = ∅. A ∩ A = A. Definimos dos nuevas clases (y agregamos axiomas que dicen que. entonces definimos   A1 si n = 1. las definiciones anteriores no son adecuadas. Propiedades de elemento inverso A ∪ Ac A ∩ Ac Propiedades de dominaci´ on A ∪ U = U.C. . La forma de hacer esto es.3. A ∩ U = A.U. 6. Demuestre las leyes distributivas generalizadas : a) A ∩ i∈I Bi = i∈I (A ∩ Bi ). i∈I b) i∈I Ai = 5. f ) A ⊆ (B ∩ C ) ↔ (A ⊆ B ) ∧ (A ⊆ C ). 3. las leyes de la teor´ ıa de conjuntos (dadas en clases). Demuestre que: 23 P. 1. entonces: a ) A ⊆ A ∪ B. Repita el ejercicio anterior. 4.U. EJERCICIOS sii ∀y (y ∈ ∅ → x ∈ y ). 2004 c Luis Dissett. o sea. se define A B (la diferencia sim´ etrica de A y B ) como A B = (A − B ) ∪ (B − A). ahora usando diagramas de Venn. Ejercicios Demuestre.6.C. g ) A − B ⊆ C ↔ A − C ⊆ B. φ. B y C son conjuntos arbitrarios (A. por lo que todo x ∈ U satisface 3. TEOR´ IA DE CONJUNTOS Dado x ∈ U . si A. Como esto u ´ltimo es claramente falso. b) A ∪ i∈I Bi = i∈I (A ∪ Bi ). C ⊆ U ). c) A ⊆ B ↔ A ∪ B = B. cualquiera. se tiene x ∈ x ∈ ∅. ∅ sii ∀y ∈ ∅(x ∈ y ) 3. Dado un conjunto universal U . x∈ ∅ sii ¬∀y ∈ ∅(x ∈ y ) sii sii sii sii ∃y (¬(y ∈ ∅ → x ∈ y ) ∃y (¬(y ∈ ∅ → x ∈ y )) ∃y (y ∈ ∅ ∧ ¬(x ∈ y )) ∃y (y ∈ ∅ ∧ x ∈ / y ).CAP´ ITULO 3. Demuestre que. Demuestre las leyes generalizadas de De Morgan : c a) i∈I Ai c = i∈I Ac i. tenemos que x∈ O sea. Ac i. usando equivalencias l´ ogicas. 6. ∅ = U . . Chile. d ) A ⊆ B ↔ A ∩ B = A. h ) A ⊆ B ↔ ∀D ⊆ U (D ⊆ A → D ⊆ B ). 2. B. e ) A ∪ B ⊆ C ↔ (A ⊆ C ) ∧ (B ⊆ C ). b ) A ∩ B ⊆ A. U = Ac . TEOR´ IA DE CONJUNTOS a) A b) A c) A d) A e) A f) g) 7. 24 P.7.1.´ DEFINICION ´ FORMAL DE CAP ´ ´ 3. M´ as formalmente.U. . {∅}} . 1 = σ (0) = σ (∅) = ∅ ∪ {∅} = {∅} . 2 = σ (1) = σ ({∅}) = {∅} ∪ {{∅}} = {∅. la operaci´ on c A. los n´ umeros naturales se construyen a partir de la teor´ ıa de conjuntos: 0 = ∅ y. ). As´ ı. . c ) ∪ {a. Si ∀x(x ∈ A → x ⊆ B ). Si ∀x(x ∈ A → B ⊆ x). Demuestre las siguientes propiedades de la uni´ on e intersecci´ on as´ ı definidas: a ) ∪∅ = ∅. los naturales satisfacen los axiomas de Peano : c Luis Dissett. {∅}} ∪ {{∅. definimos σ (x) = x ∪ {x} ( el sucesor de x). entonces ∪A ⊆ B . 3. . b} = a ∩ b. 3 = σ (2) = σ ({∅. {∅}}) = {∅. 0 = ∅. b} = a ∪ b. = {x ∈ U : ∃y (y ∈ S ∧ x ∈ y )} . como sigue: Si S es una colecci´ on de conjuntos (todos ellos subconjuntos de un conjunto universal dado U ). dado un conjunto cualquiera x. l ) ∩(A ∪ B ) = (∩A) ∩ (∩B ). Si x ∈ A. (∩A) ∪ (∩B ) ⊆ ∩(A ∩ B ). entonces ∩S ∪S = {x ∈ U : ∀y (y ∈ S → x ∈ y )} . entonces B ⊆ ∩A. i ) ∩ {a} = a. {∅.C. {∅}}} = {∅. entonces x ⊆ ∪A. {∅}}} . d) f) g) Si A ⊆ B entonces ∪A ⊆ ∪B . Chile. e ) ∪(A ∪ B ) = (∪A) ∪ (∪B ). ∅ = A (por lo que el neutro para B) C=A (B es ∅). h ) ∩∅ = U . 3. APLICACION: LA ARITM ITULO ETICA 3.7. k) m) n) n ˜) Si A ⊆ B entonces ∩B ⊆ ∩A. (A B=B A = U. {∅} . b ) ∪ {a} = a. A = ∅ (por lo que cada conjunto es su propio inverso respecto a C ) (o sea.7. entonces ∩A ⊆ x. ¿Qu´ e estructura tiene el conjunto de subconjuntos de U con la operaci´ on Recuerde que es posible definir la uni´ on e intersecci´ on de una colecci´ on cualquiera de conjuntos . la operaci´ on es conmutativa). ? es asociativa). 2004 . Aplicaci´ on: definici´ on formal de la aritm´ etica Definici´ on axiom´ atica de N Para un conjuntista. Si x ∈ A. j ) ∩ {a. (o sea. Notaciones como i=1 Ai y i=1 Ai se definen en forma similar. 3. note que si I = {1. definimos s(m. 2004 .2. Dada cualquier clase S que satisfaga: ∅ ∈ S. . 4. escribimos i=0 ∞ Ai y i=0 ∞ Ai . y tiene elemento neutro. ∀m∀n((m ∈ N ∧ n ∈ N ∧ σm = σn) → m = n).7.CAP´ ITULO 3. Dado n ∈ N.8. Defina multiplicaci´ on. σ (n)) = σ (s(m. y demuestre que 3 · 4 = 12. ∀n(n ∈ S → σn ∈ S ). 2. ·. ∀n(n ∈ N → σn = ∅). ∀n(n ∈ N → σn ∈ N). i∈I Ai = {x : ∀i ∈ I (x ∈ Ai )}. OPERACIONES CON CONJUNTOS DE ´ INDICES 1. 2.C. 3. definimos s(n. . 3. Operaciones en N Es posible definir +. en t´ erminos de operaciones de conjuntos. n)). de modo que para cada i ∈ I existe un u ´nico Ai . 3. Ejemplo (la suma). Ai en lugar de Ai y i∈I i∈I Si I = N. ∅ ∈ N. Ai = {x : ∃i ∈ I (x ∈ Ai )}. asociativa. 5. etc. Chile. . c Luis Dissett.. 0) = n. ∀m∀n((m ∈ S ∧ n ∈ S ∧ σm = σn) → m = n) y ∀n(n ∈ S → σn = ∅). Operaciones con conjuntos de ´ ındices Sea I un conjunto de ´ ındices .U. TEOR´ IA DE CONJUNTOS 3. i∈I En particular. Ejercicios. Demuestre que la suma es conmutativa. . Definici´ on 11. 25 P. Demuestre. Dados m. 2. entonces N ⊆ S . n ∈ N.8. que 3 + 4 = 7. 1. entonces i∈I n n Ai y i∈I Ai corresponden a nuestras definiciones anteriores de i=1 ∞ Ai y i=1 ∞ Ai respectivamente. n}. usando esta definici´ on de suma. C.3. 2004 . OPERACIONES CON CONJUNTOS DE ´ INDICES CAP´ ITULO 3. Chile. TEOR´ IA DE CONJUNTOS c Luis Dissett.8.U. 26 P. b) como (a. b) = (c. Ejercicio. d ∈ U . 4. Producto de m´ as de dos conjuntos Si se tienen n conjuntos A1 .1. {b}}? 4.3. Demuestre que. Definimos el producto cartesiano de A y B : Definici´ on 13. Producto cartesiano Sean ahora A y B dos conjuntos cualesquiera.2. {a. A × B = {(a.1. Intuitivamente. b) = {{a} .1. b) : a ∈ A ∧ b ∈ B } . ((A1 × A2 ) × A3 ) × · · · ) × An . entonces definimos A1 × A2 × A3 × · · · × An = (.1. An . ¿Se satisfar´ ıa la misma propiedad si hubi´ eramos definido (a. La definici´ on cl´ asica de par ordenado es la siguiente: Definici´ on 12. . b) como (a. .1. queremos definir “par ordenado” como una agregaci´ on de dos elementos de modo que dos pares ordenados sean iguales si y s´ olo si sus elementos respectivos son iguales. . A2 . Definiciones b´ asicas Pares ordenados Nos interesa definir formalmente la noci´ on de par ordenado . b ∈ U (nuestro conjunto universo ). Sean a. d) ↔ ((a = c) ∧ (b = d)). . c. . b}} . Definimos el par ordenado (a. . entonces (a. si a. b. b) = {a. Ejercicio.Cap´ ıtulo 4 Relaciones 4. 27 . 4. 1. 4.U. un elemento de Ai le asigna a cada elemento i ∈ I un elemento f (i).1. definimos. Chile.7.5. escribiremos x R y 4. c Luis Dissett. A).1. n veces Ejemplo.C. y ) ∈ R. de modo que para cada i ∈ I existe un u ´nico Ai . Una relaci´ on (binaria) de A en B es un subconjunto de A × B . se tenga f (i) ∈ Ai . diremos que R es una relaci´ on n-aria . 28 P. 2004 .4. usualmente escribiremos xRy . La funci´ on πi es la proyecci´ on sobre la i-´ esima coordenada . i∈I Ejercicio. Explique por qu´ e A × B y (A × B ) × C son casos particulares de esta definici´ on. Relaciones binarias Definici´ on 15. . la funci´ on πi : i∈I Ai → Ai como πi (f ) = f (i). O sea. Definici´ on 14. 4.6. Explique la relaci´ on entre estas funciones de proyecci´ on y las del ´ algebra lineal. tambi´ en podemos generalizar la idea de producto cartesiano.1. Producto cartesiano generalizado As´ ı como es posible generalizar la uni´ on y la intersecci´ on. Las funciones de proyecci´ on En la situaci´ on descrita anteriormente. Relaciones n-arias Si en lugar de considerar R ⊆ A × B (o R ⊆ A × A) consideramos R ⊆ A1 × A2 × · · · × An (o R ⊆ A × A × . . Las tablas de una base de datos relacional . Ejercicio. Notaci´ on. RELACIONES 4. Definimos Ai i∈I como el conjunto de todas las funciones f :I→ i∈I Ai tales que.1. Sea I un conjunto de ´ ındices . DEFINICIONES BASICAS CAP´ ITULO 4. para cada i ∈ I . En este curso estaremos interesados mayormente en relaciones binarias definidas en un conjunto dado (excepto cuando hablemos de funciones).´ 4. para cada i ∈ I . Una relaci´ on (binaria) en A es un subconjunto de A × A. y ) ∈ / R. en vez de escribir (x. En vez de escribir (x. y ∈ A((xRy ∧ yRx) → x = y ). |) un orden parcial? es la relaci´ on 4. ≺). ) es un orden parcial.. y ∈ A(xRy → yRx). ≺) es un orden estricto. ). refleja en A. ). i. Transitiva si ∀x. Q. Dado un orden (A. (Q. ¿Es (Z. y. Ejemplos. Definici´ on 17. ≤).e. Un orden estricto en A es un par (A. 2. 2004 . donde ≺ est´ a definido por x ≺ y ↔ (x y ∧ x = y ). entonces (A. |). El orden | (divide a ) en N: (N. ORDENES PARCIALES 4. Los ´ ordenes naturales en N. donde ≺ es una relaci´ on en A que es: 1. de la siguiente manera: Teorema.8. y transitiva. z ∈ A((xRy ∧ yRz ) → xRz ). 29 P. Los ´ ordenes estrictos est´ an relacionados con los ´ ordenes parciales.2. donde y ∨ x = y ). 3. es un orden estricto. ´ Ordenes estrictos Sea A un conjunto. Un orden parcial en A es un par (A. El orden ⊆ entre los subconjuntos de un conjunto dado U : (P (U ). Dependiendo de las propiedades que satisfaga R. Irrefleja si ∀x ∈ A(x R x). Sim´ etrica si ∀x. ≺).2. A estos ejemplos debemos agregar sus ´ ordenes inversos. antisim´ etrica.2. x y ↔ y x. ≤).CAP´ ITULO 4. c Luis Dissett. ⊆). ≤). es un orden parcial. ).C. Propiedades de las relaciones binarias Sea R ⊆ A × A. ≤).1. Antisim´ etrica si ∀x. 2. est´ a definido por x y ↔ (x ≺ Si (A. y transitiva. entonces (A. 3. RELACIONES ´ 4. Chile. irrefleja en A. Z. (Z. donde relaci´ on en A que es: 1.U. ) donde inversa de . diremos que ´ esta es: Refleja si ∀x ∈ A(xRx). 4. Ejercicio. antisim´ etrica. R: (N. (R.1. el orden inverso es el orden (A. ´ Ordenes parciales es una Definici´ on 16. Sea A un conjunto. Si (A. 4. supremos y conjuntos acotados superiormente. -elemento maximal de S si ∀y ∈ S (x -elemento m´ aximo de S si ∀y ∈ S (y y → x = y ). Elementos maximales y m´ aximos Sea (A.´ 4. . .2. 2004 . . Definici´ on 20. . ´ ınfimo.C. Decimos que: x es un x es un Notas: Si la relaci´ on es clara del contexto. la omitimos y hablamos simplemente de cotas superiores. . S es Notas: -acotado superiormente si existe una -cota superior para S . . De manera an´ aloga se definen los conceptos de elemento minimal y elemento m´ ınimo .3. . De manera an´ aloga se definen los conceptos de cota inferior. x ∈ S . un teorema an´ alogo respecto a ´ ınfimos tambi´ en es v´ alido. Ejercicio. x2 . ) es un orden total o lineal si ∀x. y sean S ⊆ A. xn } o sup(x1 . dada cualquier superior c para S . c ∈ A. Si S ⊆ A tiene un supremo. ) un orden parcial. -cota c es un -supremo para S si c es -cota superior para S y adem´ as. . . Indique cu´ ales de los ´ ordenes parciales dados como ejemplo son lineales. ´ este es u ´nico. y sean S ⊆ A. ORDENES PARCIALES CAP´ ITULO 4. . ´ ınfimos Sea (A. .2. Sea (A. Si S = {x1 .2. Si ´ este es el caso. Demostraci´ on. y ∈ A son comparables bajo el orden Decimos que (A.U.4. . Este teorema nos autoriza a hablar de “el supremo de S ” (siempre que S tenga al menos un supremo . xn }.2. x2 . Dos elementos x. Chile. se tiene c c . ) un orden parcial. entonces anotaremos sup {x1 . . 30 P. x). Cotas. o sea. c Luis Dissett. la omitimos y hablamos simplemente de elementos maximales o m´ aximos. si todos los pares de elementos de A son comparables bajo el orden Ejercicio. Por supuesto. Definici´ on 19. Si la relaci´ on es clara del contexto. anotaremos sup(S ). y conjunto acotado inferiormente. RELACIONES 4. ). . 4. xn ). supremos.2. Definici´ on 18. . ´ Ordenes lineales o totales si x yoy x. Decimos que: c es una -cota superior para S si ∀x ∈ S (x c). ) un orden parcial. x2 . Teorema. y ∈ A(x y∨y x). ≤) son ´ ordenes completos. s+ 2 s2 + 2 s En efecto: sea s = = .U.4143 . 31 P.2. para ello. basta probar que no existe ning´ un racional s tal que s = sup A. Demostraremos que (Q. RELACIONES ´ 4. tiene supremo. Supongamos ahora que s2 > 2. Claramente. . Demostraremos que. o sea. como 1 ∈ A. Ejercicio. Para demostrar que Q no satisface el axioma del supremo. debe tenerse q < 2. en este caso. o incluso < 1. 2s 2s 2s es posible demostrar que todo q ∈ A es < 1. 4. ¿Ser´ a verdad la siguiente afirmaci´ on? A esta propiedad la llamamos el axioma del supremo . Mostraremos que en los dos primeros casos es imposible que s sea el supremo de A. debe tenerse s > 0. En efecto: sea A el subconjunto de Q dado por A = q ∈ Q : q2 < 2 .5. debe darse alguno de los tres casos siguientes: o s2 < 2. El axioma del supremo Todo subconjunto de A. 2 2 2 + 2) (s + 2) (s2 + 2)2 de donde s 2 < 2. ORDENES PARCIALES 4. Demostraci´ on. Si un orden parcial es superiormente completo. Demostraremos esto por contradicci´ on. s no es cota superior de A. De manera an´ aloga definiremos el concepto de orden inferiormente completo . Para probar que s ∈ A. 4 4s En efecto: sea s = = 2 . Como 2 2s s−s =s− 1 Tambi´ en s2 + 2 2s2 − (s2 + 2) s2 − 2 = = > 0. Demuestre que (Z. en este caso. por lo que A es acotado superiormente1 . mostraremos que existe un n´ umero s ∈ A tal que s < s . Sea (A.6. . ´ Ordenes completos El siguiente teorema nos dice que la distinci´ on entre ´ ordenes superior e inferiormente completos es superflua: Teorema. ) un orden parcial. o s2 > 2.5. desde ahora en adelante podemos hablar simplemente de ´ ordenes completos .2. Aquellos ´ ordenes parciales que lo satisfacen ser´ an llamados (por ahora) ´ ordenes superiormente completos . 2004 . s no es la cota superior m´ as peque˜ na de A. no vac´ ıo y acotado superiormente.2. ya que existe una cota superior s de A tal que s < s. ¿Qu´ e´ ordenes parciales son completos? Ejercicio. vemos que s +2 s+ 2 s 2−s2 =2− (s2 16s2 2s4 + 8s2 + 8 − 16s2 2(s2 − 2)2 = = > 0. c Luis Dissett. Ejemplo. Demostraremos que. s ∈ A. s2 + 2 s2 + 2 s2 + 2 s2 + 2 de donde s < s . si q ∈ A. ≤) no es un orden completo. 0 ∈ A. Por tricotom´ ıa. En primer lugar. por lo que A no es vac´ ıo. Supongamos que existe s ∈ Q es tal que s = sup A. Por otra parte.CAP´ ITULO 4. vemos que s −s= 4s 4s − s(s2 + 2) 2s − s3 s(2 − s2 ) − s = = = > 0. Examinemos primero el caso en que s2 < 2. entonces es inferiormente completo (y viceversa). Chile. 2 o s = 2. Para probar que s < s .C. Gracias a este teorema. ≤) y (N. Pero el hecho de que m y n sean pares contradice la hip´ otesis de que m y n son primos entre s´ ı. 4. RELACIONES vemos que s < s. Hemos visto que los casos s2 < 2 y s2 > 2 son imposibles. Pero entonces m2 ser´ ıa divisible por 4. As´ ı. El teorema de Knaster-Tarski Un teorema u ´til al tratar con ´ ordenes completos es el siguiente: Teorema (Knaster-Tarski). 4. basta probar que s > 0 y s 2 > 2 (¿por qu´ e?). Demostraci´ on. se tiene una arista que va desde x a y . ϕ tiene un punto fijo). 4. M´ as adelante esbozaremos algunas formas de construir los reales a partir de los racionales. ORDENES PARCIALES CAP´ ITULO 4. Pero este caso tambi´ en es imposible. Mxy = 0 si x R y. Ejercicio. por lo que m2 es par. en otras palabras. hemos encontrado un ejemplo que prueba que el conjunto de los racionales no satisface el axioma del supremo. La demostraci´ on de esta propiedad es por contradicci´ on: si s es un racional. Como s4 + 4s2 + 4 − 8s2 s2 − 4s2 + 4 (s2 − 2)2 (s2 + 2)2 − 2 = = = > 0. Esta contradicci´ on muestra que m y n no pueden existir.U. ϕ preserva el orden : x y → ϕ(x) ϕ(y ).´ 4. como una matriz 0-1: una matriz M cuyas filas y columnas est´ an indexadas por los elementos de A. Formas de representar relaciones binarias Una relaci´ on binaria definida en un conjunto finito A puede ser representada de varias maneras: por extensi´ on: listando los pares que la forman.2.2. ≤) es un orden completo. y donde 1 si xRy. Chile. ) un orden completo. c Luis Dissett. para cada par (x. como un grafo dirigido : donde los elementos de A son los v´ ertices y. como s = m n Si s2 = 2. y de demostrar que (R. y por lo tanto n2 ser´ ıa par y n tambi´ en ser´ ıa par. 2004 .8. Que s > 0 es obvio (¿por qu´ e?). Sea ϕ : A → A una funci´ on -mon´ otona. y ) ∈ R. con un elemento m´ aximo y un elemento m´ ınimo. tendr´ ıamos m2 = 2n2 . debido a la siguiente propiedad (ya conocida por los griegos): s2−2= No existe un n´ umero racional s tal que s2 = 2. As´ ı.7. y por ende m es par. R se obtiene a partir de Q “llenando los agujeros” que se forman en Q (los supremos que le faltan a algunos conjuntos de racionales). Ejercicio. sin factores comunes aparte del 1). Para probar que s es cota superior de S . 32 P. puede ser escrito con m y n “primos entre s´ ı” (o sea.C. 4s2 4s2 4s2 4s2 vemos que s 2 > 2. por lo que 2n2 tambi´ en es divisible por 4. Entonces existe a ˜ ∈ A tal que ϕ(˜ a) = a ˜ (o sea. Muestre por qu´ e se necesitan las hip´ otesis de que A debe tener un elemento m´ aximo y un elemento m´ ınimo.2. por lo que la u ´nica posibilidad es que s2 = 2. Los reales y los racionales Intuitivamente.2.9. Sea (A. el caso s2 > 2 tambi´ en es imposible. 2. Un orden parcial puede ser representado en forma gr´ afica de una forma simplificada.3} {2. (1. y sea R ⊆ A × A dada por R = {(1.C. por reflexividad).2. RELACIONES ´ 4. 4). usando el hecho de que la relaci´ on es un orden parcial. tomando el grafo dirigido que lo representa (como relaci´ on).3} {1} {2} {3} φ Muchas de las aristas del grafo anterior pueden ser deducidas de otras. (3. 2. 33 P. (1. 3). ⊆). y haci´ endole los siguientes cambios: eliminar las aristas que pueden ser deducidas de otras por transitividad. 2004 . (2.11. 2. 2). 5).2.3} {1. 5)} . 5). Un grafo dirigido que representa este orden es: {1.CAP´ ITULO 4. Diagramas de Hasse Consideremos el orden (P ({1.2. (2. eliminar los lazos (se sabe que todos los posibles lazos est´ an. Ejemplo Sea A = {1.10. 4. Chile. 3. 5}. 3}). c Luis Dissett.2} {1. Esta relaci´ on puede ser representada por la matriz  0 1 0 1 1  0 0 1 0 1   0 0 0 1 0   0 0 0 0 1 0 0 0 0 0 o bien por el grafo dirigido 2 1       3 5 4 4. (4. 4).U. ORDENES PARCIALES 4. Ejemplos La igualdad es siempre una relaci´ on de equivalencia.2.3} {1} {2} {3} φ 4. Relaciones de equivalencia Definici´ on 22. y } e inf {x. sim´ etrica.C. y eliminar las flechas.4.1. el diagrama de Hasse ser´ ıa: {1. A futuro veremos otros ejemplos.U.2. Una relaci´ on de equivalencia en A es una relaci´ on ∼ definida en A que es: 1. c Luis Dissett. ) es un reticulado si todo subconjunto de A de cardinalidad 2 tiene un supremo y un ´ ınfimo.3. 3. Un orden parcial (A. Ejemplos: (P (U ). La relaci´ on ≡n . Sea A un conjunto. es una relaci´ on de equivalencia. Por ejemplo.3. 2. Chile. Sea n ∈ N. refleja en A. y transitiva. 34 P.3} {2.3} {1. Si f : A → B es una funci´ on cualquiera. en cualquier conjunto A. D´ e definiciones expl´ ıcitas de sup {x. 4. n > 0.3. 4. Reticulados (lattices) Definici´ on 21. |) es un reticulado. (N − {0} . RELACIONES ubicar los v´ ertices de modo que todas las flechas vayan “hacia arriba”.2} {1. La figura resultantes es llamada un diagrama de Hasse .12. Ejercicio. entonces la relaci´ on ∼ definida en A por x ∼ y ↔ f (x) = f (y ) es una relaci´ on de equivalencia. definida en Z por x ≡n y ↔ n | (x − y ). 2004 . ⊆) es un reticulado. para el ejemplo anterior. y } para los ejemplos anteriores. RELACIONES DE EQUIVALENCIA CAP´ ITULO 4. 3. T ∈ Π(S = T → S ∩ T = ∅). 35 P. 4. ∀S.U. As´ ı. 2004 . Ejercicio. un conjunto Π ⊆ P (A) es una partici´ on de A si satisface lo siguiente: ∀S ∈ Π(S = ∅).CAP´ ITULO 4. 4. Viceversa: si Π es una partici´ on de A. Ejercicio. RELACIONES DE EQUIVALENCIA (a.3. la uni´ on de todas ellas es A. 4. consideremos el conjunto [a]∼ = {x ∈ A : x ∼ a} . es posible definir una relaci´ on de equivalencia ∼ en A tal que A/∼ = Π. Π = A. b) ↑ (c. Propiedades de las clases de equivalencia Las clases de equivalencia de A por ∼ satisfacen lo siguiente: cada una de ellas es no vac´ ıa.3. omitiremos el sub´ ındice que la menciona. Llamamos al conjunto [a]∼ la clase de equivalencia de a por ∼. RELACIONES La relaci´ on ↑ definida en Z × (N − {0}) por 4. Dado un conjunto A. entonces A/ ∼ es una partici´ on de A. d) ↔ ad = bc es una relaci´ on de equivalencia. Demuestre lo anterior.C. ¿C´ omo? c Luis Dissett. Particiones Definici´ on 23.3. si ∼ es una relaci´ on de equivalencia en A. Demuestre las afirmaciones contenidas en los ejemplos anteriores. Chile. Cuando la relaci´ on sea clara del contexto. El conjunto A/∼ = {[a]∼ : a ∈ A} es llamado el conjunto cuociente de A por ∼. hemos probado que.4. Para cada a ∈ A. dos cualesquiera distintas de ellas son disjuntas.3.2. Clases de equivalencia Sea ∼ una relaci´ on de equivalencia definida en A. La relaci´ on “ser trasladado paralelo” entre trazos dirigidos (en el plano o el espacio) es una relaci´ on de equivalencia. . Defina formalmente los n´ umeros reales a partir de una relaci´ on de equivalencia entre las sucesiones de Cauchy de racionales. . . en el caso de Zn al definir la suma. Chile. Defina formalmente los racionales a partir de una relaci´ on de equivalencia en Z × (N − {0}). si en lugar de a elegimos b ∼ a como representante de [a] (ya que b ∼ a → [a] = [b]). Definiendo nuevos objetos con relaciones de equivalencia Uno de los mayores usos de las relaciones de equivalencia es la definici´ on de nuevos objetos. n) ↓ (r.4. s) ↔ m + s = n + r.3. tendr´ ıamos que demostrar que. Por ejemplo. ¿Cu´ al es el (posible) problema con esta definici´ on? 4. . los enteros son definidos como el conjunto cuociente de N × N por la relaci´ on (m. Entonces debe tenerse: b ∼ a → g (b) = f ([b]) = f ([a]) = g (a).7. Ejercicio. Es f´ acil ver que Zn = {[0] . + y ·. 36 P. [1] . Ejercicio. Los enteros tienen una estructura dada por dos operaciones. Independencia de los representantes El cuidado que hay que tener al definir operaciones o funciones en t´ erminos de miembros de clases de equivalencia de A/∼ es que dicha definici´ on sea independiente de los representantes . si a ≡n c y b ≡n d. si por ejemplo definimos f ([a]) en t´ erminos de a. como conjunto cuociente de otro por una relaci´ on de equivalencia. 4. En otras palabras.C.6.3. RELACIONES DE EQUIVALENCIA CAP´ ITULO 4. Ejemplo: los enteros m´ odulo n Consideremos la relaci´ on ≡n .U. Llamamos conjunto de los enteros m´ odulo n al conjunto Zn = {[i] : i ∈ Z} (aqu´ ı estamos usando la convenci´ on de que si la relaci´ on de equivalencia es clara del contexto no la mencionamos expl´ ıcitamente). ¿Ser´ a posible que Zn “herede ” esta estructura? 4.8. Formalmente.3.5. entonces [a + b] = [c + d]. Operaciones en Zn La manera “natural” de definir una suma y un producto en Zn es como sigue: [i] + [j ] = [i + j ] . [i] · [j ] = [i · j ] . Ejemplo. [n − 1]} . c Luis Dissett.3. obtengamos el mismo resultado. RELACIONES 4.3. debemos cerciorarnos de que. 2004 . definida en Z por x ≡n y ↔ n | (x − y ). Supongamos que definimos f ([a]) como f ([a]) = g (a). y )R1 (x . 1] pero que “perciba” los puntos como equivalentes de acuerdo a esta relaci´ on no pensar´ a que el mundo es “un plano”.3. 1] como (x. ¨©©¨ §§¦¦ ¥¥¤¤ A1 £¢¢£ ¡ ¡  B1  A2 B2  A3 B3  A4 B4     . RELACIONES DE EQUIVALENCIA 4.CAP´ ITULO 4. Demuestre que ´ esta es una relaci´ on de equivalencia. Ejercicio. RELACIONES 4.9. y ) ↔ x − x ∈ Z ∧ y = y . Otros objetos definidos por relaciones de equivalencia El cilindro Consideremos la relaci´ on definida en R × [0.3. Una hormiga que viva en R × [0. sino que considerar´ a que cada uno de los cuadrados de la figura siguiente es “el mismo”. .       . . vemos que el mundo para esta hormiga tiene una apariencia similar a la de la figura de la derecha. Ejercicio. La cinta de M¨ obius Supongamos que cambiamos la relaci´ on de equivalencia por la siguiente: (x. la hormiga ver´ ıa R × [0. y + y = 1 si x − x es impar. y )R2 (x .  As´ ı. A A A B B B Identificando estos puntos (y los otros puntos equivalentes en los bordes del cuadrado). As´ ı. si se quiere. 1] × [0. 1] as´ ı: ¨©©¨ §§¦¦ ¥¥¤¤ A1 £¢¢£ ¡ ¡  A2 B1    B2 A3 A4 B3   B4   .encontrar´ ıa que los puntos marcados A en la figura de la izquierda ser´ ıan “equivalentes (y lo mismo pasa con los puntos marcados B ). como el conjunto cuociente del cuadrado unitario [0. . 1] por la relaci´ on que iguala a los puntos correspondientes de los extremos derecho e izquierdo del cuadrado. Demuestre que ´ esta es una relaci´ on de equivalencia. la hormiga creer´ a que es lo mismo ir de A1 a B1 que de A2 a B2 . de A3 a B3 . hemos definido un cilindro como el conjunto cuociente de R × [0. Si nuestra hormiga hiciera un mapa de “el mundo”. y ) ↔ x − x ∈ Z ∧ y=y si x − x es par. etc. En otras palabras. 1] por la relaci´ on de equivalencia indicada m´ as arriba (o. .       . .  La hormiga del ejemplo considerar´ a que los bordes derecho e izquierdo de cada uno de estos cuadrados son equivalentes. c Luis Dissett. pero con los puntos “dados vuelta” (ver figura). Chile. 37 P. 2004 .C.U. 3. y a cada punto del extremo superior con el correspondiente punto del extremo inferior (las flechas indican qu´ e puntos se identifican con cu´ ales): Una imagen del toro es c Luis Dissett. Chile.U. Escher: El toro Tambi´ en conocido como “la dona” o “el Michelin”.C. el toro se obtiene al tomar el cuociente de [0. 38 P. 2004 . RELACIONES B A As´ ı. 1] × [0. RELACIONES DE EQUIVALENCIA A B CAP´ ITULO 4.4. 1] por la relaci´ on que hace equivalente a cada punto del extremo izquierdo con el correspondiente punto del extremo derecho. la hormiga descubrir´ a que el mundo tiene la forma de una cinta de M¨ obius : A B Quiz´ as la cinta de M¨ obius m´ as conocida es el “desfile de hormigas” pintado por M.C. al hacer el mapa. 39 P. Una imagen de la botella de Klein (con un cruce) es: c Luis Dissett. en R3 es imposible “realizar” una botella de Klein (o sea. RELACIONES DE EQUIVALENCIA La botella de Klein Otro ejemplo de superficie que se puede definir usando relaciones de equivalencia es la botella de Klein : para ello tomamos el cuociente de [0. RELACIONES 4. 2004 . es imposible conseguir una botella de Klein sin que se “cruce” consigo misma). 1] × [0.3.C. y a cada punto del extremo izquierdo con el punto opuesto del extremo derecho (las flechas indican qu´ e puntos se identifican con cu´ ales): Lamentablemente. Chile.CAP´ ITULO 4.U. 1] por la relaci´ on que hace equivalente a cada punto del extremo superior con el correspondiente punto del extremo inferior. EJERCICIOS CAP´ ITULO 4. Chile. Dada una relaci´ on R definida en un conjunto A. 3.C. x) ∈ R} . Demuestre que R ⊆ A × A es transitiva sii R ◦ R ⊆ R. la botella de Klein no tiene “interior y exterior”. Deduzca que R ¯ es sim´ Demuestre que R etrica. definimos la clausura sim´ etrica de R como ¯= R {S : R ⊆ S ⊆ A × A ∧ S es sim´ etrica} .4. el interior de la botella tiene volumen 0. Ejercicios Sea A = ∅. es posible moverse sobre dicha superficie y llegar a estar “afuera”.10. y ) ∈ A × A : (y. Demuestre que R es sim´ etrica sii R = R−1 . ¿Cu´ ales de las siguientes propiedades tiene R? a) b) c) d) refleja. definimos R−1 = {(x. Si designamos una de las superficies como “adentro”.4. El volumen de la botella de Klein As´ ı como la cinta de M¨ obius tiene “un solo lado”. Dada una relaci´ on R definida en un conjunto A. antisim´ etrica.4. As´ ı. c Luis Dissett.U. ¯ = R ∪ R−1 . 2. transitiva. z ) ∈ A × C : ∃y ∈ B (xRy ∧ ySz )} .3. por lo que una graduaci´ on adecuada de su volumen est´ a dado por la siguiente foto: 4. definimos la composici´ on S ◦ R de R y S como S ◦ R = {(x. y sea R ⊆ A × A el conjunto vac´ ıo. 1. sim´ etrica. Dadas dos relaciones R ⊆ A × B y S ⊆ B × C . RELACIONES 4. 4. 40 P. 2004 . 8. Demuestre que las relaciones R1 y R2 definidas en el p´ arrafo anterior. y ) ↔ x − x ∈ Z ∧ y − y ∈ Z. (x. EJERCICIOS Dada una relaci´ on R definida en un conjunto A. y ) ↔ x − x ∈ Z ∧ y = y . y + y ∈ Z si x − x es impar. (x − x ∈ P ∧ y − y ∈ P) ∨ (x + x ∈ P ∧ y + y ∈ P) ∨ (x − x ∈ I ∧ y + y ∈ I) ∨ (x + x ∈ I ∧ y − y ∈ I) (donde P y I representan los conjuntos de enteros pares e impares respectivamente). Demuestre que las siguientes relaciones definidas en R2 × R2 son de equivalencia: (x. y )R2 (x . y ) ↔ x − x ∈ Z. y ) ∈ R ↔ f (x) = f (y ). RELACIONES 5. y que es posible definir la cinta de M¨ obius como el cuociente del mismo conjunto por la relaci´ on y=y si x − x es par. as´ ı como las relaciones R3 . y )R5 (x . Ri tambi´ en es relaci´ on de equivalencia en A. y )R4 (x . y ) ↔ x − x ∈ Z ∧ y = y . (x. (x. En clases vimos (informalmente) que es posible definir un cilindro como el cuociente del conjunto R × [0.C. Sea f : A → B una funci´ on. y ) ↔ x − x ∈ Z ∧ y + y = 1 si x − x es impar. 2004 c Luis Dissett. donde Rn est´ a definido inductivamente por R1 R n+1 = R. Demuestre que R1 ∩ R2 es relaci´ on de equivalencia en A. R4 y R5 definidas en R2 que se dan a continuaci´ on son efectivamente relaciones de equivalencia. (x. Sean R1 y R2 dos relaciones de equivalencia en A. Chile. 4. ¿Es necesariamente R1 ∪ R2 una relaci´ on de equivalencia? Justifique. definimos la clausura transitiva de R como R+ = Demuestre que R+ = ∞ n=1 {S : R ⊆ S ⊆ A × A ∧ S es transitiva} .4. 1] por la relaci´ on de equivalencia (x. . = Rn ◦ R. sea {Ri : i ∈ I } una familia (posiblemente infinita) de relaciones de equivalencia definidas en un conjunto A. Demuestre que la siguiente relaci´ on R es de equivalencia en A: (x. y )R3 (x . 9. 6. y ) ↔ x − x ∈ Z ∧ (x. Demuestre que R= i∈I 7. Deduzca que R+ es transitiva. y )R1 (x . y )R1 (x . 41 P. y ) ↔ y − y ∈ Z si x − x es par. y )R1 (x .U. Generalizando el problema anterior. Rn .CAP´ ITULO 4. Liste algunos elementos de las clases de equivalencia [(0. n)]? Demuestre que la operaci´ on entre clases de equivalencia dada por [(m. n) ∼ (m . Q = (Z × (N − {0})/ ∼. np)] est´ a bien definida (en otras palabras. 0)]. d) e) Defina una operaci´ on · (multiplicaci´ on m´ odulo n) en Zn . el mayor entero que no excede x). n)] y (l . 42 P. Queremos definir la operaci´ on [k ] [l] en Zn . 2004 . en este ejercicio queremos definir Q.4. como sigue: [k ] + [l] = [k + l]. si x. (m´ od n) es una relaci´ on de equivalencia. n ) ↔ kn = k n. consideramos la siguiente relaci´ on definida en Z × (N − {0}): (k. As´ ı como en el ejercicio anterior definimos formalmente Z. n) ∼ (k . np)]). b ) El conjunto Zn (los enteros m´ odulo n) es definido como Z/ ∼ = [16]. ¿a qu´ e n´ umero racional corresponde la clase [(k. [28] y [39] en Z7 . n + q )]). n ) ∈ [(k. Considere la siguiente relaci´ on definida en N2 : CAP´ ITULO 4. n)] ⊗ [(l. y ∈ Zn entonces el valor de x y depende de los representantes considerados. Demuestre que esta operaci´ on est´ a bien definida. [(5. es decir. Formalmente. n)] y (p . a) b) c) d) Demuestre que la relaci´ on ∼ as´ ı definida es de equivalencia. q )] = [(m + p. 1)]. Demuestre que esta operaci´ on no est´ a bien definida. esta definici´ on no depende de los representantes escogidos: si (m . n)]? Demuestre que la operaci´ on entre clases de equivalencia dada por [(k. [(4. la operaci´ on ⊕ corresponde a la suma de n´ umeros enteros. ¿a qu´ e entero corresponde la clase [(m. Para ello. [22]. (m´ od n). es independiente de los representantes considerados. Defina una operaci´ on ⊕ que corresponda a la suma de n´ umeros racionales. e) 11. Intuitivamente. [(2. a) b) c) d) Demuestre que la relaci´ on ∼ as´ ı definida es de equivalencia. Formalmente.U. p)] entonces [(k l . Z = N2 / ∼. Chile. 2)]. definimos la relaci´ on ≡ x≡y a) Demuestre que ≡ (m´ od n) ↔ n divide a x − y. n)] ⊕ [(p. RELACIONES (m. EJERCICIOS 10. n + q )] = [(m + p. Sea n ∈ N. Intuitivamente. n ) ↔ m + n = m + n. c) Definimos la operaci´ on + (suma m´ odulo n) en Zn . como sigue: [k ] [l] = k+l 2 . x representa la parte entera de x (o sea. Intuitivamente. es decir. [(2. esta definici´ on no depende de los representantes escogidos: si (k . n ) ∈ [(m. 3)]. Intuitivamente. 1)].C. n + q )] est´ a bien definida (en otras palabras. 7)]. (m´ od n) como: e) 12. p)] = [(kl. q ) ∈ [(p. c Luis Dissett. Liste algunos elementos de las clases de equivalencia [(0.4. p ) ∈ [(l. [(3. n p )] = [(kl. 3)]. Aqu´ ı. Defina una operaci´ on ⊗ que corresponda al producto de n´ umeros enteros. q )] entonces [(m + p . En Z. Encuentre Demuestre que esta operaci´ on est´ a bien definida. la operaci´ on ⊗ corresponde a la multiplicaci´ on de n´ umeros racionales. 43 . Dado x ∈ A. denotamos por f (x) al u ´nico y ∈ B tal que (x. f (x) = f (y ) → x = y. y ) ∈ f . o simplemente sobre ) si.1. y ∈ A. lo que denotaremos por A ∼ B . dados x. ´ estos tienen la misma cantidad de elementos si existe una biyecci´ on f : A → B . Teorema.1. Formalmente. Sea A un conjunto cualquiera. diremos lo siguiente: Definici´ on 25. usamos alg´ un miembro de |A| para denotar la clase entera. o equipotentes . dado cualquier x ∈ A.1. Cardinalidad Intuitivamente. existe un u ´nico y ∈ B tal que (x.Cap´ ıtulo 5 Funciones 5. Definiciones b´ asicas Definici´ on 24.2. Estamos especialmente interesado en las biyecciones. T´ ıpicamente. f : A → B ) si . y ) ∈ f . Dados dos conjuntos A y B . El cardinal de A (que anotamos |A|) es su clase de equivalencia por la relaci´ on de equinumerosidad. 5. La relaci´ on ∼ es una relaci´ on de equivalencia. Biyectiva (o biyecci´ on. Epiyectiva (o sobreyectiva. 5. En este caso tambi´ en se dice que A y B son equinumerosos . o correspondencia biun´ ıvoca ) si es inyectiva y epiyectiva. Una relaci´ on f ⊆ A × B es llamada una funci´ on de A en B (en s´ ımbolos. Tipos de funciones Una funci´ on f : A → B es: Inyectiva (o 1-1) si. existe alg´ un x ∈ A tal que y = f (x). Definici´ on 26. dado cualquier y ∈ B . Notaci´ on. contar los elementos de un conjunto A significa poner en correspondencia el conjunto A con los elementos de un conjunto de referencia. de modo que todo elemento de A es generado en alg´ un momento por este algoritmo . 5. Un conjunto que no es finito se dice (sorpresa) infinito . En t´ erminos algor´ ıtmicos. Caracterizaciones de numerabilidad Una manera de caracterizar los conjuntos numerables es la siguiente: Un conjunto A es numerable si y s´ olo si es posible escribir A como una lista infinita : A = {a1 . Ejemplos de conjuntos numerables Algunos de los conjuntos que pueden ser puestos en correspondencia biun´ ıvoca con N: P. 1. . 23. 13. 7. 2004 . . Es posible demostrar que: si f es 1-1 entonces es sobre. Conjuntos finitos e infinitos n = {0. 19. . y as´ ı sucesivamente. .2. si f es sobre entonces es 1-1. a2 . .2. } .3. entonces A es finito. todo conjunto numerable es infinito.2. luego otro. Caracterizando los conjuntos finitos Sea A un conjunto finito. 11. a3 .5. 1 Aunque este “algoritmo” nunca termina . . 2. ya que estos conjuntos son todos subconjuntos propios de N. } .U. . Un conjunto se dice finito si es equinumeroso con alg´ un n ∈ N. . 3. . . el conjunto de los n´ umeros primos: Π = {2.C. CARACTERIZACIONES DE NUMERABILIDAD CAP´ ITULO 5.2.2. Chile. . 5. a2 . n − 1} . tal que toda funci´ on 1-1 f : A → A es sobre (o que toda funci´ on sobre f : A → A es 1-1). . podemos pensar esto como que existe un “algoritmo”1 que genera un elemento de A. En otras palabras. Estos ejemplos pueden aparecer anti-intuitivos a primera vista. FUNCIONES 5. . existe una sucesi´ on (a1 . En este caso.1. . 44 P. c Luis Dissett. I. M´ as a´ un: si A es un conjunto cualquiera. diremos que la cardinalidad de A es n: |A| = n. Recordemos que un elemento de N es de la forma Definici´ on 27. 17.4. Π. Claramente. ) de elementos de A con la propiedad de que todo elemento de A aparece en alg´ un momento en dicha sucesi´ on . Conjunto numerables Un conjunto equinumeroso con N se dice numerable .3. ¿Ser´ a verdad el rec´ ıproco? 5. el conjunto de los naturales pares: P = {2n : n ∈ N} . 5. 5. el conjunto de los naturales impares: P = {2n + 1 : n ∈ N} .3. a3 . Esperar´ ıamos que tuvieran cardinalidad “menor” que la de N. . y sea f : A → A. r2 . . El teorema presentado es un caso particular del siguiente: Teorema (Cantor). Chile.. Los reales ¿Ser´ a verdad que R es numerable? Se puede demostrar que ni siquiera el intervalo cerrado [0.6. Por ejemplo. } donde: r0 r1 r2 r3 = 0.4. Q es numerable.. . es posible hacer una lista (infinita) en que cada racional aparezca (exactamente) una vez: 1 1 2 1 3 1 2 3 4 .d0 d1 d2 d3 d4 · · · donde di := (cii + 5) no aparece en la lista . 1] no es numerable? mod 10 5. r1 . Supongamos que [0. Pero entonces el real r := 0.1. . 1] = {r0 . . . Ejercicio. Demostraci´ on. . . FUNCIONES 5.4.. El argumento de Cantor El argumento presentado antes es llamado la diagonalizaci´ on de Cantor o argumento diagonal de Cantor .c10 c11 c12 c13 c14 · · · = 0. Los racionales ¿Es Q numerable? Argumento (intuitivo) en contra: Parece haber “demasiados” racionales m´ as que naturales. 1] es numerable. c Luis Dissett. . 9}. . donde cij ∈ {0. . 5. 1] es numerable . 45 P. El problema de la detenci´ on El argumento diagonal de Cantor tiene aplicaciones a Ciencia de la Computaci´ on.c30 c31 c32 c33 c34 · · · .5. 2004 . . A) (donde P es un programa y A un archivo de datos) y decida si el programa P se detendr´ a al ser ejecutado con entrada A.CAP´ ITULO 5. . Entonces.c00 c01 c02 c03 c04 · · · = 0. 5. . . . es posible escribir [0. . . . . LOS RACIONALES 5. se le usa para probar que es imposible escribir un programa cuya entrada sea un par (P. Q= 1 2 1 3 1 4 3 2 1 O sea. ¿D´ onde falla el argumento aqu´ ı presentado al tratar de demostrar —de la misma manera— que Q ∩ [0. .C.U. Sea A un conjunto cualquiera. . . Entonces no hay ninguna biyecci´ on entre A y P (A).c20 c21 c22 c23 c24 · · · = 0. ¡Entre dos naturales consecutivos siempre hay una cantidad infinita de racionales! Sin embargo.6. Si este es el caso. entonces existe una biyecci´ on f : A → B . Orden entre cardinalidades El hecho de que no hay una biyecci´ on entre N y el intervalo [0. Antes de ver su demostraci´ on. ORDEN ENTRE CARDINALIDADES CAP´ ITULO 5. . 1. anotamos A B . Para hacer esto. 2. A entonces A ∼ B (teorema de Cantor-Schr¨ oder- En realidad. la primera (est´ upida) idea que se nos ocurre es considerar la “funci´ on” f0 (x) = x definida en [0. 2004 .7.5. 1) como sigue: x si x = 1. As´ ı. El teorema de Cantor-Schr¨ oder-Bernstein (CSB) Enunciamos el Teorema (Cantor-Schr¨ oder-Bernstein). 1]. o entre A y P (A) (y sin embargo s´ ı hay una funci´ on 1-1 f : N → [0. 3. 5. definimos f2 : [0. Si A B y B A entonces A ∼ B . 1). 1] ∼ [0.   1/4 si x = 1/2. 46 P. x f2 (x) = 1/2 si x = 1.U. Digamos. ¿Qu´ e hacemos? 2 ¿La clase propia? c Luis Dissett. 1) como sigue:   si x = 1.8. FUNCIONES 5. x = 1/2. o cualquier otro = 1/2). Dados dos conjuntos A y B . 1]. ¿Qu´ e problema tenemos? Como f0 (1) ni siquiera est´ a en el conjunto de llegada. As´ ı.1. Digamos por ejemplo que a 1 le asignamos como imagen 1/2. por lo que el que tiene que reubicarse es 1/2. definimos f1 : [0. 1]. O sea: si existe una funci´ on inyectiva g : A → B y una funci´ on inyectiva h : B → A. 1] → [0. 5. 1] → [0.C. por ejemplo.8. no es un orden parcial pero determina un orden parcial en el conjunto2 de clases de equivalencia por la relaci´ on ∼. que 1/2 se va a 1/4 (podr´ ıa ser 1/3. 1). Proleg´ omeno: Demostraremos primero que [0. debemos asignarle a 1 una imagen en [0. estudiaremos un caso particular del teorema. 5. Ahora tenemos un problema con 1/4 . . Chile. f1 (x) = 1/2 si x = 1. Ya que el 1 acaba de llegar a 1/2. La relaci´ on es refleja: A es transitiva: si A es “casi” antisim´ etrica: si A Bernstein (CSB)).7. ByB C entonces A ByB C. decimos que B tiene al menos tantos elementos como A (o que A no tiene m´ as elementos que B ) si existe una funci´ on 1-1 f : A → B . y una de A en P (A)) nos sugiere la siguiente definici´ on: Definici´ on 28.7.1. est´ a cansado. Ahora tenemos que 1/2 tiene dos pre-im´ agenes: 1 y 1/2. Propiedades de tiene las siguientes propiedades: A. ¨ CAP´ ITULO 5. entonces es posible demostrar que. c Luis Dissett. EL TEOREMA DE CANTOR-SCHRODER-BERNSTEIN (CSB) Ahora mandemos 1/4 a 1/8. x = 1/2. En el caso que demostramos anteriormente. B y B son equinumerosos (h : B → B es una biyecci´ on). 1). 1 2.C. As´ ı. Ahora el problema lo tenemos con los elementos de j (A − A ) (lo que pasaba con 1/2 en el ejemplo). . Sea B = h(B ) ⊆ A. 1) est´ a dada por j (x) = x/2. nos bastar´ a con demostrar la siguiente versi´ on simplificada del teorema: Dados un conjunto A y un subconjunto A de A. etc. 5.8. en lugar de mandar x a x. Primera (est´ upida) idea : f0 : A → A dada por f0 (x) = x no resulta (se escapa de A ). . . 1) como sigue:  x    1/2 f2 (x) =  1/4    1/8 si si si si 1 x∈ / 1. Ejercicio. . A = [0.8. g : A → B y h : B → A. 8 . x = 1/4. Schr¨ oder y Bernstein. Claramente. . La manera de construir la biyecci´ on entre A y A recuerda a la de la demostraci´ on anterior. 1].8. definimos f3 : [0. Si x ∈ j (A − A ). As´ ı. Demostraci´ on de C-S-B Retomemos la demostraci´ on del Teorema de Cantor. As´ ı. O sea: f2 (x) = x j (x) si x ∈ / A − A ∪ j (A − A ). Claramente. A = [0. 5. los mandamos a j (x).3. . 1] → [0. j : [0. entonces A y A son equinumerosos. FUNCIONES 5. ¿Qu´ e hemos ganado? Hemos ganado mucho: si consideramos la funci´ on f (x) = l´ ım fn (x) = n→∞ x x/2 1 1 1 . 1). f es una biyecci´ on entre [0. si existe una funci´ on inyectiva j : A → A .U. Sean A y B dos conjuntos tales que hay dos funciones inyectivas. 1] y [0. . efectivamente. Demostraci´ on. Se ve que vamos a tener problemas con j (j (A − A )). 4 . 47 P.2. Chile. . 2 1 1 1 si x ∈ 1. j (j (j (A − A ))). 2004 . si x ∈ A − A . h ◦ g : A → B es inyectiva. . 2 . . 4. x = 1. 4 . si x ∈ / 1. si x ∈ A − A ∪ j (A − A ). 1] → [0. 8. Y ahora el problema se produce en 1/8 . Soluci´ on (temporal) del problema Definimos f1 : A → A como sigue: f1 (x) = x j (x) si x ∈ / A−A. si logramos establecer una biyecci´ on entre A y B tendremos la equinumerosidad deseada entre A y B . Demuestre que si dos conjuntos A y B son finitos entonces A ∪ B y A ∩ B son conjuntos finitos. 5. 6. Sean A. Ayuda: ¡Cuidado con los elementos comunes a A y a B ! 7. 2004 c Luis Dissett. Ejercicios Demuestre que si A es un conjunto finito y B ⊆ A entonces B es finito. Chile. D´ e ejemplos de dos conjuntos infinitos no numerables cuya intersecci´ on sea: a) b) c) finita. Demuestre que si dos conjuntos A y B son numerables entonces A ∪ B es numerable. A ∩ B = ∅ y B ∼ = C . Demuestre que si A ⊆ N entonces A es finito ↔ A tiene un m´ aximo. C3 = j (C2 ). Demuestre que si A es un conjunto finito entonces toda funci´ on f : A → A es 1-1 si y s´ olo si es sobre. infinita numerable. sea ∞ C= i=0 Ci .9. Demuestre que A ∪ B ∼ = A. 6).5. Soluci´ on final Consideremos los conjuntos C0 = A − A . Demuestre que la funci´ on f : A → A reci´ en definida es efectivamente una biyecci´ on (tarea. necesitamos aplicar j a los elementos de estos conjuntos. 1.9. 48 P. Construya expl´ ıcitamente una biyecci´ on f : N → N × N. 2. 2’2002). D´ e biyecciones expl´ ıcitas entre: a) b) c) El conjunto de los naturales pares y el de los enteros impares. Definimos f (x) = x j (x) si x ∈ / C. C1 = j (C0 ). etc. El conjunto de los naturales pares y el de los enteros. B y C conjuntos tales que C ⊆ A. Demuestre que un conjunto A es infinito si y s´ olo si A es equinumeroso con alg´ un subconjunto propio A ⊂ A. Determine el valor de f (17) y de f −1 (5. FUNCIONES 5. Claramente. 5.U. As´ ı. Ejercicio. Demuestre que si A es un conjunto finito y B es un conjunto numerable entonces A ∪ B es numerable y A ∩ B es finito. 11. Demuestre que el conjunto N × N es numerable.4. El conjunto de las potencias de 2 y el de los n´ umeros enteros pares. infinita no numerable. 8. 10. 4. 3. 9.C. EJERCICIOS CAP´ ITULO 5. si x ∈ C.8. . C2 = j (C1 ). donde Dx ∩ es finito para cada recta paralela al eje X . Si un n´ umero real no es algebraico entonces es trascendente . Demuestre que el conjunto de todas las sucesiones eventualmente peri´ odicas de enteros es numerable. 23. . 21. y Dy ∩ es finito para cada recta paralela al eje Y .9. o sea. c Luis Dissett. 13. a1 . entonces es posible escribir D como D = Dx ∪ Dy . Demuestre que el conjunto de todos los n´ umeros reales trascendentes no es numerable. 24. B ∈ S (A ⊆ B ∨ B ⊆ A). donde pk es el k -´ esimo primo (contando desde cero). 2004 . a) b) Demuestre que el conjunto de todos los n´ umeros reales algebraicos es numerable. Demuestre que si D es un conjunto numerable de puntos del plano cartesiano. Chile. 5. ) de enteros se dice progresi´ on aritm´ etica si para todo n ∈ N se tiene an+2 − an+1 = an+1 − an . . Demuestre que el conjunto de todas las secuencias finitas de racionales es numerable. Demuestre que el conjunto de todas las secuencias finitas de enteros positivos es numerable. . a2 . . k Ayuda: A la secuencia (r0 . . Demuestre que el conjunto P (N) (el conjunto potencia de N) tiene la misma cardinalidad que R. 49 P. Un n´ umero real se dice algebraico si es ra´ ız de alg´ un polinomio con coeficientes enteros.U. ) de enteros se dice eventualmente peri´ odica si existen dos n´ umeros naturales n0 y p > 0 tales que. 14. . rk ) as´ ociele el n´ umero 2r0 3r1 · · · pr k . 15. r1 .CAP´ ITULO 5. 18. Una sucesi´ on (a0 . EJERCICIOS Demuestre que el conjunto de todas las sucesiones de n´ umeros enteros no es numerable. Demuestre que el conjunto de todas las progresiones aritm´ eticas de enteros es numerable. 16. . Demuestre que el conjunto de todas las sucesiones finitas de n´ umeros racionales es numerable. ¿Por qu´ e es importante aqu´ ı la hip´ otesis de “disjuntos”? Demuestre que N puede ser escrito como la uni´ on de una familia numerable de conjuntos numerables disjuntos. Demuestre que el conjunto de todas las rectas del plano que pasan por (al menos) dos puntos con coordenadas racionales. . . para todo n ≥ n0 . Una sucesi´ on (a0 . 22. a1 . . 20. 17. 19. una familia no numerable S ⊆ P (N) tal que ∀A. Demuestre que en el conjunto P (N) (el conjunto potencia de los naturales) es posible encontrar una cadena no numerable de subconjuntos. an+p = an . es numerable. FUNCIONES 12. Demuestre que cualquier conjunto infinito de c´ ırculos disjuntos en el plano es numerable. r2 .C. C. FUNCIONES c Luis Dissett.9. 2004 . 50 P.5.U. EJERCICIOS CAP´ ITULO 5. Chile. 1. si n ∈ S entonces n + 1 ∈ S . incluso. podemos considerar. y demostrar la propiedad deseada (o definir el nuevo concepto) para n en dicho conjunto (N corresponde a la elecci´ on no = 0). 51 . el conjunto {n ∈ Z : n ≥ no }.1. 6. 0! = 1. Ejemplo t´ ıpico: definici´ on de la funci´ on factorial para todo natural.1. a partir de n = −13? En realidad.2. Otros puntos de partida Hemos adoptado la convenci´ on de que el primer n´ umero natural es cero. Principios de Inducci´ on Hay (al menos) tres principios de inducci´ on para naturales que son equivalentes: Principio Simple de Inducci´ on (PSI) Dado un subconjunto S de N (S ⊆ N). en lugar de N. La inducci´ on nos permite demostrar que existe una u ´nica funci´ on ! : N → N que satisface las ecuaciones de arriba. 6. si se cumple que: (i) 0 ∈ S . (ii) dado cualquier n ∈ N. Inducci´ on (sobre los naturales) Usamos inducci´ on sobre los naturales para: Demostrar que todos los n´ umeros naturales tienen una cierta propiedad. dado no ∈ Z. Los principios de inducci´ on que veremos a continuaci´ on pueden ser adaptados a cualquier elecci´ on de no . n Ejemplo t´ ıpico: k=1 k = n(n + 1) .1. 2 Definir diversos objetos asociados a los n´ umeros naturales: definiciones inductivas/recursivas de: funciones. (n + 1)! = (n + 1) · n!. Suponemos que el factorial est´ a definido para n y lo definimos para n + 1. etc. relaciones. ¿Qu´ e pasa si queremos demostrar que una propiedad se cumple a partir de n = 17? ¿o.Cap´ ıtulo 6 Inducci´ on y clausuras 6. para todo x ∈ S . y a (ii) el “paso inductivo”. digamos 10.U. Principio del buen orden Todo subconjunto no vac´ ıo. Sea P (n) un predicado con una variable n (entera o natural). Ejercicio. Lo mismo que en los dos ejercicios anteriores. y no s´ olo para n − 1. INDUCCION entonces S = N.1.1. A veces. entonces ∀n ∈ N(P (n)). INDUCCION CAP´ ITULO 6. Ejercicio. Entonces podemos formular los dos primeros principios de inducci´ on como sigue: Principio Simple de Inducci´ on (PSI) Si se cumple que: (i) P (0). existe y ∈ S . y ≤ x. y en ´ este la HI es {k ∈ N : k < n} ⊆ S y la TI es n ∈ S . Dentro del paso inductivo. uno es m´ as apropiado que otro. entonces ∀n ∈ N(P (n)). la hip´ otesis es m´ as fac´ ıl de usar. Ayuda: Encuentre una cadena c´ ıclica de implicaciones. para todo n ∈ N se cumple que: ∀k ∈ N(k < n → P (k )) → P (n). pero ahora se desea demostrar que todos los n´ umeros enteros mayores que. Demuestre la equivalencia entre los tres principios de inducci´ on. ¿C´ omo puede usar el principio de inducci´ on simple (y justificar el uso) para demostrar que todos los n´ umeros naturales mayores que. ya que lo que se quiere demostrar se supone para todos los predecesores de n. Chile.4. si se cumple que. ( ) 52 P. Una formulaci´ on equivalente Los dos primeros principios de inducci´ on pueden ser formulados de manera equivalente usando predicados en lugar de conjuntos. Lo mismo que antes. digamos −5. Aqu´ ı vemos que no hay una “base” expl´ ıcita: s´ olo hay un paso inductivo.3.´ (SOBRE LOS NATURALES) ´ Y CLAUSURAS 6. Principio de Inducci´ on “por curso de valores” Si. tienen una cierta propiedad? Ejercicio. entonces S = N. Al realizar demostraciones basadas en este principio le llamamos a la parte correspondiente a (i) “base” de la inducci´ on. Como dijimos al principio. Dado un subconjunto S de N (S ⊆ N).1. ( ) 6.C. 2004 . PICV es muy poderoso. Ejercicios Ejercicio. todos estos pricipios son equivalentes: cada uno se puede demostrar a partir de cualquiera de los otros. S = ∅. Principio de Inducci´ on “por curso de valores” (tambi´ en llamado “segundo principio de inducci´ on” o “principio fuerte de inducci´ on”). seg´ un el problema donde se quiera aplicar. c Luis Dissett. para todo n ∈ N: {k ∈ N : k < n} ⊆ S → n ∈ S. y (ii) para todo n ∈ N. tal que. 6. es decir. de N. la parte n ∈ S recibe el nombre de “hip´ otesis de inducci´ on” (HI) y la parte n + 1 ∈ S recibe el nombre de “tesis de inducci´ on” (TI). tiene un “primer elemento”. si se cumple P (n) entonces se cumple P (n + 1). tienen una cierta propiedad. pero ahora usando PICV. hay que demostrar ( ) —o. hay 22 casos “base”. Los casos base en nuestra demostraci´ on corresponden a 0 ≤ n < 18 (que trivialmente pertenecen a S ). Ejemplo. . n = 18.5. 6.2. en la demostraci´ on de que todo n´ umero natural n pertenece a S . no aporta nada. . 2004 . . 20} ⊆ S . 6. x2 . Sea S = {n ∈ N : n ≥ 2 → n tiene un factor primo }. Demostraci´ on de Correcci´ on y T´ ermino de programas computacionales.C. Chile. a partir de nada.6. para usar PICV. Si n es compuesto. . Se trata de demostrar que el programa para y que entrega en la salida el resultado esperado. . 0 es un caso base de estas demostraciones.1. CLAUSURAS 6.2. xn ) = y ↔ (x1 . Pero si n es primo. podemos formar cualquier franqueo de 18 pesos o m´ as. Casos base en en PICV )— para todo N´ otese que. No s´ olo hay que demostrar que la soluci´ on (usualmente no disponible expl´ ıcitamente) est´ a acotada por una expresi´ on algebraica que contiene constantes. e igual hay que demostrar que 0 ∈ S . Consid´ erese la demostraci´ on de que todo n´ umero natural ≥ 2 tiene un factor primo. no la necesitamos para comprobar que n ∈ S.1. . As´ ı. . tal como en PSI. Por ejemplo. 53 P. si tenemos una cantidad infinita de estampillas de 4 y 7 pesos. . As´ ı. Ejemplo.2. Demostraci´ on de principios combinatorios (el Principio de los Cajones). Sea A un conjunto cualquiera. . 1. Una funci´ on f : An → A es llamada una operaci´ on n-aria definida en A. A estos casos los llamaremos casos base de las demostraciones por PICV (y. En otros casos. y sea n ∈ N. y ∈ N tales que n = 4x + 7y }.´ Y CLAUSURAS CAP´ ITULO 6. Como la hip´ otesis es siempre verdadera. . hay una cantidad infinita de casos base : todos los n primos. Sea S = {n ∈ N : n ≥ 18 → existen x. INDUCCION 6. en la demostraci´ on de que todo n´ umero natural ≥ 2 tiene un factor primo.U. n = 20 y n = 21.1. . usamos la HI. t´ ıpicamente. ( n ∈ N. equivalentemente. m´ as 0 y 1 (que trivialmente pertenecen a S ). 21 es caso base porque la demostraci´ on de que 21 ∈ S no usa el hecho de que {0. Note que toda operaci´ on n-aria es esencialmente una relaci´ on (n + 1)-aria Rf : f (x1 . 6. el hecho de que {k ∈ N : k < n} ⊆ S no aporta nada porque en la demostraci´ on de que n ∈ S no se ocupa la hip´ otesis . Demostremos que. Esto incluye al 0. por lo que debemos demostrar que: {k ∈ N : k < 0} ⊆ S → 0 ∈ S. . Clausuras Funciones n-arias Definici´ on 29. n = 19. c Luis Dissett. pero no es necesariamente el u ´nico). pero importantes y u ´tiles: Acotaci´ on de soluciones de ecuaciones de recurrencia. y ) ∈ Rf . sino que hay que demostrar en el proceso que tales constantes existen (“inducci´ on constructiva”). Aplicaciones de inducci´ on en N En lo que sigue veremos aplicaciones no usuales en cursos b´ asicos. xn . x2 . xn ∈ S se tiene necesariamente f (x1 . Conjuntos cerrados bajo una relaci´ on Generalicemos las ideas anteriores: Definici´ on 31. 7}. A ⊆ C . el menor conjunto que contiene a A y es cerrado bajo adici´ on) es el de los m´ ultiplos positivos de 3. y f : An → A una operaci´ on n-aria definida en A. . 1. CLAUSURAS ´ Y CLAUSURAS CAP´ ITULO 6. Se cumple ψ (C ). Ejemplos. .4. . . entonces es posible franquear una carta por $n usando s´ olo estampillas de $4 y $7. se tiene necesariamente xn+1 ∈ S . . sea ψ (S ) una propiedad que tienen algunos subconjuntos S de U . . 2.3. n = 1. x2 . y sea A ⊆ U un conjunto dado. . xn ) ∈ S . 5. es u ´nico. 6. n ∈ N. Chile. Sean A = Z.6. INDUCCION 6. n = 2. xn+1 ) ∈ R. . 2. xn . 13. note que la noci´ on anteriormente definida de conjunto cerrado bajo una operaci´ on.9. 17} . El conjunto P de enteros pares es cerrado bajo f . . n ∈ N. Sea U = N.13 o 17 . .10. dados x1 .2. Si A = {3}. entonces un conjunto S ⊆ A se dice cerrado bajo R si. x2 . 1. 6.2. entonces el menor conjunto que contiene a A y satisface ψ (o sea. x2 . y R ⊆ An+1 es una relaci´ on (n + 1)-aria cualquiera. 3. 3. Si A es un conjunto no vac´ ıo. 54 P. . El menor conjunto que satisface ψ Sea U un “conjunto universal” dado. y sea f : Z → Z dada por f (x) = −x. diremos que C es el menor subconjunto de U que contiene a A y satisface ψ . y sea g : Z × Z → Z dada por g (x. x2 . 10.2. fijo. .C. 9. 2004 . . El conjunto I de enteros impares es cerrado bajo f . y ψ (S ) definida por “S es cerrado bajo adici´ on”. . ∈ S . entonces el menor conjunto que contiene a A y es cerrado bajo adici´ on es C = N − {0. y ) = x + y . dados x1 . Nos interesa encontrar un conjunto C ⊆ U que satisfaga lo siguiente: 1. El conjunto N de los n´ umeros naturales no es cerrado bajo f . Dado cualquier D ⊆ U tal que A ⊆ D y ψ (D). Sean A = Z. Ejemplos. Esto puede ser interpretado como sigue: si n es cualquier entero positivo excepto 1. Si existe C que cumpla estas tres propiedades. c Luis Dissett.5. xn+1 ∈ A tales que (x1 . El conjunto P de enteros pares es cerrado bajo g . . Un subconjunto S ⊆ A se dice cerrado bajo f si. xn . Conjuntos cerrados Definici´ on 30.2.2. es un caso particular del concepto de conjunto cerrado bajo una relaci´ on.6. 6. 2. Note que de existir C que cumpla estas tres propiedades. . Sean A un conjunto cualquiera.2. Si A = {4.U. El conjunto I de enteros impares no es cerrado bajo g .3. En particular. debe tenerse C ⊆ D. Note que ´ este es un elemento m´ ınimo (en el orden de la inclusi´ on) entre los conjuntos que contienen a A y satisfacen ψ . Ejemplos. R2 .2. A = {0}. Sean U un conjunto universal dado.2. .U. y ψ (S ) la propiedad “S ∩ {1. Ejercicio. Rk ”. R2 .2. . Ejemplo. Rk son relaciones definidas en A. y sea ψ una propiedad de clausura que es satisfecha por algunos de los subconjuntos de U . . Clausura bajo una relaci´ on Teorema.5.´ Y CLAUSURAS CAP´ ITULO 6. . entonces B es el menor subconjunto buscado. . es posible que no exista “el menor conjunto que contiene a A y satisface ψ ”. Sean U = N.6. Por ejemplo: c Luis Dissett. A ⊆ U un subconjunto fijo de U . . INDUCCION 6. CLAUSURAS 6. Denotaremos la clausura de A bajo las relaciones R1 . . Demostraci´ on. R2 . Rn ).2. . fijo. Propiedades de clausura Definici´ on 32. Este teorema tiene una suerte de rec´ ıproco: si B= {S ⊆ U : A ⊆ S ∧ ψ (S )} satisface ψ .7. R2 . Notaci´ on. Chile. 6. Una definici´ on alternativa Teorema. 2} = ∅”. y por ende no existe entre ellos un elemento m´ ınimo. . La clausura aditiva La mayor´ ıa de los ejemplos de clausuras pueden ser presentados como “clausuras bajo relaciones”. 6. 6. . . Demostraci´ on.2. . .8. Rn por C (A. Entonces no existe un u ´nico elemento minimal (en el orden de la inclusi´ on) entre los subconjuntos de U que contienen a A y satisfacen ψ . Sea U un “conjunto universal” dado. . y sea A ⊆ U un conjunto dado. Un problema Dependiendo de cu´ al sea la propiedad ψ . {S ⊆ U : A ⊆ S ∧ ψ (S )} 55 P. . Ejercicio. Diremos que una propiedad ψ (S ) definida sobre los subconjuntos de un conjunto dado A es una propiedad de clausura si ψ (S ) es de la forma “S es cerrado bajo cada una de las relaciones R1 . Si existe un “menor subconjunto C de U que contiene a A y satisface ψ ” entonces C= {S ⊆ U : A ⊆ S ∧ ψ (S )} . 2004 . sea ψ (S ) una propiedad que tienen algunos subconjuntos S de U . Ayuda: aprov´ echese del rec´ ıproco del teorema anterior: demuestre que B= satisface ψ . . R1 .C. Entonces existe un menor subconjunto de U que contiene a A y satisface ψ . donde k es un entero positivo y R1 . y ) ∈ R} para i ≥ 0. La clausura de A bajo la relaci´ on R es C (A. . E2 . R) = i=0 Si . . la clausura transitiva-refleja. . z ) ∈ Z3 : x + y = z . . {(E1 . {(E1 . Expresiones aritm´ eticas El conjunto de todas las expresiones aritm´ eticas que se pueden formar con constantes y variables en un lenguaje de programaci´ on pueden ser vistas como la clausura del conjunto {X : X es una constante o variable} bajo las relaciones: R1 R2 R3 R4 : : : : .9. E2 . E2 . E3 ) : E3 = (E1 ÷ E2 )} . Rn ). An´ alogamente podemos definir C (A.´ Y CLAUSURAS 6. . Ejercicio.C. E2 ) : E2 = (−E1 )} . . la clausura transitiva. xn . ∞ Sean A ⊆ U y R ⊆ An+1 . y ) : y = x ∪ {x}} . 6. R2 . (b. 2004 . . 6. La “clausura aditiva” de S (el menor conjunto cerrado bajo suma que contiene a S ) es la clausura de S bajo la relaci´ on (x. Definimos la clausura sim´ etrica de R como Rs = ∩ {S : R ⊆ S ⊆ A × A ∧ S es sim´ etrica} . Chile. R1 . . E3 ) : E3 = (E1 × E2 )} . El conjunto N El conjunto N puede ser visto como la clausura de {∅} bajo la relaci´ on “sucesor”: σ = {(x. INDUCCION Sea S ⊆ Z. . b) . OTRA FORMA DE VER LAS CLAUSURAS CAP´ ITULO 6. y. . . Podemos definir Rs como la clausura de R bajo la relaci´ on S ⊆ (A × A)2 = (A × A) × (A × A) definida por S = {((a. = Si ∪ {y ∈ U : ∃x1 . Otra forma de ver las clausuras S0 Si+1 = A. 56 P. etc.2. Rs es la menor relaci´ on sim´ etrica que contiene a R. Defina de las dos maneras anteriores la clausura refleja. E3 ) : E3 = (E1 + E2 )} . c Luis Dissett. de una relaci´ on. Definimos: Teorema. a)) : a. . b ∈ A} . Clausura sim´ etrica de una relaci´ on Sea R ⊆ A × A una relaci´ on. . xn ∈ Si (x1 . Ejercicio. {(E1 .U. {(E1 . Defina de las dos maneras anteriores la menor relaci´ on de equivalencia que contiene a R. .3..3. 4. . R1 . . ∧. Rn ). ∧. Conjuntos completos de conectivos Dado un conjunto C de conectivos. . definimos Ci+1 = Si+1 − Si . Sea F0 el conjunto de f´ ormulas proposicionales at´ omicas.U.´ Y CLAUSURAS CAP´ ITULO 6. 2. →. ϕ→ . R1 . Demuestre este principio de inducci´ on a partir del principio de inducci´ on simple. y de adaptar esto a otros objetos definidos como clausuras. podemos formular el siguiente “Principio de inducci´ on estructural”: Sea U un conjunto constru´ ıdo como U = C (A. Vimos que los n´ umeros naturales son la clausura del conjunto {∅} bajo la funci´ on sucesor. es verdadero para todo x ∈ A. xni . y las relaciones Ri son relaciones en A. ↔. Ejemplo: l´ ogica proposicional Consideremos el lenguaje de todas las f´ ormulas de la l´ ogica proposicional. y que contiene s´ olo conectivos de C .4. . R2 . Rn ) satisfacen una cierta propiedad? Podemos usar una variante de inducci´ on. . 57 P. As´ ı. Para i ≥ 0. ∨. . . 6. } el conjunto de todos los s´ ımbolos que pueden aparecer en una f´ ormula proposicional (podr´ ıamos considerar otros conectivos binarios). Inducci´ on Estructural ¿C´ omo demostrar que todos los elementos de C (A. 2004 .1. decimos que ´ este es completo si para toda proposici´ on ϕ existe una proposici´ on ϕ ⇔ ϕ. R2 . . Demuestre que toda proposici´ on l´ ogica tiene la misma cantidad de par´ entesis izquierdos que derechos. x2 . R2 . con “ariedades” ni + 1 respectivamente. y ) ∈ Ri . xni ∈ U . . y —para cada conectivo binario — se tiene ϕ (P. Q) = (P Q). . . ϕ∧ .3. ϕ↔ . .4. 6. x2 . Esto nos da la idea de presentar el principio de inducci´ on en t´ erminos de las capas de la construcci´ on de clausura de los naturales. R1 . Si P (x) es un predicado que: 1. .4. R1 . R2 . Chile. INDUCCION ´ ESTRUCTURAL 6. Rn ). que esencialmente se reduce a hacer inducci´ on sobre los Si (o sobre los Ci ). . ϕ∨ . Rn ) = i=0 Ci . . .1. c Luis Dissett. 6. donde ϕ¬ (P ) = (¬P ). Ejemplo. Ejercicio.C. . es verdadero para todo y ∈ U tal que (x1 . . (donde la uni´ on es disjunta). . . donde A es un conjunto base . . . . ¬.2. Este lenguaje puede ser considerado como la clausura del conjunto de proposiciones at´ omicas bajo las funciones ϕ¬ . . decimos que los Ci son las capas de C (A. y cada vez que es verdadero para x1 . . ¿C´ omo aprovechar esta definici´ on para demostrar propiedades de las proposici´ ones l´ ogicas? Ejemplo. . El conjunto {¬. Capas ∞ Definimos C0 = S0 = A. . y sea Σ = F0 ∪{(. Como C (A. ∨} es completo Demostraci´ on. INDUCCION 6. ). entonces P (x) es verdadero para todo x ∈ U . 3. E¬ . tomando ϕ = ϕ se tiene ϕ ∈ F y ϕ ⇔ ϕ. Formalmente. ϕ2 ⇔ ϕ2 . si ϕ es at´ omica). ϕ2 ∈ F tales que ϕ1 ⇔ ϕ1 . y para cada conectivo binario ∈ {∧. ϕ = (¬ϕ1 ∨ ϕ2 ) ⇔ (ϕ1 → ϕ2 ) ⇔ (ϕ1 → ϕ2 ) = ϕ. E¬ . }. y as´ ı para cada conectivo binario. ϕ2 ⇔ ϕ2 . Ejercicio. . E∧ ). ϕ2 ∈ F tales que ϕ1 ⇔ ϕ1 . ↔. en cada uno de los siguientes casos: ϕ = (¬ϕ1 ): por HI. Para ello. E∧ . Debemos demostrar que se cumple P ((¬ϕ1 )). definiremos el conjunto F como el conjunto de todas las f´ ormulas proposicionales que se pueden formar con conectivos tomados de {¬. ϕ2 ⇔ ϕ2 . As´ ı. ψ ) = (ϕ ψ ). ϕ = (¬ϕ1 ) ⇔ (¬ϕ1 ) = ϕ. entonces claramente. ϕ2 ∈ F tales que ϕ1 ⇔ ϕ1 . . 6.U. P ((ϕ1 → ϕ2 )). . .´ ESTRUCTURAL 6. Probaremos por inducci´ on estructural que. }. E∨ . INDUCCION Sea E¬ : Σ∗ → Σ∗ dada por E¬ (ϕ) = (¬ϕ). En efecto: probaremos que se cumple P (ϕ). Formalmente. P ((ϕ1 ∨ϕ2 )). ∧}. →. ϕ = (ϕ1 ∧ ϕ2 ) ⇔ (ϕ1 ∧ ϕ2 ) = ϕ.4. Chile. 58 P. c Luis Dissett. ∧} es un conjunto completo.C. Otro conjunto completo Demostraremos que {¬. E¬ . Paso inductivo Supongamos que se tienen dos f´ ormulas ϕ1 . Base: si ϕ ∈ F0 (o sea. existe ϕ1 ∈ F tal que ϕ1 ⇔ ϕ1 . P (ϕ) se cumple para ϕ ∈ F0 . ∧. existen ϕ1 . ∧. Complete la demostraci´ on con cada uno de los posibles conectivos binarios faltantes. etc. As´ ı. F = C (F0 . se cumple el siguiente predicado: P (ϕ) : existe una f´ ormula proposicional ϕ ∈ F tal que ϕ ⇔ ϕ. ϕ = (ϕ1 → ϕ2 ): por HI. ∨}. para toda f´ ormula proposicional ϕ ∈ F . →. . ∨. Definiremos ahora el conjunto F de todas las f´ ormulas proposicionales que se pueden formar con conectivos tomados de {¬. . ∨. P ((ϕ1 ↔ ϕ2 )). ϕ = (ϕ1 ∨ ϕ2 ): por HI. ) el conjunto de todas las f´ ormulas proposicionales que se pueden formar con conectivos tomados de {¬. Probaremos por inducci´ on estructural que. 2004 . sea E : Σ∗ × Σ∗ → Σ∗ dada por E (ϕ. As´ ı. E∨ ). Pregunta: ¿Por qu´ e basta probar P (ϕ ) para todo ϕ ∈ F ? (probar P (ϕ) para todo ϕ ∈ F ser´ ıa m´ as trabajo). E↔ . P ((ϕ1 ∧ϕ2 )). ↔. . se cumple el siguiente predicado: P (ϕ ) : existe una f´ ormula proposicional ϕ ∈ F tal que ϕ ⇔ ϕ . Sea F = C (F0 . F = C (F0 .4. E∧ . . O sea. ϕ = (ϕ1 ∧ ϕ2 ): por HI. . INDUCCION ´ Y CLAUSURAS CAP´ ITULO 6. existen ϕ1 . As´ ı. E→ . existen ϕ1 . ϕ2 ∈ F tales que se cumple P (ϕ1 ) y P (ϕ2 ). ϕ = (ϕ1 ∨ ϕ2 ) ⇔ (ϕ1 ∨ ϕ2 ) = ϕ. para toda f´ ormula proposicional ϕ ∈ F . Formalmente.4. As´ ı. ϕ2 ⇔ ϕ2 .4. ∨. Complete la demostraci´ on. 2004 .´ Y CLAUSURAS CAP´ ITULO 6. →. 3. INDUCCION Base: si ϕ ∈ F0 (o sea. P (ϕ ) se cumple para ϕ ∈ F0 . Ilustraremos esto con un ejemplo. ∨. Ejercicio. E→ . →. Debemos demostrar que se cumple P ((¬ϕ1 )). ↔} no es completo. c Luis Dissett. ı. tomando ϕ = ϕ se tiene ϕ ∈ F y ϕ ⇔ ϕ . y probaremos que toda f´ ormula de H se hace verdadera en la asignaci´ on de verdad que hace verdaderas a todas las proposiciones at´ omicas. existen ϕ1 . existen ϕ1 .C. El conjunto {∧. Es posible probar por inducci´ on estructural que. pero que existen proposiciones que no la satisfacen. Ejemplo. ∧} es completo ´ ESTRUCTURAL 6. 6. 4. En efecto: probaremos que se cumple P (ϕ ). Demuestre que {¬. Tambi´ en es posible probar que existe una f´ ormula ψ ∈ F que no satisface P (ψ ). Paso inductivo: Supongamos que se tienen dos f´ ormulas ϕ1 . Para demostrar esto. Chile. ∨} es un conjunto completo de conectivos. ⊕} no es completo (el conectivo ⊕ es “o excluyente”). si ϕ es at´ omica). Demuestre que {∧. E∧ . entonces claramente. Demuestre que {¬. ϕ = (ϕ1 ∧ ϕ2 ): por HI. H = C (F0 . E↔ ). 2. O sea. →} es un conjunto completo de conectivos. As´ ı. Ejercicios. ϕ = (ϕ1 ∨ ϕ2 ): por HI. ∧} es un conjunto completo de conectivos.4. ninguna f´ ormula ϕ ∈ H es equivalente a ψ . ↔}. →} no es un conjunto de conectivos.U. se cumple el siguiente predicado: P (ϕ) : σ0 (ϕ) = 1. As´ ı. y definimos σ0 como la asignaci´ on de verdad que hace verdaderas a todas las f´ ormulas at´ omicas. 1. Demuestre que {¬. ϕ2 ∈ F tales que ϕ1 ⇔ ϕ1 . ∨. As´ ϕ = (ϕ1 ∧ ϕ2 ) ⇔ (ϕ1 ∧ ϕ2 ) = ϕ . ϕ2 ∈ F tales que se cumple P (ϕ1 ) y P (ϕ2 ). ϕ2 ⇔ ϕ2 . ϕ2 ∈ F tales que ϕ1 ⇔ ϕ1 . INDUCCION Demostraci´ on de que {¬. Demuestre que el conjunto de conectivos {¬. ϕ = (¬((¬ϕ1 ) ∧ (¬ϕ2 ))) ⇔ (ϕ1 ∨ ϕ2 ) ⇔ (ϕ1 ∨ ϕ2 ) = ϕ . ϕ = (¬ϕ1 ) ⇔ (¬ϕ1 ) = ϕ . Conjuntos no completos ¿C´ omo demostrar que un conjunto de conectivos no es completo ? Una posibilidad es probar que todas las proposiciones que se pueden formar con ese conjunto satisfacen alguna propiedad com´ un. en cada uno de los siguientes casos: ϕ = (¬ϕ1 ): por HI. 59 P. existe ϕ1 ∈ F tal que ϕ1 ⇔ ϕ1 . Ejercicio. E∨ . definiremos el conjunto H como el conjunto de todas las f´ ormulas proposicionales que se pueden formar con conectivos tomados de {∧. para toda f´ ormula proposicional ϕ ∈ H. P ((ϕ1 ∧ ϕ2 )) y P ((ϕ1 ∨ ϕ2 )). 4.C. Chile. 2004 . INDUCCION c Luis Dissett. INDUCCION ´ Y CLAUSURAS CAP´ ITULO 6.´ ESTRUCTURAL 6. 60 P.U. nos interesa probar que ´ este es correcto . 61 . que E decrece estrictamente con cada iteraci´ on. y en el invariante del loop enunciamos relaciones entre los distintos valores de las variables en dicho punto. Para ello. En particular. que llamamos correcci´ on parcial y terminaci´ on: Correcci´ on Parcial: si el programa termina. generalmente se demuestra que una cierta condici´ on (el llamado invariante del loop o invariante de los loops ) se cumple siempre en los distintos momentos en que la ejecuci´ on del algoritmo se encuentra en un mismo punto del loop (generalmente al principio o al final. denotamos por vi al valor de dicha variable en el momento en que se alcanza el punto designado en el loop durante (o despu´ es de) la iteraci´ on i-´ esima. Para demostrar terminaci´ on de un algoritmo iterativo. Terminaci´ on: el programa se detiene.1.Cap´ ıtulo 7 Correcci´ on de programas Dado un programa o algoritmo P . Al lema que afirma que esta condici´ on efectivamente es un invariante para todo n´ umero de iteraciones. Generalmente. es decir. y que existe k ∈ Z tal que ∀i ∈ N(Ei ≥ k ) (o sea. que {Ei : i ∈ N} es un conjunto acotado inferiormente) entonces podremos concluir que efectivamente el algoritmo debe terminar. nos interesa probar que. Correcci´ on de programas iterativos Supongamos que queremos demostrar que un programa no recursivo (o sea. para cada variable v que aparece en el algoritmo. y como consecuencia de ´ este deducimos la correcci´ on parcial. por lo que nos centramos en este caso. Estudiamos dos tipos de demostraci´ on de correcci´ on de programas: programas iterativos y programas recursivos . uno en que no hay llamadas recursivas de un algoritmo a s´ ı mismo) es correcto. La u ´nica dificultad proviene de la posibilidad de que el programa contenga loops (iteraciones). 7. si se satisfacen ciertas precondiciones (proposiciones que involucran algunas variables del programa) entonces el programa termina y se satisfacen ciertas postcondiciones . Llamando Ei al valor de E tras i iteraciones del algoritmo. generalmente consideramos una expresi´ on entera E cuyo valor va cambiando con cada iteraci´ on del algoritmo. Para demostrar que un algoritmo iterativo es parcialmente correcto. pero no necesariamente). entonces se satisfacen las postcondiciones. dividimos la demostraci´ on de que un programa iterativo es correcto en dos tareas independientes. que satisface ciertas especificaciones . si logramos demostrar que Ei+1 < Ei para todo i (o sea. la llamamos el lema del invariante . probaremos que el algoritmo efectivamente termina. CORRECCION CAP´ ITULO 7. M´ as formalmente: demostramos el siguiente lema: Lema. Si no hay una iteraci´ on n + 1.1. eliminar el primer elemento de f1 10: end while 11: while ¬eof (f2 ) do 12: Copiar el primer elemento de f2 al final de f . ordenados crecientemente. y tratemos de demostralo para i = n + 1. y f = ∅ Postcondici´ on: f contiene los mismos elementos que originalmente conten´ ıan f1 y f2 . sean fi .1. y ∈ f1i ∪ f2i (x ≤ y ).C.U. despu´ es de i iteraciones: fi ∪ f1i ∪ f2i = f10 ∪ f20 . fi est´ a ordenado en orden creciente. Ejemplo: mezcla de dos archivos Consideremos el siguiente algoritmo.´ DE PROGRAMAS ITERATIVOS ´ DE PROGRAMAS 7. 62 P. y dados x ∈ fi e y ∈ f1i ∪ f2i . Para todo i ∈ N. por lo que supondremos que s´ ı la hay. y produce un nuevo archivo f que contiene todos los elementos de f1 y f2 . CORRECCION 7. en orden. Para demostrar que este algoritmo es parcialmente correcto respecto a este par de condiciones. Note que tenemos un solo invariante para los tres loops. Hay cuatro casos: c Luis Dissett. el resultado es obvio. Hacemos esta demostraci´ on por inducci´ on sobre i: Base: que el invariante es verdadero para i = 0 es claro. eliminar el primer elemento de f1 4: else 5: copiar el primer elemento de f2 al final de f . f ) 1: while ¬eof (f1 ) ∧ ¬eof (f2 ) do 2: if primer elemento de f1 < primer elemento de f2 then 3: copiar el primer elemento de f1 al final de f . Demostraci´ on de la correcci´ on parcial Para cada i ≥ 0. demostramos que. eliminar el primer elemento de f2 6: end if 7: end while 8: while ¬eof (f1 ) do 9: Copiar el primer elemento de f1 al final de f . Supongamos que el invariante se cumple para i = n. ordenados crecientemente Una vez demostrada la correcci´ on parcial. (7.1) La condici´ on (7. f1i y f2i los conjuntos de valores presentes en los distintos archivos tras haberse producido en total i iteraciones de los distintos loops. si en total los loops se ejecutan al menos i veces. 2004 . Algorithm 1 Mezcla(f1 . que toma dos archivos f1 y f2 .1.1) es nuestro “invariante de los loops”. entonces (fi ∪ f1i ∪ f2i = f10 ∪ f20 ) ∧ (fi est´ a ordenado en orden creciente) ∧ ∀x ∈ fi . se tiene x ≤ y . Demostraci´ on del lema del invariante. eliminar el primer elemento de f2 13: end while Demostraremos primero que el algoritmo de mezcla es parcialmente correcto respecto al siguiente par de condiciones: Precondici´ on: f1 y f2 est´ an ordenados crecientemente. Chile. f2 . cada uno de los loops debe terminar en alg´ un momento. y x es el menor elemento de f1i ∪ f2i . As´ ı. Como f1k = f2k = ∅ (debido a las condiciones de t´ ermino de los loops). consideramos la expresi´ on Ei = |f1i | + |f2i |. Si x es el primer elemento de f1i . se tiene fk = f10 ∪ f20 . entonces se debe realizar una iteraci´ on m´ as del primer loop. Esto concluye la demostraci´ on de la correcci´ on parcial. 2004 . Debido al Lema del invariante. Ei+1 < Ei . Adem´ as. f1i+1 = f1i − {x}. pero f1i lo es. Como el u ´nico otro elemento de fi+1 es x. . que todo elemento de f1i+1 ∪ f2i+1 ). n − 1}.C. si el algoritmo termina despu´ es de k iteraciones. la demostraci´ on es id´ entica a la anterior. Si f2i es no vac´ ıo. entonces fi+1 = fi ∪ {x}. que todo elemento de f1i+1 ∪ f2i+1 ). Postcondici´ on: El valor retornado por el programa es alg´ un t ∈ N tal que: o bien 1 ≤ t ≤ n ∧ A[t] = x (si existe al menos un t que satisfaga esta condici´ on). Por la tercera parte de la hip´ otesis de inducci´ on. de modo que. . se tiene que todos los elementos de fi+1 son ≤ que todos los elementos de f1i ∪ f2i (y por lo tanto. cada vez que se cumpla la siguiente precondici´ on .´ DE PROGRAMAS ´ DE PROGRAMAS ITERATIVOS CAP´ ITULO 7.2. si el tipo de dato es “string ”. Por la segunda parte del lema del invariante. ´ esta es siempre ≥ 0. todo elemento de fi es ≤ que todo elemento de f1i ∪ f2i (y por lo tanto. podr´ ıa ser orden lexicogr´ afico).U.1.. por lo que fi+1 ∪ f1i+1 ∪ f2i+1 = fi ∪ f1i ∪ f2i = f10 ∪ f20 . Claramente. 7. Finalmente. cambiando 1 por 2.y post-condici´ on.1. al terminar se tiene fk ∪ f1k ∪ f2k = f10 ∪ f20 . Otro ejemplo: b´ usqueda binaria Consideremos un tipo de dato T con un orden total (por ejemplo. pero f2i lo es. Ejercicio. Queremos escribir un programa que tome como argumentos un arreglo A (cuyos elementos son de tipo T ) y un elemento x de tipo T .n] est´ a ordenado . esta expresi´ on es estrictamente decreciente: como en cada iteraci´ on uno de los archivos pierde un elemento. CORRECCION 7. c Luis Dissett. f2i+1 = f2i . Probaremos que el siguiente programa es correcto respecto a este par de pre. Chile. y como fi est´ a ordenado en forma ascendente y x es agregado al final de fi para obtener fi+1 . Terminaci´ on Para demostrar que el algoritmo termina. se tiene que fi+1 est´ a ordenado en forma creciente. A[i] A[i + 1] para todo i ∈ {1. 63 P. todos los elementos de fi son ≤ x. CORRECCION Si f1i y f2i son no vac´ ıos. . . la demostraci´ on es similar a la anterior. o bien t = 0 (si no hay tal t). o sea. Sea x el menor entre los primeros elementos de f1i y f2i . termine satisfaciendo la postcondici´ on indicada: Precondici´ on: El arreglo A[1. fk est´ a ordenado. Si f1i es no vac´ ıo. Complete los detalles. BinSearch(A. si las precondiciones se cumplen antes de que el programa comience. CORRECCION CAP´ ITULO 7. retorna un entero t tal que 1 ≤ t ≤ n y A[t] = x si un tal t existe. Lema. n. n. . si no. Si l − f es impar. 2 2 Como f ≤ f + t < f + 2t = l. . se tiene f≤ f +l 2 < l. 64 P. x) retorna 0.U. sea vi el valor de v despu´ es de i iteraciones del loop WHILE. Correcci´ on parcial: si A es un arreglo ordenado de largo n ≥ 1. A[l]} . Previamente. entonces si BinSearch(A. Sea P (i) el siguiente predicado: c Luis Dissett.C. . Note que este lema no es nuestro lema del invariante . Demostraci´ on. Invariante del loop: Para cada variable v del programa y cada i ∈ N. 2. .´ DE PROGRAMAS ITERATIVOS ´ DE PROGRAMAS 7. n. entonces f +l f = f + l− = f + t = f + t. x) termina. digamos l − f = 2t + 1. l tales que f < l. . x) termina. CORRECCION Algorithm 2 BinSearch(A. entonces al final de cada iteraci´ on se cumple lo siguiente: 1 ≤ f ≤ l ≤ n. Si l − f es par. 2004 . A[n]} entonces x ∈ {A[f ]. necesitamos el siguiente lema: Lema. x) 1: f ← 1 2: l ← n 3: while f = l do l 4: m ← f+ 2 5: if A[m] ≥ x then 6: l←m 7: else 8: f ←m+1 9: end if 10: end while 11: if A[f ] = x then 12: return f 13: else 14: return 0 15: end if Demostraci´ on de la correcci´ on de BinSearch Demostramos: 1. n. digamos l − f = 2t > 0. . . Chile. se obtiene el resulrado deseado. . Dados dos enteros f. Correcci´ on parcial Demostraremos que. entonces f f +l = f + l− = f +t =f +t 2 2 con la misma conclusi´ on. y si x ∈ {A[1].1. entonces BinSearch(A. Terminaci´ on: si A es un arreglo ordenado de largo n ≥ 1. . CORRECCION 7. . . . . . A[lj ]}. A[lj ]}. Supongamos ahora que x ∈ {A[1]. A[lj ]} pero no en {A[mj +1 ]. debe tenerse x ∈ {A[mj +1 + 1]. . . . . . . . . . . . . As´ ı. A[mj +1 ]}. y si x ∈ {A[1]. 2. . Por la primera parte de P (j ). . por el programa. fj +1 = fj y lj +1 = mj +1 . Como (por el programa) fj +1 = fj y lj +1 = mj +1 . entonces al terminar se cumple la postcondici´ on. . Por lo tanto x ∈ {A[1]. que es lo que quer´ ıamos. Por el lema del invariante del loop. . se tiene x ∈ {A[fj +1 ]. La primera parte de P (0) es verdadera gracias a que n ≥ 1 (precondici´ on). . 1 ≤ fj ≤ lj ≤ n. . A[lj ]}. A[n]}. . A[lj +1 ]}. . . A[lj +1 ]}. Ya que x est´ a en {A[fj ]. debe tenerse fj +1 = fj y lj +1 = mj +1 . entonces: 1. . 1 ≤ fk ≤ n. y si x ∈ {A[1]. A[mj +1 ]}. Debido al programa. Ya que x est´ a en {A[fj ]. . y por la primera parte de P (k ). . . Supongamos que el programa termina. . . Entonces (por la condici´ on de t´ ermino del loop) fj < lj y por lo tanto (gracias al Lema) fj ≤ mj +1 < lj . . Ya que A est´ a ordenado. . . . . Hay dos casos: 1. x ∈ {A[fk ]. A[mj +1 ] > x. A[n]}. digamos k . .U. 2004 c Luis Dissett. En este caso. . entonces P (j + 1) es trivialmente cierto. .´ DE PROGRAMAS ´ DE PROGRAMAS ITERATIVOS CAP´ ITULO 7. A[t] < x para todo t tal que fj ≤ t ≤ mj +1 . y as´ ı. Hay alg´ un t tal que 1 ≤ t ≤ n tal que A[t] = x. . tras j iteraciones del loop se tiene P (j ). x ∈ {A[fj ]. entonces x ∈ {A[fi ]. .C. . que es lo que quer´ ıamos. entonces x ∈ {A[fj ]. Paso inductivo: Supongamos que. Supongamos que el loop tiene al menos j + 1 iteraciones. . . . ´ Esta es la primera parte de P (j + 1). Chile. obviamente x ∈ {A[fj +1 ]. . . Base: i = 0. fk = lk . 1 ≤ fi ≤ li ≤ n. CORRECCION P (i): si el loop tiene (al menos) i iteraciones. . . . A[lj ]} pero no en {A[fj ]. . A[li ]} P (n) es verdadera para todo n ∈ N. . Como (por el programa) fj +1 = mj +1 + 1 y lj +1 = lj . Hay tres casos: A[mj +1 ] = x. . el loop se ejecuta una cantidad finita de veces. junto con la primera parte de la HI tenemos 1 ≤ fj +1 ≤ lj +1 ≤ n. . . A[lj +1 ]}. . Pero el valor retornado es precisamente fk . x = A[fk ]. 1. Por la condici´ on de t´ ermino del loop. . debe tenerse x ∈ {A[fj ]. . o bien fj +1 = mj +1 + 1 y lj +1 = lj . . A[n]}. l0 = n. Tenemos f0 = 1. . . ya que A est´ a ordenado. . se tiene x ∈ {A[fj +1 ]. o sea. o sea. A[mj +1 ] < x. En este caso. . . . A[n]}. Conclusi´ on: Nos falta probar que si se cumplen las precondiciones y el programa termina. . Debemos probar que x ∈ {A[fj +1 ]. La segunda parte de P (0) es trivialmente verdadera. A[lj +1 ]}. En cualquiera de los dos casos. A[lj ]} Si el programa termina tras j iteraciones. . .1. Demostraci´ on. que es lo que requiere la postcondici´ on en este caso. 2. . . Hemos probado el lema del invariante del loop. A[t] > x para todo t tal que mj +1 ≤ t ≤ lj . A[lk ]}. La haremos por inducci´ on en n. . 65 P. ´ DE PROGRAMAS RECURSIVOS ´ DE PROGRAMAS 7.2. CORRECCION CAP´ ITULO 7. CORRECCION 2. Para todo t tal que 1 ≤ t ≤ n, se tiene A[t] = x. Por la primera parte de P (k ), 1 ≤ fk ≤ n, y por lo tanto A[fk ] = x. As´ ı, el programa retorna 0, que es lo que requiere la postcondici´ on en este caso. Terminaci´ on En general, para demostrar que un loop termina, buscamos una expresi´ on entera E en t´ erminos de las variables del programa, que no es nunca negativa y que decrece en cada iteraci´ on. Por ejemplo, para demostrar que BinSearch(A, n, x) termina, consideramos E = l − f . Claramente: Ej = lj − fj ≥ 0, gracias al lema del invariante del loop, y Ej +1 < Ej , ya que o bien Ej +1 = lj − fj ). fj +lj 2 − fj < lj − fj , o bien Ej +1 = lj − fj +lj 2 +1 < Note que, en el fondo, estamos usando el Principio del Buen Orden : el conjunto S = {E0 , E1 , E2 , . . . } es un subconjunto no vac´ ıo de los naturales, y por lo tanto tiene un “primer elemento” Ek . Como Ei decrece estrictamente en cada pasada, el loop se ejecuta exactamente k veces (si no, existir´ ıa Ek+1 < Ek lo que ser´ ıa una contradicci´ on). 7.2. Correcci´ on de programas recursivos Hemos aprendido a demostrar que un programa basado en un loop es correcto. ¿Qu´ e hacer para demostrar que un programa recursivo es correcto? Ejemplo: Mergesort Considere el algoritmo RecMergeSort que se presenta a continuaci´ on. RecMergeSort ordena los elementos del arreglo A entre las posiciones 1 y n. Para esto llama al algoritmo recursivo AuxRecMergeSort, que ordena el arreglo entre los valores A[f ] y A[l]. Algorithm 3 RecMergeSort(A, f, l) AuxRecMergeSort(A, f, l) 1: if f < l then l 2: m ← f+ 2 3: AuxRecMergeSort(A, f, m) 4: AuxRecMergeSort(A, m + 1, l) 5: Mezclar(A[f . . . m], A[m + 1 . . . l], A[f . . . l]) 6: end if RecMergeSort(A, n) 1: returnAuxRecMergeSort(A, 1, n) Correcci´ on del algoritmo Para demostrar que RecMergeSort correctamente ordena A entre los ´ ındices 1 y n, demostramos que para todo k ∈ N se satisface la siguiente afirmaci´ on: P (k ) : si l − f = k entonces AuxRecM ergeSort(A, f, l) ordena correctamente A[f ] . . . A[l]. Demostraci´ on. La demostraci´ on de que ∀k ∈ N(P (k )) es por inducci´ on sobre k (segundo principio). Nuestra hip´ otesis de de inducci´ on es que ∀t ∈ N(0 ≤ t < k → P (t)). c Luis Dissett. 66 P.U.C. Chile, 2004 ´ DE PROGRAMAS ´ DE PROGRAMAS RECURSIVOS CAP´ ITULO 7. CORRECCION 7.2. CORRECCION En efecto: Base: si k = 0 entonces {A[f ] . . . A[l]} tiene un solo elemento, y como el algoritmo no hace nada en este caso, deja dicha porci´ on del arreglo ordenado. Paso inductivo l − m y t = f − (m + 1) son tales que 0 ≤ t, t < k , Sea k > 0. Entonces t = m − f = f + 2 por lo que (HI) tanto AuxRecMergeSort(A, f, m) como AuxRecMergeSort(A, m + 1, f ) correctamente ordenan los sub-arreglos A[f ] . . . A[m] y A[m + 1] . . . A[l]. As´ ı, AuxRecMergeSort(A, f, m), al realizar las dos llamadas recursivas, deja ordenados los sub-arreglos A[f ] . . . A[m] y A[m + 1] . . . A[l], e inmediatamente despu´ es llama a M ezclar con par´ ametros adecuados para dejar ordenada la porci´ on de arreglo A[f ] . . . A[l] (recuerde que demostramos que M ezclar correctamente mezcla dos archivos ordenados generando uno nuevo; es trivial adaptar dicho algoritmo, y dicha demostraci´ on, al caso en que se tienen arreglos en lugar de archivos). Ejemplo: Versi´ on recursiva de b´ usqueda binaria El siguiente algoritmo es una versi´ on recursiva del algoritmo de b´ usqueda binaria visto en la secci´ on anterior. De manera similar al ejemplo anterior, el algoritmo principal llama a un algoritmo auxiliar que hace el trabajo. Algorithm 4 BinSearch(A, n, x) AuxRecBinSearch(A, f, l, x) 1: if f = l then 2: if A[f ] = x then 3: return f 4: end if 5: return 0 6: end if f +l 7: m ← 2 8: if A[m] ≥ x then 9: returnAuxRecBinSearch(A, f, m, x) 10: else 11: returnAuxRecBinSearch(A, m + 1, l, x) 12: end if RecBinSearch(A, n, x) 1: returnAuxRecBinSearch(A, 1, n, x) Demostraci´ on de la correcci´ on de RecBinSearch Demostramos que, para todo i ∈ N, se cumple: P (i) : Si A satisface la precondici´ on y l − f = i entonces AuxRecBinSearch(A, f, l, x) termina y retorna alg´ un t tal que f ≤ t ≤ l y A[t] = x (si existe tal t) o 0, en caso contrario. Esto lo demostraremos por inducci´ on en i, usando PICV. Sea n ∈ N. Supongamos que se cumple P (k ) para todo k ∈ N, k < n. Hay dos casos: Base: Si n = l − f = 0, entonces l = f y el algoritmo termina. Si A[f ] = x entonces existe el t buscado (t = f ) y el algoritmo retorna f ; si A[f ] = x entonces no existe el t buscado y el algoritmo retorna 0. c Luis Dissett. 67 P.U.C. Chile, 2004 ´ DE PROGRAMAS RECURSIVOS ´ DE PROGRAMAS 7.2. CORRECCION CAP´ ITULO 7. CORRECCION Paso inductivo: Si n = l − f > 0 entonces el algoritmo no termina en el primer if, y debe realizar una llamada recursiva. Si A[m] ≥ x entonces hay dos subcasos: Si A[m] = x entonces claramente hay un t entre f y m tal que A[t] = x (a saber, t = m); como k = m − f < l − f = n se cumple P (k ), y por lo tanto la llamada recursiva AuxRecBinSearch(A, f, m, x) retornar´ a un t como el buscado (aunque no necesariamente t = m). Si A[m] > x entonces todo A[t] con m ≤ t ≤ l es > x, y por lo tanto, si existe t tal que f ≤ t ≤ l y A[t] = x, entonces debe tenerse f ≤ t ≤ m. Por lo tanto, si existe dicho t, es retornado por AuxRecBinSearch(A, f, m, x); y si no existe dicho t entonces esta llamada recursiva retorna 0. En cualquier caso, AuxRecBinSearch(A, f, l, x) retorna lo que debe para cumplir la postcondici´ on. Supongamos ahora que A[m] < x. Entonces (como A est´ a ordenado) todos los A[t] con f ≤ t ≤ m son < x. Por lo tanto, si existe t tal que f ≤ t ≤ l y A[t] = x, entonces debe tenerse m < t ≤ l. Por lo tanto, si existe dicho t, es retornado por AuxRecBinSearch(A, m + 1, l, x); y si no existe dicho t entonces esta llamada recursiva retorna 0. En cualquier caso, AuxRecBinSearch(A, f, l, x) retorna lo que debe para cumplir la postcondici´ on. Conclusi´ on ¿Hemos demostrado que la versi´ on recursiva de BinSearch es correcta? En realidad, falta demostrar que tras la llamada original AuxRecBinSearch(A, 1, n, x) se satisface la postcondici´ on. Pero esto es consecuencia de la propiedad demostrada, ya que es equivalente a P (n − 1). c Luis Dissett. 68 P.U.C. Chile, 2004 pero s´ ı es posible demostrar que la soluci´ on de la siguiente ecuaci´ on de recurrencia es una cota superior para Tom (): T (1) T (n) = c = T n 2 +T n 2 + dn. (8. donde d ≥ 0 es alguna constante. As´ ı. n ≥ 2. Queremos hallar cotas para esta ecuaci´ on. 69 .Cap´ ıtulo 8 Complejidad de algoritmos y programas 8. Conjetura: existe alguna constante a ≥ 0 tal que. en este caso. nuestra “inecuaci´ on de recurrencia” queda Tom (1) ≤ c Tom (n) ≤ Tom n 2 + Tom n 2 + dn. No tenemos una representaci´ on expl´ ıcita para la funci´ on de complejidad. Sea Tom (n) := tiempo de ejecuci´ on del algoritmoOM con un archivo de largo n (en el peor caso). (8. pero s´ ı dos restricciones que debe satisfacer: Tom (1) ≤ c Tom (n) ≤ Tom n 2 + Tom n 2 + TM (n).1. Nota: medimos el tiempo en t´ erminos de pasos b´ asicos. para todo n ≥ 1: T (n) ≤ a · n · log2 (n) . n ≥ 2. podemos suponer que TM (n) ≤ dn. .2) donde TM (n) es el tiempo que toma. (8.1) (8. En la ecuaci´ on anterior.5) (8. . pero no del tipo que asocia n con (n + 1) . An´ alisis de la complejidad de mergesort Nos interesa estudiar el tiempo que toma ordenar un archivo usando OM (ordenamiento por mezcla). las que consideramos de tiempo constante.3) (8. en el peor caso. y c es una constante que sirve de cota para el tiempo que mergesort se demora en ordenar una un archivo de largo 1. comparaciones de dos elementos. el algoritmo de mezcla M en mezclar dos archivos de largos que sumen n. n ≥ 2.6) Tenemos una ecuaci´ on de recurrencia.4) Es imposible resolver exactamente esta ecuaci´ on. o sea. entonces T (n) ≤ cn log2 (n) + to n. podemos probar por PSI o por PICV que. por ejemplo. si n es una potencia de 2. Al valor n0 ∈ N lo llamaremos el umbral . Demostraci´ on. por ejemplo. tenemos 3n2 + 5n + 6 ≤ 3n2 + n · n + n · n = 5n2 . Demuestre que siempre es posible usar un umbral n0 = 1. 1 Note que. por ejemplo si t(n) < 0 o incluso t(n) no est´ a definida para ciertos valores de n < n0 . Partiremos demostrando que la inducci´ on es cierta (y determinando las constantes a y b) si n es una potencia de 2. A veces abusaremos de la notaci´ on. encontraremos que la hip´ otesis de inducci´ on no nos permite demostrar el paso inductivo como debiera. por lo que intentamos replantearla como sigue: Conjetura’: existen algunas constantes a ≥ 0 y b ∈ R tales que. b = to ). si n ≥ 6. Concluimos que debe tenerse b ≥ to . Inducci´ on constructiva Si tratamos de demostrar nuestra conjetura por inducci´ on. Notaci´ on asint´ otica Una notaci´ on muy u ´til al estudiar el tiempo (u otros recursos. En efecto. Definimos O(f (n)) como el conjunto 1 o una funci´ + t : N → R+ 0 | (∃c ∈ R )(∃n0 ∈ N)(∀n ∈ N)(n ≥ n0 → t(n) ≤ c · f (n)) . para todo n ≥ 1: T (n) ≤ a · n · log2 (n) + bn. O tambi´ en c = 7. 2004 . Pero tambi´ en podemos satisfacerla tomando c = 14. Ejercicio. 70 P.3. c Luis Dissett. que T (n) ≤ T (n + 1) para todo n ≥ 1 (esto tambi´ en se hace por PICV). El siguiente paso es demostrar que T (n) es una funci´ on que no decrece. COMPLEJIDAD DE ALGORITMOS Y PROGRAMAS 8.´ CONSTRUCTIVA 8. vemos que. si n = 2k entonces T (n) ≤ a · n · k + bn.2. decimos g (n) ∈ O(f (n)).C. por lo que tomando c = 5 y n0 = 6 se satisface la definici´ on de O(n2 ). Chile. El proceso de demostraci´ on de la conjetura es relativamente largo. usamos el hecho de que n≤2 log2 (n) ≤2 log2 (n)+1 ≤2·2 log2 (n) para establecer la cota: como T (·) es no-decreciente. 8. partimos demostrando que. INDUCCION CAP´ ITULO 8. n = 2. a ≥ c (por lo que podemos escoger a = c. Veamos que 3n2 + 5n + 6 ∈ O(n2 ). Sea f : N → R+ on cualquiera. Ejemplo. n = 1. Finalmente.2. O sea.U. no g (n) = O(f (n)). memoria) es la notaci´ on “O grande”. T (n) ≤ T 2 · 2 log2 (n) log2 (n) ≤ 2 · c · 2 log2 (n) log2 (n) + 1 + 2to · 2 = 2 · 2 log2 (n) (c · log2 (n) + 1 + to ) ≤ (2c)n log2 (n) + 2(1 + to )n. Esto puede hacerse por PSI o por PICV. O sea. si n no es una potencia de 2. M´ as notaci´ on asint´ otica + t : N → R+ 0 | (∃c ∈ R )(∃n0 ∈ N)(∀n ∈ N)(n ≥ n0 → t(n) ≥ c · f (n)) . dados a y b dos n´ umeros reales cualesquiera mayores que 1. Demuestre que Θ(f (n)) es el conjunto de todas las funciones t : N → R+ 0 tales que (∃c1 . a2 . Demuestre que. cuando tengamos una funci´ on g (n) ∈ O(f (n) loga n) escribiremos simplemente g (n) ∈ O(f (n) log n). Como n ≤ n b b b b .4. Definimos Ω(f (n)) como el conjunto o una funci´ Finalmente. de donde se deduce la condici´ on n ≥ b− 1. c y d son constantes positivas.5. Pero esto es equivalente a exigir que n + b ≤ nb.1. si a = bd . PROGRAMAS MAS 8. Visto desde el punto de vista algor´ ıtmico. O sea. 1 que aparece en la ecuaci´ Para que la recurrencia corresponda a una funci´ on correctamente definida. 2004 . si la recurrencia corresponde a un algoritmo recursivo correcto. si a1 .5. El teorema fundamental de los algoritmos “divide et regna ” Es posible demostrar que. o lo que es lo b mismo. 8. COMPLEJIDAD DE ALGORITMOS Y 8. Sea f : N → R+ on cualquiera. Ejercicio. la misma demostraci´ on puede ser adaptada para demostrar que Tom (n) ∈ Θ(n log2 (n)). se tiene:  d  Θ(n ) T (n) ∈ Θ(nd log n)   Θ(nlogb a ) si a < bd . b.4. por lo que basta que + 1 ≤ n para que n b b b b b < n. b b b−1 entonces (llamando a = a1 + a2 ). Ejemplo.U. que nb − n ≥ b. y f : N → R+ una funci´ o n cualquiera. las invocaciones recursivas de la funci´ on deben tener por argumentos a n´ umeros estrictamente menores que n. basta exigir que n n n n < n . es necesario que ninguna llamada recursiva (cuando se est´ a resolviendo una instancia de tama˜ no n) se haga sobre una instancia de tama˜ no ≥ n. Chile.´ NOTACION ´ ASINTOTICA ´ CAP´ ITULO 8. si 0 ≤ n < b − 1 T (n) = b  a1 T n + a2 T ( n ) + cnd si n ≥ . En realidad. si a > bd .C. exigimos que b + 1 ≤ n. n As´ ı. c Luis Dissett. se requiere que tanto n < n como n < n. 8. se tiene: 0 O(f (n) loga n) = O(f (n) logb n) (y lo mismo vale para Ω y Θ). ¿Por qu´ e el umbral b ? b−1 b Pasamos a explicar el por qu´ e del valor b− on. definimos Θ(f (n)) como: Θ(f (n)) = O(f (n)) ∩ Ω(f (n)). c2 ∈ R+ )(∃n0 ∈ N)(∀n ∈ N)(n ≥ n0 → c1 f (n) ≤ t(n) ≤ c2 f (n)). 71 P. Ejercicio. Hemos probado que Tom (n) ∈ O(n log2 (n)). ya que la base es irrelevante. As´ ı. Pero se sabe que < + 1. y T (n) satisface la ecuaci´ on de recurrencia  b  c0 . parte entera) o que sea expresable como combinaci´ on de una peque˜ a cantidad de ´ estas. As´ ı. de preferencia.6. 8. 8. 2004 .6. en un curso de Estructuras de Datos) que. decimos que el problema de ordenar un arreglo tiene complejidad Θ(n log n). llamamos la complejidad de π a la funci´ on Tπ : N → R+ 0 dada por Ejemplo. Problemas solubles eficientemente Nos interesa estudiar qu´ e problemas pueden se resueltos eficientemente. consideraremos que un problema es “soluble eficientemente” si puede ser resuelto en tiempo polinomial.001n ser´ a. Generalmente. dado cualquier algoritmo de ordenaci´ on basado en comparaciones.C. en la pr´ actica. Se puede demostrar (t´ ıpicamente visto. tiene un exponente muy grande). si existe un polinomio p(n) tal que TA (n) ∈ O(p(n)). nos interesa estudiar la funci´ on TA : N → R+ 0 que indica el tiempo que toma A en resolver instancias de tama˜ no n. Heapsort o Mergesort ). esto es relativo: un algoritmo exponencial con complejidad T (n) = 3 · 1. logaritmo. como existen algoritmos para ordenar basados en comparaciones con complejidad Θ(n log n) (por ejemplo. 72 P. Chile.U.8. en la pr´ actica. Note que. Pero como regla general. tal que TA (n) ∈ Θ(f (n))). mucho mejor que un algoritmo de complejidad T (n) = 100000000000n3 (constante demasiado grande) o T (n) = 2n40 (que aunque tiene una constante peque˜ na.7. su complejidad es por lo menos Ω(n log n). c Luis Dissett. o sea. Complejidad de un algoritmo Dado un algoritmo A. En t´ erminos te´ oricos.´ 8. COMPLEJIDAD DE ALGORITMOS Y PROGRAMAS 8. Complejidad de un problema Tπ (n) = m´ ın {TA (n) : A es un algoritmo que resuelve π } . Por “funci´ on simple” entendemos una funci´ on “elemental” (potencia. Dado un problema π . COMPLEJIDAD CAP DE UN ITULO ALGORITMO 8. por ejemplo. decimos que un problema puede ser resuelto eficientemente si existe un algoritmo A que lo resuelve en tiempo polinomial . no nos interesa encontrar la funci´ on espec´ ıfica sino hallar una funci´ on “simple” f (n) tal que TA (n) ∈ O(f (n)) (o. 1. conectadas entre ellas —y con las orillas— por siete puentes. 73 . Los habitantes de K¨ onigsberg se preguntaban si era posible recorrer todos los puentes de la ciudad.Cap´ ıtulo 9 Grafos 9. en la ciudad de K¨ onigsberg (hoy Khaliningrado). el que daba lugar a dos islas. Motivaci´ on: los puentes de K¨ onigsberg La Teor´ ıa de Grafos naci´ o el a˜ no 1736. sin repetir ninguno. La ciudad era atravesada por el r´ ıo Pregel. Generalmente un grafo es dibujado en forma tal que cada v´ ertice queda representado por un punto en el plano. Antes de entrar a estudiar en detalle ´ este y otros problemas. Euler dio origen a la Teor´ ıa de Grafos . y donde cada arista es i de la forma e = {x. Una arista se dice incidente en sus extremos. c Luis Dissett. Leonhardt Euler resolvi´ o este problema. definiremos algunos conceptos b´ asicos del ´ area.2. y } con x.´ 9.1. si e = {x}) diremos que e es un lazo o rizo (en ingl´ es. Los elementos de una arista e son llamados sus extremos . 9. puede tener elementos repetidos). Si e = {x. y cada arista por una curva que une los representantes de sus extremos. E ) tal que E es un multiconjunto (o sea. Definiciones b´ asicas Definici´ on 33. E ) donde V es un conjunto (cuyos elementos son llamados v´ ertices ) y E es otro conjunto (o multiconjunto ). trataremos de dar el nombre equivalente en ingl´ es.2. y } con x = y (o sea. y ∈ V . Un grafo G es un par (V. incluso m´ as simple a´ un: D B C A D Al resolver este problema. 74 P. 1 En general. Multigrafos. GRAFOS En 1736. 2004 . a menos que ´ este sea obvio. considerando la siguiente versi´ on simplificada de ´ este: C A O. cuyos elementos son llamados aristas . diremos que G es un multigrafo . DEFINICIONES BASICAS CAP´ ITULO 9. Las aristas que tienen los mismos extremos son llamadas aristas m´ ultiples . Chile. despue´ es de dar el nombre de un concepto.C.2. loop 1 ).U. B 9. grafos simples Si consideramos un grafo G = (V. anotamos e = uv (o e = vu). . v ∈V Teorema. supondremos que todos los grafos son simples. .1. E ) un grafo sin lazos2 . 9. y lo denotamos grado(v ).CAP´ ITULO 9. Un grafo G se dice finito si tanto V (G) como E (G) son finitos. 9. . 2004 . Un v´ ertice que no tiene vecinos se dice aislado .2. 75 P. si G = (V. Un grafo no nulo G se dice trivial si no tiene aristas. Nota: los lazos de la forma {v } son contados como dos aristas al calcular grado(v ). ∅). em } sus conjuntos de v´ ertices y aristas. E ) no tiene lazos ni aristas m´ ultiples. la cantidad de v´ ertices de grado impar es par. v´ ertices aislados Definici´ on 35. GRADOS. As´ ı. por ejemplo. en un programa un grafo es representado en memoria usando o su matriz de adyacencia o un arreglo de listas de adyacencia (donde cada v´ ertice tiene una lista ligada con cada uno de los v´ ertices vecinos). vn }.x Teorema. 9. Convenci´ on: en este curso todos los grafos son finitos. Dos v´ ertices u y v de un grafo son adyacentes (o cada uno es vecino del otro) sii ambos son extremos de una misma arista. las matrices de incidencia no son usadas computacionalmente.3. . con V = ∅.3. . ADYACENCIA. Desde ahora. si los extremos de una arista e son u y v . ∅) es llamado el grafo nulo. Matrices de adyacencia e incidencia Definici´ on 37. . La matriz de adyacencia de G es la matriz de n × n A(G) donde aij es el n´ umero de aristas que tienen a vi y a vj por extremos. . salvo que expl´ ıcitamente se indique lo contrario. a menos que especifiquemos lo contrario. c Luis Dissett.3. VERTICES AISLADOS Si G = (V. pero sirven como ayuda conceptual. La cantidad de aristas incidentes a un v´ ertice v es llamada el grado de v . En este caso escribimos u ↔ v . GRAFOS ´ 9.2. Grafos finitos Definici´ on 34. grados. Desde ahora. En general. un grafo es trivial si y s´ olo si todos sus v´ ertices son aislados. Comentario. y sean V = {v1 . Sea G = (V. es decir. . Definici´ on 36. En todo grafo. En un grafo simple.U.C. 0 si no. Adyacencia.2. E = {e1 . 2 Pero posiblemente con aristas m´ ultiples. En todo grafo. La matriz de incidencia de G es la matriz de n × m M (G) donde mij es 1 si vi es un extremo de ej . diremos que es un grafo simple . grado(v ) = 2 |E | .3. Chile. El grafo nulo y los grafos triviales El grafo G = (∅. 9. T´ ıpicamente. todos menci´ on a un grafo supondr´ a impl´ ıcitamente la condici´ on de que dicho grafo no es nulo. E ) tal que V ⊆ V y E ⊆ E . su complemento es el grafo G = (V. E ). 2004 . Si H = (V . E ) tal que ∀x.4. y } ∈ E ) (o sea. Propiedades estructurales.6. Nos interesa estudiar las propiedades estructurales de los grafos. en otras palabras. Subgrafos. Si G no es conexo se dice disconexo . Un subgrafo de un grafo G = (V. 76 P. E ) es un subgrafo de G = (V. El concepto central aqu´ ı es el de isomorfismo . Si existe un isomorfismo entre G y H decimos que ellos son isomorfos (lo que escribimos G∼ = H ). Dado un grafo simple G = (V. subgrafos inducidos Definici´ on 38. E ) es un grafo H = (V . Complemento de un grafo. Definici´ on 41. Un clique 3 en un grafo es un conjunto de v´ ertices mutuamente adyacentes. 9. Chile. Un conjunto independiente (o conjunto estable ) en un grafo es un conjunto de v´ ertices mutuamente no adyacentes.. una componente conexa de G es el conjunto de v´ ertices de alg´ un subgrafo conexo maximal de G. Definici´ on 40. SUBGRAFOS. Un grafo es conexo si cada par de v´ ertices en G pertenece a un camino en G. GRAFOS 9. Grafos conexos Definici´ on 39. decimos que “G contiene a H ”. O sea. c Luis Dissett. y ∈ V ({x. i. Un isomorfismo entre un grafo simple y s´ ı mismo es llamado un automorfismo . Note que U ⊆ V es un conjunto independiente en G si y s´ olo si U es un clique en G. 9. E ) es un subconjunto X de V tal que: • el subgrafo de G inducido por X es conexo. E ) es una biyecci´ on f : V → V tal que uv ∈ E ↔ f (u)f (v ) ∈ E .5. Un isomorfismo entre dos grafos simples G = (V. y • si X ⊆ V es tal que X X entonces el subgrafo de G inducido por X no es conexo.9. 3 Posibles traducciones al castellano ser´ ıan “banda” o “pandilla”.C.3. SUBGRAFOS INDUCIDOS CAP´ ITULO 9. dependen de los nombres que les demos a los v´ ertices y aristas.2.e.4. aquellas que no cambian si cambiamos los nombres de sus v´ ertices y sus aristas.U. si H tiene todas las aristas que se forman en G con v´ ertices de V ) entonces se dice que H es el subgrafo de G inducido por V . Cliques y conjuntos independientes. y } ∈ E ↔ {x. isomorfismo Las matrices de incidencia y adyacencia definidas anteriormente dependen del orden en que tomemos los v´ ertices y las aristas. E ) donde uv ∈ E sii uv ∈ / E. Una componente conexa de G = (V. 9. Si H es un subgrafo de G. y anotamos H ⊆ G. E ) y H = (V . simplemente se est´ a eligiendo un representante m´ as conveniente de la clase. te: Algunas clases importantes Le daremos nombres a los miembros de algunas clases de isomorfismo que aparecen com´ unmenEl camino y el ciclo con n v´ ertices son denotados por Pn y Cn respectivamente. Un grafo bipartito completo o biclique es un grafo simple bipartito donde dos v´ ertices son adyacentes sii est´ an en diferentes partes. 2004 . cuyos v´ ertices pueden ser ordenados de modo que dos v´ ertices son adyacentes sii son consecutivos en la lista. Denotamos este grafo por Kn . decir que “H es un subgrafo de G” significa que alg´ un subgrafo de G es isomorfo a H (tambi´ en se dice que G contiene una copia de H ). Nota: cuando se menciona un grafo sin nombrar expl´ ıcitamente sus v´ ertices. cuyos v´ ertices pueden ser puestos alrededor de un c´ ırculo de modo que dos v´ ertices son adyacentes sii son aparecen consecutivamente a lo largo del c´ ırculo. Un ciclo en un grafo G es un subgrafo de G isomorfo a alg´ un Cn . el u ´nico ciclo5 con n v´ ertices es denominado Cn . Caminos y ciclos Definici´ on 42. Cuando se dibuja un miembro particular de la clase de isomorfismo (para enfatizar alg´ un aspecto estructural). 77 P. isomorfismo.s . pero todav´ ıa se est´ a discutendo el mismo “grafo con v´ ertices an´ onimos”.7. Para cada n ≥ 3. GRAFOS ¿C´ omo chequear isomorfismo? 9. 4 Salvo 5 Salvo isomorfismo. Para cada n ≥ 2. c Luis Dissett. Clases de isomorfismo Teorema. las clases de isomorfismo corresponden a la idea de grafos con v´ ertices “an´ onimos”.1. Un camino (path) es un grafo simple. Informalmente. Un grafo completo es un grafo simple cuyos v´ ertices son todos adyacentes entre s´ ı. Chile. Un grafo sin ciclos es llamado (¡sorpresa!) ac´ ıclico. el u ´nico camino4 con n v´ ertices es denominado Pn .U. 9.6.6.7. en general nos referimos a su clase de isomorfismo. La relaci´ on de isomorfismo (entre los grafos simples) es una relaci´ on de equivalencia. a veces es posible mostrar una propiedad estructural no compartida entre los dos grafos (¡o entre sus complementos!). Un camino en un grafo G es un subgrafo de G isomorfo a alg´ un Pn . SUBGRAFOS Para mostrar isomorfismo entre dos grafos. Subgrafos T´ ecnicamente.C. 9. 9. Las clases de equivalencia determinadas por la relaci´ on de isomorfismo son llamadas clases de isomorfismo . Par mostrar que dos grafos no son isomorfos. Un ciclo es un grafo con el mismo n´ umero de aristas que de v´ ertices. Si los tama˜ nos de las partes son r y s. denotamos este grafo por Kr. Ejemplos. Definici´ on 43.CAP´ ITULO 9. generalmente es necesario dar expl´ ıcitamente la biyecci´ on que preserva incidencia. Un grafo ac´ ıclico conexo es llamado un a ´rbol .2. Los grafos con 4 v´ ertices n Hay 2( 2 ) grafos simples con n v´ ertices. el tri´ angulo. la humita (bowtie). Otros grafos comunes el volant´ ın (kite). isomorfos a su propio complemento. por ejemplo: c Luis Dissett. la pata (paw). o sea. de los cuales una (P4 ) corresponde a grafos auto-complementarios .3 .10. el grafo de Petersen. Estos grafos forman 11 clases de isomorfismos. . con n = 4 vemos que hay 64 grafos simples con 4 v´ ertices.U. La siguiente figura muestra estas 11 clases. el toro (bull).9. LOS GRAFOS CON 4 VERTICES Ejemplo.8. C3 es subgrafo de K5 pero no de K2.C. 9.´ 9. GRAFOS 9. la casa. la garra (claw). 2004 . As´ ı. Chile. 78 P. Grafos como modelos Los grafos sirven para modelar diversas situaciones. 9.8. CAP´ ITULO 9. el dardo. GRAFOS relaciones. Demostraci´ on. . y ∈ V ({x. supongamos que cada comisi´ on sesionar´ a exactamente una hora. . Chile. ¿Cu´ al es el n´ umero m´ ınimo de per´ ıodos de una hora que deben ser usadas en la programaci´ on? Idea: Esta situaci´ on puede ser modelada con un grafo en que los v´ ertices son las comisiones. Un concepto de teor´ ıa de grafos relacionado con esta situaci´ on es el siguiente: Definici´ on 44. o bien un conjunto independiente de tama˜ no k . coloraci´ on de mapas.3. y decimos que G ha sido “coloreado” o “pintado” con los colores {1. La misma idea se aplica si se desea programar los ex´ amenes de los cursos de una universidad peque˜ na. rutas en una red de caminos. . programaci´ on de reuniones de comisiones del Senado (o de los ex´ amenes en una universidad peque˜ na). 9.10. l ∈ N. 9. Para simplificar. Ejercicio. Este ejemplo est´ a relacionado con los concepto de coloraci´ on y n´ umero crom´ atico de un grafo: Definici´ on 45. c Luis Dissett. como por ejemplo “ser conocido de ”.C. 9. todo grafo con n v´ ertices tiene. . GRAFOS COMO MODELOS calificaci´ on de empleados para la realizaci´ on de distintas tareas.1. ´ Este es un caso particular de lo que se conoce con el nombre de Teorema de Ramsey . o bien tres desconocidos mutuos. 79 P. n} (donde n ∈ N). . y todas las tareas sean hechas por un empleado calificado? Idea: F´ ormese un grafo en que los empleados y las tareas son los v´ ertices. existe un natural n0 tal que. n} son llamados los “colores ” de la coloraci´ on. o bien un clique de tama˜ no k . El n´ umero crom´ atico χ(G) de un grafo G es qel menor n´ umero de colores que puede tener una coloraci´ on propia.10. Un grafo G es bipartito si V es la uni´ on de dos conjuntos independientes (llamados las partes de G). que afirma lo siguiente: Teorema (Ramsey). con el conjunto de empleados como una parte y las tareas como la otra. ¿Ser´ a posible asignar tareas a los empleados de modo que cada uno realice a lo m´ as una tarea. de modo que dos comisiones que tienen un miembro en com´ un no se reunan simult´ aneamente. E ) es una funci´ on c : V → {1.CAP´ ITULO 9. y donde una arista une al empleado x con la tarea t sii el empleado x est´ a calificado para desarrollar la tarea t.10. n}. . . de modo que dos cursos no tengan ex´ amenes simult´ aneos si tienen alumnos comunes. 9. Cada empleado puede realizar algunas (o incluso todas) las tareas. o bien tres conocidos mutuos.10. y } ∈ E → c(x) = c(y )).2. Si esta funci´ on es tal que ∀x. . . . Dados k. . Una coloraci´ on de un grafo G = (V. 2004 . . decimos que esta coloraci´ on es propia . Los n´ umeros {1. Conocidos mutuos y desconocidos mutuos Se puede demostrar (¡ejercicicio!) que en todo grupo de seis personas hay.U. Reuniones de comisiones del Senado Se desea programar las reuniones de varias comisiones del senado. y las aristas unen las comisiones que comparten miembros. dado cualquier n ≥ n0 . el grafo formado por los empleados y las tareas es bipartito. As´ ı. Asignaci´ on de tareas a distintos empleados Se tiene un conjunto de tareas y un conjunto de empleados. etc.10. Un grafo con un circuito Euleriano se dice grafo Euleriano . Chile. An´ alisis del problema de K¨ onigsberg (Euler) El problema de los puentes de K¨ onigsberg se puede expresar como sigue: ¿Tiene el grafo de la figura un camino (o circuito) que pase por cada arista exactamente una vez ? C A D B Un circuito con esta caracter´ ıstica se llama circuito Euleriano (en honor a Leonard Euler). Los v´ ertices son las intersecciones de caminos y las aristas son los tramos de caminos entre intersecciones. si un grafo G es k -partito entonces puede ser pintado con k (o m´ as) colores. Los grafos correspondientes a los mapas satisfacen la siguiente definici´ on: Definici´ on 47. decimos que un grafo G = (V.U.5. Supongamos que podemos recorrer las aristas de un grafo (los puentes de K¨ onigsberg) en la forma pedida. ANALISIS DEL PROBLEMA DE KONIGSBERG (EULER) CAP´ ITULO 9. Coloraci´ on de mapas Un caso particular del problema de coloraci´ on de grafos es el siguiente: ¿Cu´ antos colores se necesitan para pintar un mapa (dividido en regiones o pa´ ıses). de modo que no haya dos regiones con frontera com´ un pintadas del mismo color? Idea: Un mapa puede ser representado como un grafo.C.). Grafos multipartitos y coloraci´ on Definici´ on 46. E ) es k -partito si V es la uni´ on de k conjuntos independientes. ¿cu´ al es el camino m´ as corto entre el Apumanque y el Museo Interactivo Mirador? Un sitio web que resuelve este problema es http://www. 9. Vemos que. Un problema importante (y con mucha aplicaci´ on) en Teor´ ıa de Grafos es el de hallar el camino m´ as corto entre dos puntos. Rutas en una red de caminos Un grafo puede ser usado para modelar caminos entre distintos puntos de una red caminera (o el´ ectrica. 80 P. Un grafo es planar si puede ser dibujado en el plano de modo que sus aristas no se crucen. 2004 .´ ¨ 9. con las regiones como v´ ertices y donde regiones adyacentes son las que comparten un trozo de frontera. GRAFOS 9.11. Por ejemplo: en Santiago.11.4. Dado k > 1.mapcity.cl. y ordenemos el camino como sigue: c Luis Dissett. 9.10. o hidr´ aulica. Cada dibujo (con estas caracter´ ısticas) de un grafo es llamado grafo plano . 6 Se puede demostrar que el n´ umero de v´ ertices de grado impar en un grafo siempre es par. el camino debe salir una vez por cada vez que entra. 9. si el camino no es un circuito. los extremos del camino debe ser par. el camino no es un circuito) entonces la primera salida desde el v´ ertice inicial no es compensada por ninguna entrada. todo camino Euleriano debe ser un circuito.11. el grado de cualquier v´ ertice excepto. Si el grafo tiene dos v´ ertices de grado impar. ¿cu´ antos trazos son necesarios? Si en una figura hay 2n v´ ertices de grado impar6 entonces se necesitan exactamente n trazos para dibujarla. o sea. todo camino Euleriano debe comenzar en uno de ellos y terminar en el otro. la u ´ltima entrada en el v´ ertice final no es compensada por ninguna salida. 2004 . igual que los otros v´ ertices. CICLOS Y CAMINOS HAMILTONIANOS En cada v´ ertice que no es ni el inicial ni el final.2.12. no puede haber m´ as que dos v´ ertices de grado impar en el grafo.12.11. c Luis Dissett.1. Chile. sin levantar el l´ apiz del papel. los v´ ertices inicial y final deben tener grado impar. Asimismo. y puede comenzar en cualquier v´ ertice. An´ alisis del problema (Resumen) Para que un grafo sea Euleriano. Ciclos y caminos Hamiltonianos Dado un grafo G. ¿Qu´ e pasa con los v´ ertices extremos? Si los extremos no coinciden (o sea. 9. 9. GRAFOS 9. posiblemente. la primera salida y la u ´ltima entrada se compensan mutuamente. 81 P. Ejemplo: ¿cu´ ales de las siguientes figuras pueden ser dibujadas con s´ olo un trazo? M´ as a´ un: si no es posible dibujar una figura dada con un solo trazo. Si el camino es un circuito. As´ ı. un ciclo de G que pasa por todos los v´ ertices de G es llamado un ciclo Hamiltoniano . Dibujos sin levantar el l´ apiz Una variante muy conocida del problema de determinar si un grafo es Euleriano es el de dibujar una figura de un solo trazo. As´ ı.U. y el v´ ertice inicial/final tiene grado par.CAP´ ITULO 9. Si el grafo no tiene v´ ertices de grado impar.C. = 4 (m´ = 4 (m´ existe un grafo autocomplementario con n v´ ertices. el problema de hallar el ciclo Hamiltoniano de menor costo total es conocido como el problema del vendedor viajero (un problema cl´ asico de optimizaci´ on). hallar todos los cliques (o conjuntos independientes) de tama˜ no m´ aximo posible en G. entonces n = (m´ od n) o n − 1 ∼ od n). Un grafo es autocomplementario si es isomorfo a su propio complemento. = 4 (m´ M´ as a´ un: demuestre que para todo n ∈ Z+ tal que n ∼ od n) o n − 1 ∼ od n). P4 . y que un conjunto independiente es un subgrafo isomorfo a alg´ un grafo trivial Kn .14. Teorema. sin que se crucen las aristas? Ejemplo. 2004 . un camino de G que pasa por todos los v´ ertices de G es llamado un camino Hamiltoniano .13. Problemas computacionales relacionados con cliques y conjuntos independientes Vimos que un clique en un grafo es un subgrafo isomorfo a alg´ un grafo completo Kn . ¿Es posible unir tres casas a las distribuidoras de TV Cable.9. tel´ efono e Internet sin que se crucen los cables ? c Luis Dissett. Un grafo con un ciclo Hamiltoniano se dice Hamiltoniano.13. ¿tiene G un clique (o un conjunto independiente) de tama˜ no n? Dado un grafo G.U. Dado un grafo Hamiltoniano en el que cada arista tiene asociado un costo. Los siguientes problemas son importantes desde el punto de vista computacional: Dado un grafo G y un entero positivo n.C. Ejemplos de grafos autocomplementarios: C5 . Chile. 9. ¿cu´ al es el m´ aximo tama˜ no posible de un clique (o conjunto independiente) en G? Dado un grafo G. Planaridad ¿Puede un grafo ser dibujado en el plano. Un grafo simple G de n v´ ertices es auto-complementario sii Kn se descompone en dos copias de G. 9. Grafos autocomplementarios Definici´ on 48. ∼ 4 Ejercicio. 82 P. Dado un grafo G. 9. hallar un clique (o conjunto independiente) de tama˜ no m´ aximo posible en G. GRAFOS An´ alogamente. GRAFOS AUTOCOMPLEMENTARIOS CAP´ ITULO 9.15. Demuestre que si un grafo de n v´ ertices es autocomplementario. 9.1. La no planaridad de K5 y de K3. Sea G simple y con al menos 3 v´ ertices. o sea e ≤ 2n − 4. el nuevo n´ umero de aristas satisface la cota y por lo tanto el original tambi´ en). Una consecuencia particularmente u ´til es la siguiente: Teorema. estos grafos tienen demasiadas aristas para ser planares.CAP´ ITULO 9. e = e(G) y f = f (G). Ejemplos. Basta considerar el caso en que G es conexo (si no lo es. Pero el agregar estas k − 1 aristas no cambia la cantidad de caras en G. Si G es un grafo plano disconexo. An´ alogamente. 2004 . GRAFOS 9. entonces e(G) ≤ 3n(G) − 6. por lo que en este caso n − e + f = k + 1. de donde f 2e = i=1 l(Fi ) ≥ 3f = 3(e − n + 2). Demostraci´ on. Si adem´ as G no tiene tri´ angulos. Si G es un grafo plano conexo con n v´ ertices. e aristas y f caras.16. agr´ eguense aristas hasta que lo sea. entonces e(G) ≤ 2n(G) − 4. Como K3. c Luis Dissett. LA CARACTER´ ISTICA DE EULER 9. Demostraci´ on. 83 P. entonces n − e + f = 2. 1758).3 puede ser demostrada usando el teorema reci´ en visto: para K5 . Chile. de donde 2e ≥ 4(e − n +2). entonces hay que agregar k − 1 aristas para conectarlas todas y aplicar la f´ ormula original. Comentarios Las siguientes son algunas consecuencias de la f´ ormula de Euler: Debido a la f´ ormula de Euler. l(Fi ) ≥ 4.C. si G no tiene tri´ angulos. e = 10 > 9 = 3n − 6. la f´ ormula de Euler tal como est´ a no es v´ alida. de donde e ≤ 3n − 6.3 no tiene tri´ angulos y e = 9 > 8 = 2n − 4. cada cara tiene largo ≥ 3.16. La caracter´ ıstica de Euler Teorema (Euler. Por inducci´ on en n.U. y sean n = n(G).16. Si G es un grafo plano que adem´ as es simple y tiene m´ as de dos v´ ertices. Por ser G es simple y tener al menos 3 v´ ertices. todas las representaciones planas de un grafo G tienen el mismo n´ umero de caras. Si G tiene k componentes. la siguiente afirmaci´ on: Si G es un grafo Euleriano en que las aristas e y f tienen un extremo com´ un. Para k = 2 y k = 3. Demuestre que la relaci´ on ∼ = (definida como “G1 ∼ = G2 sii G1 es isomorfo a G2 ”) es una relaci´ on de equivalencia entre grafos. 4.U. 3. o d´ e un contraejemplo. 2004 c Luis Dissett. 6. Si G es un grafo Euleriano en que las aristas e y f tienen un extremo com´ un. 5.17. del menor ciclo sin diagonales). Un v´ ertice de un grafo es aislado si no tiene vecinos. 11.C. Ayuda: Forme un grafo y construya un ciclo Euleriano. 10. Demuestre que el grafo de Petersen no tiene ciclos de largo 10. si el di´ ametro de G es ≥ 4 entonces el di´ ametro de G Demuestre que un grafo G es bipartito si y s´ olo si G no tiene ciclos de largo impar. 15.9. si G es disconexo. excepto por 0101 y 1010. Ejercicios ¯ es conexo. o refute dando un contraejemplo. Ordene 7 ceros y 7 unos en forma c´ ıclica de modo que las 14 secuencias de 4 bits consecutivos que se forman sean todos las secuencias binarias de largo 4. Sea G un grafo con cintura 5. Demuestre. Chile. 12.17. Si un grafo no es conexo. entonces G El di´ ametro de un grafo es la m´ axima distancia (medida en n´ umero de aristas) entre sus v´ ertices. Sean G1 y G2 dos grafos. 8. entonces G tiene un circuito Euleriano en que e y f aparecen en forma consecutiva. y use las propiedades del grafo de Petersen para obtener una contradicci´ on. entonces su complemento tiene un v´ ertice aislado. La cintura de un grafo es el tama˜ no del menor ciclo inducido (o sea. Todo grafo Euleriano simple con un n´ umero par de v´ ertices tiene un n´ umero par de aristas. 7. 2. para cada una de las siguientes afirmaciones: a) b) c) Todo grafo Euleriano bipartito tiene un n´ umero par de aristas. Demuestre o refute la siguiente afirmaci´ on: Si un grafo simple con di´ ametro 2 tiene un v´ ertice de corte. = G2 sii G1 ∼ Demuestre que C5 ∼ = C5 . Demuestre que G1 ∼ = G2 . 9. Sea G un grafo simple. entonces G tiene por lo menos k 2 + 1 v´ ertices. 84 P. ¯ es ≤ 2. ¿qu´ e forma tendr´ a su matriz de adyacencia? Muestre todas las posibles matrices de adyacencia para P3 (un camino con 3 v´ ertices). . 1. Demuestre que. Ayuda: suponga que existe un ciclo de largo 10. GRAFOS 9. encuentre un grafo de cintura 5 y exactamente k 2 + 1 v´ ertices. Demuestre. Demuestre que. 14. 13. Demuestre que si todo v´ ertice de G tiene grado ≥ k . Un v´ ertice se dice de corte si su eliminaci´ on aumentar´ ıa la cantidad de componentes conexas del grafo. entonces G tiene un circuito Euleriano en que e y f aparecen en forma consecutiva. Escriba una matriz de incidencia para P6 (un camino con 6 v´ ertices) y para C6 (un ciclo con 6 v´ ertices). EJERCICIOS CAP´ ITULO 9. no completo (o sea.C. Sea G un grafo simple. G ∼ un n). ¿Cu´ antos automorfismos tiene Pn ? ¿Cu´ antos automorfismos tiene Cn ? Demuestre o refute mediante un contraejemplo: si G es un grafo finito simple donde todo v´ ertice tiene grado 2.3 ): 18.CAP´ ITULO 9.17. conexo.3 : 19. y 2(n!) si m = n. 2004 21. GRAFOS 16.n tiene m!n! automorfismos si m = n. . Demuestre que = Kn para ning´ todo v´ ertice de G pertenece a alg´ un subgrafo inducido de G con 3 v´ ertices que es isomorfo a P3 . 22. EJERCICIOS Demuestre que los siguientes grafos son isomorfos (de hecho. entonces G es un ciclo. Demuestre que los siguientes grafos no son isomorfos: Ayuda: Considere los complementos de los grafos dados. c Luis Dissett. 85 P. Demuestre que P4 ∼ = P4 . Chile.U. ¿Qu´ e propiedad es satisfecha por s´ olo uno de los complementos? 20. y que Km. 17. 9. todos son isomorfos a K3. Demuestre que Kn tiene n! automorfismos. 23. Demuestre que el siguiente grafo no es isomorfo a K3. y siendo R el conjunto de las regiones determinadas por ella en el plano. 27. si G ∼ = G entonces G tiene la propiedad sii G la tiene): a) b) c) d) ser conexo. 32.U. Demuestre que las siguientes funciones son invariantes bajo isomorfismos (o sea. ser completo. E ). 28. Demuestre que la relaci´ on definida en V por “x hay un camino en G entre x e y ” es una relaci´ on de equivalencia en V . GRAFOS Demuestre que un grafo es bipartito si y s´ olo si su conjunto de v´ ertices puede ser partido en dos conjuntos independientes. 26.9. b ) κ(G).C. Demuestre que las siguientes propiedades son invariantes bajo isomorfismos (o sea.17. Demuestre que un grafo es bipartito completo si y s´ olo si es bipartito y la adici´ on de cualquier arista har´ ıa que dejara de serlo. c Luis Dissett. EJERCICIOS 24.n ∼ = K m + Kn . 31. se tiene que |V | − |E | + |R| = 2. S ⊆ V es una componente conexa sii S induce un subgrafo conexo y todo S tal que S ⊆ S ⊆ V induce un subgrafo disconexo). E ) un grafo. y ↔ 29. 25. Demuestre el Teorema de Euler: dada una inmersi´ on plana de G = (V. Sea G = (V. Demuestre que el conjunto Aut(G) de automorfismos de G forma un grupo con la composici´ on. Demuestre que las componentes conexas de G son subconjuntos maximales de v´ ertices que inducen subgrafos conexos (en otras palabras. pero no necesariamente el u ´nico. CAP´ ITULO 9. si G ∼ =G entonces f (G ) = f (G) para cada una de las siguientes funciones f ): a ) χ(G). Demuestre que un grafo es bipartito si y s´ olo si es 2-coloreable. 86 P. ser bipartito. 2004 . Chile. E ). son llamadas componentes conexas 30. Nota: las clases de equivalencia definidas en V por de G. la identidad es un automorfismo de G. ser k -coloreable (para k ∈ N). 33. Demuestre que Km. Dado un grafo G = (V. NO si w ∈ D − L. 87 . espacio.2. c) ∈ D : c = mcd(a. b)}.Cap´ ıtulo 10 P y NP 10. aplicado a cualquier w ∈ D. llamado lenguaje o problema. Problemas de decisi´ on Formalmente. Tipos de problemas Los problemas computacionales pueden dividirse en varios tipos. Aqu´ ı. promedio (con una distribuci´ on probabil´ ıstica particular de las entradas). aparici´ on en la pr´ actica. p. Introducci´ on a complejidad Motivaci´ on: estudiar problemas computacionales (m´ as que algoritmos espec´ ıficos) con respecto a su dificultad relativa a ciertos recursos: tiempo. el recurso m´ as escaso es el tiempo . 10.1.1. y un subconjunto L de D. Generalmente. problemas de optimizaci´ on. b. b. Se busca un algoritmo AD.e. c). D = Z+ × Z+ × Z+ . Ejemplo: Problema de decisi´ on: Dados tres n´ umeros enteros positivos (a. responde: SI si w ∈ L. problemas de evaluaci´ on. un problema de decisi´ on est´ a formado por un dominio (conjunto de posibles instancias) D. etc. decidir si c es el mcd de a y b. casos particulares. pero los otros recursos tambi´ en son importantes en ciertas circunstancias. aleatoriedad.L que. La dificultad de un problema puede ser estudiada considerando: peor caso. etc. 10.2. problemas de b´ usqueda. L = {(a. Cuatro tipos importantes de problemas son: problemas de decisi´ on. b).5.4. 1 < k < n. 2004 . un problema de optimizaci´ on est´ a formado por un dominio (conjunto de posibles instancias) D. hallar k que minimice el valor de n m´ od k para k ∈ Z. Aqu´ ı. encontrar c tal que c = mcd(a. Problemas de b´ usqueda Formalmente. 1 < k < n. y. Podemos encontrar varias versiones de este problema. c Luis Dissett. entregue un elemento de A(I ). encontrar un recorrido del vendedor viajero de costo ´ optimo. determinar el m´ ınimo valor de n m´ od k para k ∈ Z. Se busca un algoritmo AD que.C. entregue alg´ un x ∈ F (I ) que minimice el valor de c(x). P Y N P 10. Ejercicio. para cada instancia I un conjunto F (I ) de soluciones factibles y un subconjunto no vac´ ıo A(I ) de F (I ) (las soluciones aceptables ).2. pertenecientes a cada uno de los tipos mencionados arriba. Problemas de evaluaci´ on Formalmente.2. b). Ejercicio. entregue el valor de m´ ın {c(x) : x ∈ F (I )} . Ejemplo: Problema de b´ usqueda: Dados dos n´ umeros enteros positivos (a. ¿Qu´ e problema de decisi´ on puede ser resuelto a trav´ es de este problema de evaluaci´ on? 10. aplicado a cualquier I ∈ D. donde cada instancia I est´ a formada por un conjunto F (I ) de soluciones factibles y una funci´ on de costo c : F (I ) → Z.3. un problema de evaluaci´ on est´ a formado por un dominio (conjunto de posibles instancias) D. donde cada instancia I est´ a formada por un conjunto F (I ) de soluciones factibles y una funci´ on de costo c : F (I ) → Z.2. F (I ) = Z+ . aplicado a cualquier I ∈ D. 10. Ejemplo: Problema de optimizaci´ on: dado un n´ umero entero n.10. un problema de b´ usqueda est´ a formado por un dominio (conjunto de posibles instancias) D. Se busca un algoritmo AD que. Ejemplos Consideremos el problema del vendedor viajero.U.2. TIPOS DE PROBLEMAS CAP´ ITULO 10. Versi´ on de decisi´ on Dada una matriz de distancias entre ciudades. aplicado a cualquier I ∈ D. 88 P. Problemas de optimizaci´ on Formalmente. ¿existe alg´ un recorrido del vendedor viajero con distancia total ≤ k ? Versi´ on de b´ usqueda Dada una matriz de distancias entre ciudades para cual existe un recorrido del vendedor viajero de largo total ≤ k .2. A(I ) = {c ∈ Z+ : c = mcd(a. hallar un tal recorrido. Ejemplo: Problema de optimizaci´ on: dado un n´ umero entero n. b)}. D = Z+ × Z+ . Versi´ on de evaluaci´ on Dada una matriz de distancias entre ciudades. ¿cu´ al es la distancia total m´ ınima posible para un recorrido del vendedor viajero? Versi´ on de optimizaci´ on Dada una matriz de distancias entre ciudades. y un n´ umero k . Se busca un algoritmo AD que. ¿Qu´ e problema de b´ usqueda puede ser resuelto a trav´ es de este problema de optimizaci´ on? 10.2. Chile. En principio. queremos dise˜ nar un algoritmo A que resuelve π . a partir de una instancia I de π : 1. Es f´ acil ver que. Nos referiremos al tama˜ no de una instancia I por |I |. Complejidad de un algoritmo Dado un algoritmo.3. pero nos conformaremos con cualquier medida “razonable” de tama˜ no (qu´ e exactamente es razonable lo discutiremos m´ as adelante). c Luis Dissett. 10. Chile. 10.C. nos interesa estudiar la complejidad temporal en el peor caso de algoritmos para diversos tipos de problemas. Informalmente. mientras lo que no est´ an en P son intratables .3.U. nos interesa tener una medida de su tama˜ no . Complejidad de un problema Dado un problema π y una funci´ on f : N → N. 10. diremos que los problemas de la clase P son tratables .3. Dado un algoritmo A y una instancia I del problema que resuelve A. quisi´ eramos medir la cantidad de bytes (o bits.4. 89 P. diremos que la complejidad de π es O(f ) si existe un algoritmo A para π tal que CA ∈ O(f ). sino en reducciones que. Diremos que un problema puede ser resuelto eficientemente si existe un polinomio p(n) tal que su complejidad es O(p(n)). Complejidad de algoritmos y problemas Tama˜ no de una instancia Fundamentalmente. No estamos interesados en cualquier reducci´ on. o palabras) que ocupa la instancia. COMPLEJIDAD DE ALGORITMOS Y PROBLEMAS 10.4. la instancia I de π pueda ser obtenida a partir de I en tiempo polinomial en |I |. y cada vez que utilicen A . En otras palabras.3. 2. diremos que su complejidad es la funci´ on CA : N → N definida por CA (n) = m´ ax {TA (I ) : |I | = n.3. si A es un algoritmo polinomial para resolver π . Algoritmos eficientes Queremos identificar aquellos problemas que pueden ser resueltos eficientemente. Reducciones entre problemas Un concepto que estudiaremos es el de reducci´ on de un problema π a otro π .3.} (complejidad en el peor caso). suponiendo que tenemos un algoritmo A que resuelve el problema π . 10. Dada una instancia I de un problema. utilicen A una cantidad polinomial de veces. 2004 . En particular. llamaremos TA (I ) al n´ umero de pasos ocupados por A al verse enfrentado a I .1.3. 10. estamos interesados en la clase P definida como: P = {problemas de decisi´ on para los que existe un algoritmo polinomial } .CAP´ ITULO 10.2. entonces una reducci´ on de este tipo tomar´ a tiempo polinomial para resolver I . P Y N P 10. 5.4. 1977).1. dado un problema de optimizaci´ on. c Luis Dissett. Otros problemas Hay miles de problemas de decisi´ on. Se demostr´ o (S. ¿Por qu´ e? 10.U. Notaci´ on. 10. . esto puede parecer restrictivo. que est´ an en el mismo estado del de colorabilidad de grafos con 3 colores: No se sabe si se pueden resolver de manera eficiente o no.5. Ejemplo: coloraci´ on de mapas Todo mapa puede ser coloreado con 4 colores (Appel & Haken.10. est´ an en una misma clase de problemas de decisi´ on computacional definida matem´ aticamente: la clase N P . 2.2. en general es posible.C. Si π = (D. En principio.4. R. un elemento de D) anotaremos I ∈ π para indicar I ∈ L. Una respuesta tendr´ ıa muchas consecuencias te´ oricas y pr´ acticas. L) es un problema de decisi´ on. nos interesa saber si π ∈ P o no. reducirlo a un problema de decisi´ on (se ver´ an ejemplos en ayudant´ ıa). 10. Chile. De hecho. 2004 . Decidir si un mapa puede ser colorado con 2 colores puede ser resuelto en tiempo polinomial (en el n´ umero de pa´ ıses y fronteras). Sin embargo. 90 P. de importancia pr´ actica y te´ orica.4. Esto fue posible gracias a una caracterizaci´ on matem´ atica de esta clase de problemas y de la relaci´ on entre ´ estos. ¿Qu´ e tan dif´ ıcil es decidir si un grafo arbitrario es coloreable con 3 colores (CG(3))? No se sabe si CG(3) ∈ P o no. b´ usqueda o evaluaci´ on.3. Son los problemas de decisi´ on que pueden ser resueltos en tiempo polinomial por un algoritmo no determin´ ıstico . asociado con cada instancia I para la que la respuesta es SI existe un certificado c(I ) de largo polinomial en |I | y que puede ser chequeado en tiempo polinomial en |I |. Veremos . Dado un problema de decisi´ on π . Problemas de decisi´ on vs otros problemas Desde ahora en adelante. LA CLASE N P (NON-DETERMINISTIC POLYNOMIAL) CAP´ ITULO 10. Muchos problemas de decisi´ on pertenecen a esta clase. Karp 1972) que una respuesta positiva o negativa para el problema de colorabilidad con 3 colores se traspasa autom´ aticamente a los otros problemas de la clase N P . Cook 1971. P Y N P 10. estudiaremos principalmente problemas de decisi´ on. Son los problemas de decisi´ on para los que. dada una instancia I de π (o sea. m´ as all´ a de CG(3). . La clase N P (Non-deterministic Polynomial) Hay (al menos) dos maneras equivalentes de definir la clase N P : 1. esto implicar´ ıa que muchos problemas de b´ usqueda. Aqu´ ı el certificado es una k -coloraci´ on propia.6. anotaremos π ∝ π .6. y se comporta as´ ı: dada una entrada w. habr´ ıa un algoritmo polinomial para resolver π . Si π es transformable en π . Chile. versi´ on de decisi´ on. al largo de la entrada w). 10. ¿tiene G un clique (subgrafo completo) de tama˜ no k ? Aqu´ ı el certificado es la lista de los k v´ ertices. CLIQU ED : dado un grafo G y un entero positivo k . al largo de w yc).6.1. ver m´ as adelante. el m´ odulo adivinador genera. L) y π = (D . Ejercicio. entonces dado cualquier problema π ∈ N P . para cada instancia positiva w ∈ L. en forma no determinista. Problemas N P -completos Transformaciones entre problemas de decisi´ on Dados dos problemas de decisi´ on π = (D. un certificado de que n es compuesto es uno de sus factores. y 2. P Y N P 10. dado cualquier problema π ∈ N P .U. Ejemplos de problemas en N P CG(k ): grafos k -coloreables. Algoritmos no determin´ ısticos Un algoritmo no determin´ ıstico de tiempo polinomial para un problema π consta de dos m´ odulos: un m´ odulo adivinador y un m´ odulo verificador . Una consecuencia inmediata de que un problema de decisi´ on π sea N P -completo es que. Compuesto : dado n ∈ N. P V VD : el problema del vendedor viajero.2.C. Un problema de decisi´ on π = (D. seg´ un si c es un certificado de pertenencia de w a π. que responde SI o No (en forma determinista) en tiempo polinomial (c. si hubiera un algoritmo polinomial para resolver π . dada una instancia I de π genera una instancia I de π de modo que I∈L↔I ∈L. Entrega w y c al m´ odulo verificador. PROBLEMAS N P -COMPLETOS 10. existe alguna computaci´ on con entrada w que termina en respuesta SI. Para ejemplos de transformaciones. π ∈ N P . L ). Estamos en condiciones de definir la clase de problemas N P -completos.5.r.r. una palabra c en tiempo polinomial (c. Un problema π se dice N P -completo si: 1. 91 P. diremos que π es transformable en π si existe un algoritmo polinomial en |I | que. 2004 .CAP´ ITULO 10. L) es soluble por un algoritmo no determin´ ıstico de tiempo polinomial A si. Aqu´ ı el certificado es un circuito de costo ≤ k .1. optimizaci´ on y evaluaci´ on podr´ ıan ser resueltos en tiempo polinomial.5. A su vez. 10. c Luis Dissett. ¿Es posible dar un certificado eficiente de que un n´ umero es primo? 10. existe una transformaci´ on π ∝ π . 7.C. 10. la f´ ormula (p ∨ q ) ∧ (¬p ∨ ¬r ∨ s) ∧ (q ∨ t) est´ a en FNC. P Y N P 10.2.e. uno estar´ ıa tentado de usar el siguiente teorema: Teorema. 92 P. El teorema de Cook Teorema (Cook. basta tomar I = I como instancia de SAT y vemos que I ∈ SAT -F N C ↔ I ∈ SAT . entonces los literales son p. Chile.6. Ejemplo de problema de decisi´ on: SAT SAT: satisfactibilidad de f´ ormulas proposicionales. CLIQU ED . habr´ ıa problemas en NP que no est´ an en P . despu´ es vinieron otros como CLIQU ED . ¬q y ¬r. r. . 10. SAT -F N C es N P -completo. Recordemos que una f´ ormula proposicional est´ a en Forma Normal Conjuntiva (FNC) si es una conjunci´ on de disyunciones de literales: n mi ( i=0 j =0 lij ). Por ejemplo. En el peor caso. un literal es toda f´ ormula at´ omica (variable proposicional) o negaci´ on de una f´ ormula at´ omica. decidir si existe una asignaci´ on de valores de verdad (0 o 1) que la hace verdadera.. Problema: dada una f´ ormula proposicional ϕ. Tenemos muchos problemas en N P que no sabemos si est´ an en P o no (SAT . P V VD . ¬p.6.6. No se conoce una soluci´ on de tiempo polinomial. 2004 . 1971). Que SAT -F N C ∝ SAT es obvio: dada una instancia I de SAT -F N C . Conjetura de Steve Cook (1971): P NP . c Luis Dissett. 10. pero exigiendo que todas las f´ ormulas est´ an expresadas en Forma Normal Conjuntiva . ¿Cu´ al ser´ ıa el problema? Mencionaremos una demostraci´ on un poco m´ as alambicada de que SAT ∝ SAT -F N C . . q.). ¿Candidatos? Todos los problemas N P -completos. si F0 = {p. Cada disyunci´ on se llama cl´ ausula. r}. Toda f´ ormula de un lenguaje L(P ) es l´ ogicamente equivalente a una f´ ormula que est´ a en FNC. Un posible algoritmo de decisi´ on: chequear la tabla de verdad de ϕ.4.7. Para el rec´ ıproco. q. .5. P V VD . ?Sabemos si existen problemas N P -completos? S´ ı: el primero fue SAT − F N C . este algoritmo es exponencial en el largo de la f´ ormula.6. Relaci´ on entre P y N P Se tiene trivialmente P ⊆ N P . no se sabe si SAT ∈ P . EL TEOREMA DE COOK CAP´ ITULO 10. Transformaciones entre SAT -F N C y SAT Se sabe que SAT -F N C ∝ SAT y viceversa.U. Resp´ ondase SI o NO seg´ un haya una fila que termine en 1.10. Recordemos que esto quiere decir que: SAT -F N C ∈ N P . Dado F0 (el conjunto de proposiciones at´ omicas ). . es decir. etc. . CG(3). i. Por ejemplo. SAT en forma normal conjuntiva Otro problema de decisi´ on (que denotaremos SAT -F N C ) es similar a SAT . 10.3. . Para demostrar que P = N P . Si se pudiera resolver SAT -F N C en tiempo polinomial determinista. no es uno la negaci´ on del otro. se tiene π ∝ SAT -F N C (o sea. todo problema de la clase N P tambi´ en. otro problema ya establecido como N P -completo. autom´ aticamente .2. . se demostr´ o despu´ es (Richard Karp. . 1. ϕ es de la forma C1 ∧ · · · ∧ Ck . . Si se demuestra que uno de ellos est´ a (o no est´ a) en P . Es decir. colocamos una arista uniendo a los v´ ertices i y j si y s´ olo si: i y j provienen de diferentes cl´ asulas.7. Con respecto a las aristas. En particular. 10. de hecho. π puede ser transformado en tiempo polinomial a SAT -F N C ). y porque CLIQUE ∈ NP (¿por qu´ e?). un indicio (pero no demostraci´ on) de que no es soluble en tiempo polinomial por algoritmos deterministas. 1972) que c/u de estos problemas tambi´ en es N P -completo. 93 P. entonces f (x) codifica un grafo G = (V. sus correspondientes literales) no son complementarios. bastar´ ıa probar que existe alg´ un problema N P -completo que est´ a en P . E ) y un entero k tales que: ϕ es satisfactible si y s´ olo si G tiene un subgrafo completo de tama˜ no k (la misma construcci´ on que sigue funciona si pedimos “de tama˜ no ≥ k ”). Chile. si x codifica una f´ ormula ϕ en FNC. bastar´ ıa probar que existe alg´ un problema N P -completo que no est´ a en P .CAP´ ITULO 10. Hay unos 10. ¿C´ omo se demuestra que un problema es N P -completo? Demostrando que est´ a en N P . es decir.000 problemas N P -completos esperando. en tiempo polinomial. Veamos c´ omo construir G y k a partir de ϕ: primero. c Luis Dissett. En lugar de demostrar que todo problema ∈ N P puede ser transformado a nuestro candidato a problema N P -completo. . gracias a la transitividad de ∝. . . P V VD . basta probar (2). Demostrar que un problema es N P -completo es dar un fuerte indicio de que es muy dif´ ıcil. todos los otros problemas N P completos le siguen . P Y N P 10. 2004 . SAT -F N C es el problema m´ as dif´ ıcil (o uno de los problemas m´ as dif´ ıciles) en la clase NP. Para demostrar que P = N P . 10. esta cl´ asula aporta m v´ ertices a G. basta con demostrar que: SAT ∝ CLIQUE . Ahora.7. pueden ser transformados en tiempo polinomial a SAT -F N C . es decir.U.7. Es decir.C. CLIQU ED . es decir. 1 Literalmente. . Ejemplo: CLIQUE es N P -completo Soluci´ on: Por la transitividad de las reducciones polinomiales. M´ as a´ un. entre ellos muchos de alta importancia pr´ actica. ¿C´ omo se demostrar´ ıa que P = N P (o que P = N P )? ´ Esta es la pregunta del mill´ on de d´ olares1 . y i y j (mejor dicho. cada literal en ϕ (est´ e repetido o no) aporta un v´ ertice al grafo G. hay que encontrar una funci´ on f computable en tiempo polinomial tal que. . CG(3). si Ci tiene m literales. y Transformando a ´ el. EL TEOREMA DE COOK Dado un problema cualquiera π ∈ N P . k es el n´ umero de cl´ ausulas en ϕ. . 2.1. dada la instancia I . sin entrar en conflictos con los dem´ as. Para probar esto. necesitamos s´ olo establecer que. EL TEOREMA DE COOK CAP´ ITULO 10.3. hay que mencionar que esta construcci´ on puede ser hecha en tiempo polinomial en |ϕ|. El conjunto de literales {l1 . Ahora demostramos la implicaci´ on inversa “⇐”. . N´ otese que si i y j est´ an conectados por una arista en G. li y lj est´ an conectados por una arista en G.7. y as´ ı. todos de cl´ ausulas diferentes. En efecto: Primero demostramos “⇒”. ¿C´ omo lo hizo? Sea π un problema en N P . esto da un literal en cada cl´ asula. la f´ ormula (x1 ∨ x2 ) ∧ (¬x2 ∨ x3 ) ∧ (¬x3 ∨ ¬x1 ) da lugar a k = 3 y a un grafo con 6 v´ ertices: x2 x1 x3 x1 x2 x3 Afirmaci´ on: G tiene un subgrafo completo de tama˜ no k si y s´ olo si ϕ es satisfactible. entonces ϕ tiene al menos k literales. se puede hacer verdadera la f´ ormula completa. Eso quiere decir que existe un polinomio p(n) y un algoritmo no determin´ ıstico A (modelado matem´ aticamente por una m´ aquina de Turing) que. entonces se les puede dar el valor de verdad 1 en ϕ. digamos n. Determinar cu´ ales son las aristas a colocar en G toma tiempo n2 . Como ϕ tiene exactamente k cl´ ausulas. Cook mostr´ o que existe un polinomio q (n) tal que es posible. que σ (lj ) = 1. Esta es una asignaci´ on de verdad que satisface la f´ ormula. y li y lj no entran en conflicto uno con otro (pues a ambos σ les da el valor de verdad 1). . construir en tiempo ≤ q (|I |) una f´ ormula proposicional ϕ(I ) que es satisfactible si y s´ olo si existe una c Luis Dissett.U. y a cada uno se le puede asignar el valor de verdad 1 en ϕ.7. Supongamos que ϕ es satisfecha por una asignaci´ on σ . Esto es f´ acil de ver. Fija σ . P Y N P Por ejemplo. 10. cada cl´ ausula Cj debe tener un literal lj tal. Chile. Finalmente. intenta adivinar un certificado c(I ) e intenta chequearlo en tiempo ≤ p(n). N´ otese que: li y lj provienen de cl´ ausulas diferentes (por construcci´ on). pues G tiene tantos v´ ertices como literales tiene ϕ. para i y j arbitrarios. sin conflicto.10. lk } corresponde a un subgrafo completo en G de tama˜ no k . 2004 .C. . dada una instancia I de π de largo |I | = n. Esto demuestra la afirmaci´ on. pero cuando Cook demostr´ o que SAT -F N C es N P -completo lo hizo sin tener un problema N P -completo en el cual apoyarse. Si hay un subgrafo completo de tama˜ no k . 94 P. La demostraci´ on del teorema de Cook Todo eso est´ a muy bien. . Ah´ ı no est´ a el problema. y un natural. . 10. K ¿es posible encontrar un subconjunto S de A tal que x = K? x∈S 3-colorabilidad: Dado un grafo G. de hecho. Dado un grafo G = (V. ¡Cuidado con la tentaci´ on . para ver si forman un recubrimiento. El coeficiente (N +1)···n N ıa sugerir que. es decir. y en ese problema no aparece el N como par´ ´ ametro. Ayuda: primero determine el tama˜ no N de un recubrimiento ´ optimo de G. N puede ser arbitrariamente cercano a n (en el peor caso). ¿existe un recubrimiento de G de tama˜ no a lo m´ as k ? (este problema es N P -completo). un conjunto de v´ ertices de tama˜ no m´ ınimo tal.C. que el binomial da 1 ···(n−N ) que es menor o igual a n . es decir. ! Uno podr´ ıa sentirse tentado. chequear si un subconjunto de tama˜ no N es recubrimiento toma (incluso usando fuerza bruta) tiempo O(N 3 ) ⊆ O(n3 ). Chile. tenemos las siguientes versiones: Problema de optimizaci´ on (RGVO ): encontrar un recubrimiento de tama˜ no m´ ınimo. la asignaci´ on de verdad que satisface ϕ(I ) corresponde a las distintas etapas y condiciones de dicha computaci´ on). enton ces tambi´ en RGVO se puede resolver en tiempo polinomial (el rec´ ıproco es inmediato). que cada arista tiene al menos un extremo en el subconjunto. como N est´ a fijo. .1. Ejemplo: recubrimiento de un grafo por v´ ertices Considere el siguiente problema: Problema de Recubrimiento de un Grafo por V´ ertices (RGV ). n n Por otro lado. ¿existe un recubrimiento de G de tama˜ no a lo m´ as k ? Partici´ on: Dado un conjunto A de n´ umeros naturales. E ). Esto podr´ tiempo es polinomial en n.CAP´ ITULO 10. Demuestre que. 95 P. polinomial en n. si RGVD se puede resolver en tiempo polinomial. una vez calculado el tama˜ no N de un recubrimiento ´ optimo de G. As´ ı.8.U. el problema original es el de encontrar el recubrimiento optimo. tenemos un tiempo O(nn ). c Luis Dissett. Este algoritmo no es de tiempo polinomial: Primero que todo. Sin embargo. hay N subconjuntos a verificar. Problema de decisi´ on (RGVD ): dado un entero positivo k .8. El N sali´ o de manera intermedia y depende de n (y de la instancia). ¿es posible pintar los v´ ertices de G con 3 colores de modo que v´ ertices adyacentes tengan colores distintos? 10. ¿es posible encontrar un subconjunto S de A tal que x= x? x∈S x∈A−S Suma de un subconjunto: Dado un conjunto A de n´ umeros naturales. Otros problemas N P –completos Recubrimiento de un Grafo por V´ ertices: Dado un grafo G y un entero positivo k . Esto da tiempo O(n3 × N .8. a chequear todos los posibles subconjuntos de v´ ertices de tama˜ no N . 2004 . P Y N P 10. OTROS PROBLEMAS N P –COMPLETOS computaci´ on de A que le permite demostrar que I ∈ π (de hecho. 10.8. OTROS PROBLEMAS N P –COMPLETOS CAP´ ITULO 10. P Y N P c Luis Dissett. 96 P.U.C. Chile, 2004 Cap´ ıtulo 11 Aritm´ etica modular y criptograf´ ıa 11.1. Divisibilidad. M´ aximo com´ un divisor Definici´ on 49. Sean a, b ∈ Z. Decimos que b divide a a (o tambi´ en que a es divisible por b, o que a es un m´ ultiplo de b, o que b es un factor de a, o que b es un divisor de a) si y s´ olo si existe k ∈ Z tal que a = bk . Notaci´ on. Denotamos el que b divide a a por b | a. 11.1.1. El algoritmo de la divisi´ on El siguiente teorema es llamado el algoritmo de la divisi´ on ; aunque no es precisamente un algoritmo, sugiere (o m´ as bien dicho, su demostraci´ on sugiere) un algoritmo para calcular el cuociente y el resto de una “divisi´ on entera”: Teorema (Algoritmo de la divisi´ on). Sean a ∈ Z, b ∈ Z, b = 0. Entonces existen q, r ∈ Z tales que a = bq + r y 0 ≤ r < |b|. Estos enteros q y r son u ´nicos, y son llamados, respectivamente, el cuociente y el resto de la divisi´ on de a por b. Demostraci´ on. Consid´ erese el conjunto S = {a − bx : x ∈ Z y a − bx ≥ 0} . Si a ≥ 0 entonces a ∈ S , y si a < 0 entonces a − |b| a ∈ S , por lo que —en cualquier caso— S = ∅. Como adem´ as todos los elementos de S son ≥ 0, S es acotado inferiormente. Por el principio del menor entero, S debe tener un elemento m´ ınimo. Llamemos a ´ este r. Sea q ∈ Z alg´ un entero tal que a − bq = r (dicho entero debe existir, por la definici´ on de S ). Claramente, r ≥ 0. Pasamos a demostrar que r < |b|. Si as´ ı no fuera, entonces r = r − |b| = a − bq − |b| ≥ 0 y por lo tanto r ∈ S , r < r contradiciendo la minimalidad de r. As´ ı, existen q, r ∈ Z tales que a = bq + r, 0 ≤ r < |b|. Demostramos a continuaci´ on que q y r son los u ´nicos enteros con estas propiedades. Si a = bq + r con 0 ≤ r < |b|, entonces 0 = bq + r − (bq + r ) = b(q − q ) + (r − r ), de donde r − r = b(q − q ), por lo que r − r es divisible por b. Pero 0 ≤ r, r < |b| implica que − |b| < r − r < |b|, por lo que el u ´nico posible valor de r − r divisible por b es r − r = 0, o sea, r = r . Finalmente, como a = bq + r = bq + r y b = 0, debe tenerse q = q . 97 ´ ´ 11.2. ARITMETICA MODULAR CAP´ ITULO 11. ARITMETICA MODULAR Y CRIPTOGRAF´ IA 11.1.2. Divisores comunes. M´ aximo com´ un divisor Sean a, b ∈ Z, no ambos cero. Consideremos el conjunto S = {n ∈ N : n divide a a y a b} . Sabemos que a y b no son ambos cero. SPG, supongamos a = 0. Entonces n ∈ S → n ≤ |a|, por lo que S es acotado superiormente. Como adem´ as 1 ∈ S , S = ∅, por lo que S debe tener un elemento m´ aximo . Sea d el m´ aximo elemento de S . Entonces tenemos: 1. d es un divisor com´ un de a y b; y 2. si d es un divisor com´ un de a y b, entonces d ≤ d. La propiedad anterior nos permite dar la siguiente definici´ on: Definici´ on 50. El mayor elemento del conjunto S es llamado el m´ aximo com´ un divisor de a y b, y es denotado mcd(a, b); en algunos libros tambi´ en (a, b). Note que esta definici´ on no nos permite hallar en forma eficiente el m´ aximo com´ un divisor entre dos enteros. Antes de dar un algoritmo para calcular el m´ aximo com´ un divisor entre dos enteros, veamos que mcd(a, b) = mcd(|a| , |b|). O sea, podemos siempre reducir el c´ alculo del m´ aximo com´ un divisor al caso en que ni a ni b son negativos. 11.1.3. El algoritmo de Euclides. PENDIENTE 11.1.4. El algoritmo extendido de Euclides Vimos que, dados a, b ∈ N, a, b > 0, se tiene mcd(a, b) = m´ ın {ax + by : x, y ∈ Z}. Una modificaci´ on al algoritmo de Euclides nos permite hallar dos enteros x, y tales que ax + by = mcd(a, b). PENDIENTE 11.2. Aritm´ etica modular Consideramos Zn con las operaciones + mod n y · mod n (suma y producto m´ odulo n). Se puede demostrar (hacerlo!) que [Zn , + mod n, · mod n, 0, 1] es un anillo , es decir, como un cuerpo, pero puede fallar la existencia de inversos multiplicativos, dependiendo de n. La estructura de [Zn , + mod n, · mod n, 0, 1] es como sigue: [Zn , + mod n, 0] es grupo conmutativo. [Zn , · mod n, 1] es conmutativo, asociativo, 1 es neutro. · mod n distribuye c.r.a. + mod n. c Luis Dissett. 98 P.U.C. Chile, 2004 o sea: f (a1 · a2 ) = (f (a1 ) · f (a2 )) mod n f (a1 + a2 ) = (f (a1 ) + f (a2 )) mod n Si escribimos x +n y en lugar de (x + y ) mod n. tiene estructura similar a un cuerpo. . n) = 1. Ejercicio. o sea. n − 1} tienen inverso multiplicativo? Veamos: Teorema. 99 P. . definida por: a → a mod n.2. podemos escribir: f (a1 + a2 ) = f (a1 ) +n f (a2 ) f (a1 · a2 ) = f (a1 ) ·n f (a2 ) Otra forma equivalente de escribir esto mismo es: (a1 + a2 ) mod n = ((a1 (a1 · a2 ) mod n = ((a1 mod n) + (a2 mod n)) mod n mod n) · (a2 mod n)) mod n Obviamente f no es isomorfismo . Pero entonces 1 = ax − kn. existe x ∈ Zn tal que a · x mod n = 1) si y s´ olo si mcd(a. Entonces existe k ∈ Z tal que ax = kn + 1. Zn es un cuerpo si y s´ olo si n es primo.3. pero no todo elemento = 0 tiene (necesariamente) un inverso multiplicativo. Entonces podemos asegurar la existencia de dos n´ numeros enteros x. .2. Supongamos ahora que d = 1. Chile.1. Sea d = mcd(a. se tiene d | ax y d | kn). (el resto de la divisi´ on de a por n). n). ¿Qu´ e propiedades algebraicas se mantienen entre uno y otro? Consideremos f : Z → Zn . I3)1 Pero entonces ax = −ny + 1. Demostraci´ on. . Se tiene que f es homomorfismo de anillos (tambi´ en Z es anillo). a ∈ Zn − {0} tiene inverso multiplicativo en Zn (o sea. o sea. Ejemplo.´ CAP´ ITULO 11. CUERPOS 11.C. = 1 (m´ 11. de donde x = a−1 en Zn . 2004 .2. y tales que ax + ny = 1 (ver problema 2. +5 0 1 2 3 4 1 M´ as 0 0 1 2 3 4 1 1 2 3 4 0 2 2 3 4 0 1 3 3 4 0 1 2 4 4 0 1 2 3 ·5 0 1 2 3 4 0 0 0 0 0 0 1 0 1 2 3 4 2 0 2 4 1 3 3 0 3 1 4 2 4 0 4 3 2 1 a´ un: el Algoritmo Extendido de Euclides nos da una forma eficiente de calcular estos enteros. d = 1. de donde d | 1 (ya que. ARITMETICA MODULAR Y CRIPTOGRAF´ IA 11. Relaci´ on entre Z y Zn Tanto Z como Zn son anillos. Cuerpos La propiedad demostrada en la u ´ltima secci´ on tiene el siguiente Corolario. ax ∼ od n). Supondremos primero que x ∈ Zn es el inverso multiplicativo de a m´ odulo n.3. ¿Qu´ e elementos en Zn − {0} = {1. Inversos en Zn Dec´ ıamos que Zn es un anillo. n = 5.U. 11. c Luis Dissett. como d | a y d | n. Demostraci´ on. As´ ı. ya que entonces Z y Zn tendr´ ıan la misma cardinalidad. Chile. Consideremos p = 11. tal que: 1.3. . con mcd(a. El teorema chino de los restos Sean a. 0 ≤ v < b.´ A CAP ´ ´ ´ 11. A continuaci´ on enunciamos (sin demostraci´ on todav´ ıa) dos teoremas importantes. Shamir & Adleman (RSA). Se tiene: 110 m´ od 11 = 210 m´ od 11 = · · · = 1010 m´ od 11 = 1. El peque˜ no teorema de Fermat Teorema (Peque˜ no teorema de Fermat). con 0 ≤ u < a. existe un u ´nico x ∈ N. Un protocolo de encriptaci´ on de clave p´ ublica 1977: Rivest.3. a. INTRODUCCION LA CRIPTOGRAF ITULO 11. .1. b ∈ Z.U. . pero s´ olo ´ el puede leerlos. p − 1} se tiene ap−1 m´ od p = 1. c Luis Dissett. x mod b = v Para demostrar el teorema hay que demostrar existencia y unicidad. Z4 no es cuerpo +4 0 1 2 3 0 0 1 2 3 1 1 1 3 0 2 2 3 0 1 3 3 0 1 2 ·4 0 1 2 3 0 0 0 0 0 1 0 1 2 3 2 0 2 0 2 3 0 3 2 1 El 2 no tiene inverso multiplicativo: mcd(4.4. propia del m´ etodo de encriptaci´ on). Introducci´ on a la Criptograf´ ıa Prop´ osito: poder codificar (encriptar) mensajes (informaci´ on) para ocultar su contenido. 11. n = 4. Publica una clave que permite a los otros codificar los mensajes que le env´ ıan. Hay varios protocolos criptogr´ aficos. Se denomina “criptograf´ ıa moderna” a aquella basada en teor´ ıa computacional de n´ umeros.1. Se supone que los mensajes (antes de la encriptaci´ on) ya son n´ umeros enteros. 11. 0 ≤ x < ab 2. 11.4. b ≥ 1.2. Para todo a ∈ {1. Ejemplo. que tienen que ver con la forma en que se distribuye las funciones de encriptaci´ on (o sus claves). 11. x mod a = u 3.4. ARITM IA ETICA MODULAR Y CRIPTOGRAF´ IA Ejemplo. 100 P. 2004 . 2.C. Para todo u. Sea p primo. El proceso de codificaci´ on debe ser efectivo y eficiente. La decodificaci´ on (desencriptaci´ on) debe ser computacionalmente intratable (cuando no se cuenta con cierta informaci´ on espec´ ıfica. Agente A quiere recibir mensajes encriptados de otros agentes. 2) = 2 = 1. Daremos las demostraciones m´ as adelante. v ∈ N. y con las funciones mismas. . b) = 1. es decir.4.4. 2004 . 11. Esto lo puede hacer en tiempo polinomial si conoce s y n. (pero no env´ ıa la funci´ on D).D (M )) −→ B. La idea es que D no pueda ser obtenida f´ acilmente a partir de E (es lo que se llama “funci´ on en un solo sentido”. (p − 1)(q − 1)) = 1.5. Uno de los supuestos b´ asicos es que factorizar n´ umeros enteros no puede ser hecho en tiempo polinomial (una suposici´ on base de la criptograf´ ıa. Y CRIPTOGRAF INTRODUCCI IA ON IA 11.4. Supuestos para que RSA funcione Se supone que s´ olo A conoce la funci´ on D. encr´ ıptenlos usando la siguiente funci´ on de encriptaci´ on: E (M ) = M e m´ od n. 11.C. S´ olo el que conoce D. puede ser otro primo). Publica N y e Dice a los otros: al enviarme mensajes M . o “funciones con puerta trampa”). Tampoco se conoce otra forma eficiente de calcular D a partir de n y e. t!!!! Para leer el mensaje. Se cree que.. ARITMETICA MODULAR 11. A aplica la funci´ on de desencriptaci´ on: D(E (M )) = (E (M ))s m´ od n = M. El n´ umero D(M ) es la firma del mensaje. El resto de la divisi´ on de M e por n se puede calcular en tiempo polinomial (pendiente). y calcula N = p · q . a no ser que sea f´ acil factorizar n´ umeros naturales en factores primos. para todo M . t tales que: se + t(p − 1)(q − 1) = 1. A puede firmar un mensaje M enviado a B : A (M.4. ? 11. s.4. Calcula s. q. A. adem´ as.3. ¿C´ omo reconoce B que M fue enviado por A? c Luis Dissett. no va a poder calcular eficientemente s (pues parece que requiere de p y q ). Codificaci´ on en RSA El agente A: Elige dos n´ umeros primos grandes p y q .4. una persona que conoce s´ olo n y e. Esto se puede hacer en tiempo polinomial con el algoritmo extendido de Euclides. primo relativo con (p − 1)(q − 1) (en particular.´ ´ ´ A LA CRIPTOGRAF´ CAP´ ITULO 11. 101 P. Supongamos que. E (D(M )) = M . un problema abierto). Chile. puede aplicar D.U. Ve´ ıamos que D(E (M )) = M para todo M .2. Decodificaci´ on en RSA ¡¡¡¡A se guarda p. Elige e tal que: mcd(e. A puede firmar eficientemente mensajes con D. Firma de mensajes Lo anterior tambi´ en se puede usar para firmar mensajes. 4. k ≥ 0 y primos p1 . aK (p−1)+1 m´ od p = (((aK m´ od p)p−1 m´ od p) · (a m´ od p)) m´ od p = (1 · (a m´ od p)) m´ od p = a m´ od p. ´ este ha sido enviado por A. K ∈ Z.´ A CAP ´ ´ ´ 11.U. Lema. a.1) (11. 2004 102 . p2 : M k(p1 −1)(p2 −1)+1 m´ od (p1 p2 ) = M m´ od (p1 p2 ). efectivamente. Veremos la demostraci´ on de 1.6. B puede verificar eficientemente todo esto. es decir. E (D(M )) = M . ? Teorema. = M m´ od p2 = M m´ od p1 (11. Hay que probar que el protocolo es correcto.4. k = K (p2 − 1) y p = p1 : M k(p1 −1)(p2 −1)+1 m´ od p1 = M m´ od p1 . ARITM IA ETICA MODULAR Y CRIPTOGRAF´ IA 11. Chile. debe convencerse de que M = D(M ). K = k (p1 − 1) y p = p2 : M k(p1 −1)(p2 −1)+1 m´ od p2 = M m´ od p2 .C. 2.2) P. ¿C´ omo se convence de esto? Como B tiene E (que le fue enviado por A). y as´ ı B sabe que el mensaje fue enviado por A. Para convencerse de que. B aplica E a la “firma” M . D(E (M )) = M . (la otra es similar). (generalizaci´ on del peque˜ no teorema de Fermat) Demostraci´ on. D(E (M )) = (E (M ))s m´ od n e s = (M ) m´ od n e· s = M m´ od n = M 1−t·(p−1)(q−1) m´ od n = M (−t)(p−1)(q−1)+1 m´ od n = M m´ od n = M (si n es grande) Hay que probar que: M (−t)(p−1)(q−1)+1 m´ od n = M m´ od n. M ). Para enteros M. Tenemos: M k(p1 −1)(p2 −1)+1 m´ od p2 k(p1 −1)(p2 −1)+1 M m´ od p1 c Luis Dissett. Demostraci´ on. Si E (M ) = M = E (D(M )). Sean p primo. Verificaci´ on de la firma B ha recibido un par (M. Usar el lema anterior con a = M. entonces M = D(M ). Entonces: aK (p−1)+1 m´ od p = a m´ od p. K ≥ 0. que 1. INTRODUCCION LA CRIPTOGRAF ITULO 11. Tambi´ en podemos aplicar el lema con a = M. Demostraci´ on. Veremos dos implementaciones de esta funci´ on.1.U. EXPONENCIACI IA ON ¿C´ omo las combinamos para obtener lo deseado?. p2 ) = 1. usando (11. z ← 1. y ← b.2). tal que s · e + t · (p − 1)(q − 1) = 1? Si es as´ ı. 11. e ∈ N. b > 1. tenemos: M k(p−1)(q−1)+1 m´ od n = M m´ od n. mcd(a. b) = 1. 2004 . como mcd(p1 .5. ARITMETICA MODULAR Y CRIPTOGRAF 11.´ ´ ´ MODULAR CAP´ ITULO 11.5.1) y (11. ¿Se puede controlar el signo de t? No hay necesariamente unicidad en la CLE. tales que a · s + b · t = 1 y t ≤ 0. 103 P. x m´ od p2 ) Es f´ acil verificar. b ∈ Z. Lema. 1: x ← n.5. Ejercicio. Exponenciaci´ on modular Un ingrediente fundamental para poder implementar eficientemente RSA es el poder calcular be m´ od n en forma eficiente. 11. Exponenciaci´ on modular (na¨ ıve ) Dados b. ¿Podemos elegir t ≤ 0. Por el Teorema Chino del Resto. n ∈ Z+ . para k ≥ 0. que od (p1 p2 )) = σ (M m´ od (p1 p2 )) σ (M k(p1 −1)(p2 −1)+1 m´ Como σ es 1-1. t ∈ Z. los argumentos son iguales. e ∈ N. el siguiente algoritmo calcula be m´ od n: Precondici´ on: b. 2: while x = 0 do 3: if x es impar then 4: z ←z·y 5: end if 6: x← x 2 7: y ← y2 8: end while 9: return z m´ od n c Luis Dissett. Existen s. Problema: ¿C´ omo podemos asegurar que M −t·(p−1)(q−1)+1 m´ od n = M m´ od n? ¿Podemos asegurar que −t ≥= 0? El −t ∈ Z sale del AEE. la siguiente funci´ on es 1-1 y sobre: σ : Zp1 p2 −→ Zp1 × Zp2 x −→ (x m´ od p1 . tendremos finalmente: M (−t)(p−1)(q−1)+1 m´ od n = M m´ od n. Chile. n ∈ Z+ .C. Sean a. Volviendo a nuestro escenario criptogr´ afico. y .6. |yi | ≤ k · 2i . . O((k · 2i )2 ) = 2 2i O(k 2 ). en cada iteraci´ on. n ∈ Z+ . . y ← b.C.3.5. OTROS TEOREMASCAP IMPORTANTES. p1 . Con el resultado del ejercicio anterior. Exponenciaci´ on modular (m´ as astuta) El siguiente algoritmo usa la idea anterior: Precondici´ on: b. es posible escribir en forma u ´nica es 1 N = pe 1 · · · ps con s ≥ 1. los mantenemos “chicos” (no m´ as de k bits en cada iteraci´ on). cada una de estas operaciones toma O(k 2 22k ). e y n tres n´ umeros de k bits c/u. z despu´ es de i iteraciones. El tiempo que toma. Todo n´ umero entero positivo N tiene una u ´nica representaci´ on como producto de potencias de n´ umeros primos (excepto por reordenamiento de los factores). Al final del loop. |zi | ≤ k (1 + 2 + · · · + 2i−1 ) ≤ k · 2i . e ∈ N.5. Sean b. 1: x ← e. yi . Complejidad del algoritmo anterior La complejidad del algoritmo anterior es O(k · k 2 ) + O(k · Tm ) = O(k 3 ) + O(k · Tm ).U.5. Otros teoremas importantes.6. < ps primos. ARITM Y DEMOSTRACIONES ETICA MODULAR PENDIENTES Y CRIPTOGRAF´ IA 11. ¡Esto es exponencial en k ! ¿Es posible mejorar esto? Si en lugar de dejar crecer y y z indiscriminadamente. dado N ∈ Z+ . es posible demostrar que la complejidad del algoritmo completo es O(k 3 ). < p2 < . Ejercicio. y |a| a la cantidad de bits de a. En otras palabras. siendo a un n´ umero de 2k bits y n un n´ umero de k bits. 11. las multiplicaciones no ser´ an tan costosas. 11. y demostraciones pendientes Teorema fundamental de la aritm´ etica Teorema.6. 104 P. z ← 1.4. Si llamamos xi . Demuestre que Tm es O(k 2 ).1.´ ´ 11. 2004 . vemos que: i ≤ log2 n + 1 ≤ k . Chile. ITULO 11.2. 11. 2: while x = 0 do 3: if x es impar then 4: z ← z · y m´ od n 5: end if 6: x← x 2 7: y ← y 2 m´ od n 8: end while 9: return z 11. zi a los valores de x. c Luis Dissett. calcular z · y e y 2 es aproximadamente. donde Tm es el tiempo que toma calcular a m´ od n. Complejidad del algoritmo anterior ¿Cu´ al es la complejidad del procedimiento anterior para calcular be m´ od n? Supondremos que sumar dos n´ umeros de k bits toma O(k ) operaciones y multiplicar dos n´ umeros de k bits toma O(k 2 ) operaciones (esta u ´ltima suposici´ on puede ser mejorada). existe b ∈ {1. ∗ on de Z∗ Fijemos a ∈ Zp .6. Adem´ as. existe b ∈ {1. tiene las siguientes propiedades: b ∈ Z∗ p Est´ a definida en todo Z∗ p. . . entonces a divide a c. b) = 1. Si mcd(a. . . Sean p. . a | bc. Ejercicio. p − 1}. p = pi . Como fa (1). . 1 ≤ i ≤ n. es una funci´ on sobreyectiva de Z∗ p en Zp . Usando los dos lemas y el corolario anterior. Toma s´ olo valores en Z∗ p . 2004 .6. 3 | 12 → 3 | 2 · 6 → 3 | 2 o 3 | 6. a.´ ´ CAP´ ITULO 11.2. Ejemplo. Algunos hechos ya conocidos: Para p primo. 2} f2 = (2 · x) m´ od 3. p − 1}. p − 1}. Si p | ab. Sean n ≥ 1 y p1 . fa (p − 1) es una permutaci´ p . m´ as inducci´ on por curso de valores: Lema. p primo. la funci´ on fa definida por: fa (b) = ab m´ od p. . p − 1} tal que ab ≡ 1 Para p primo. p − 1} tal que ab ≡ c (m´ od p). es decir. Z∗ 3 = {1. Corolario. con . 1. Consideremos p = 3. . x = 1. ∗ Toma todos los valores en Zp . . entonces p | a o p | b. entonces. es decir.C. f2 (1) = 2. se puede demostrar lo siguiente: 3. Para p primo. . . p primo. pn primos. demuestre el TFA. b. Sean a. . una permutaci´ on de {1. 2}. y cada a ∈ {1. p2 .U. 11. se tiene p−1 p−1 fa (b) b=1 p−1 = b=1 p−1 b ((ab) b=1 p−1 mod p) = b=1 b p−1 / mod p ( b=1 [(ab) mod p]) p−1 mod p = ( b=1 p−1 b) mod p ( b=1 (ab)) mod p = ( b=1 b) mod p El u ´ltimo paso a la izquierda lo justifica la propiedad de homomorfismo. . · · · . es tambi´ en 1-1 ah´ ı. b ∈ Z. y todo a. Chile. 2. Ejemplo. . . Luego: p−1 p−1 (( b=1 c Luis Dissett. 2200 = 23 · 52 · 111 . 2. . . . 11. El teorema se demuestra usando los siguientes tres siguientes resultados. Si p divide al producto p1 · · · pn . Y CRIPTOGRAF Y DEMOSTRACIONES IA PENDIENTES Ejemplo. tales que a = 0. nunca fa (b) = 0. para alg´ un i. . OTROS ARITM TEOREMAS ETICA MODULAR IMPORTANTES. . . b) · ap−1 ) mod p = ( b=1 b) mod p 105 P. c ∈ {1. f2 (2) = 1. Luego. . El u ´ltimo ingrediente que necesitamos para demostrar el TFA es el siguiente: Lema. y todo a ∈ {1. c ∈ Z. Es una permutaci´ on de Z∗ p. . Demostraci´ on del peque˜ no teorema de Fermat (m´ od p). . . con un resultado general de la teor´ ıa de cuerpos (Zp es un cuerpo): en un cuerpo. para todo a ∈ {1. Este procedimiento puede entenderse como inspirado en el proceso de interpolaci´ on de Lagrange: si se quiere hallar un polinomio p(x) con valores v1 . queda: ap−1 mod p = 1. Podemos multiplicar a ambos lados por ´ el. An´ alogamente. es decir. Dados x. 1] es un grupo. . El peque˜ no teorema de Fermat sale como consecuencia inmediata de un resultado general de la teor´ ıa de grupos:. Teorema (Lagrange). c = k · b. vn en los puntos x1 . . Caso Particular: [{1. es decir. y que: 1. Entonces. . de la teor´ ıa de grupos! 11.3. Ahora. p − 1}. ∗. xn . ¡Notar el poder de resultados generales del ´ algebra abstracta. ( b=1 b) mod p ∈ Zp y es distinto de 0. x mod b = v Hay que demostrar que x = x . De 1 y 3. luego. x son no negativos y x. ARITM Y DEMOSTRACIONES ETICA MODULAR PENDIENTES Y CRIPTOGRAF´ IA p−1 p−1 ((( b=1 b) p−1 mod p) · ((ap−1 ) mod p)) mod p = ( b=1 b) mod p. se tiene ap−1 = 1. podemos tomar n p(x) = i=1 vi pi (x). n ∈ N. uno de los factores tendr´ ıa que ser divisible por p. . Entonces. . c Luis Dissett. en este caso. 2004 . y. . p − 1} .6. z ∈ Z − {0}. su cardinalidad es p − 1. de donde a | (x − x ). Luego: (x − x ) = k · a · b. e] y para todo g ∈ G: g |G| = e. . El (gran) teorema de Fermat xn + y n = z n . b) = 1. As´ ı. por lo que necesariamente x − x = 0. b | (x − x ). luego. x mod b = v 3.C. ab divide a (x − x ). (x − x ) = c · a para alg´ un c entero. . de donde b divide a c · a. entonces a = 0 o b = 0. v2 . x mod a = x mod a. . lo que no es posible pues todos son menores que p). . x mod a = u 4. x < ab. ITULO 11. pertenece a Z∗ p (si lo fuera. Chile. Pero mcd(a. de donde b | c. Otra manera de justificarlo. un procedimiento para construir x. · mod p. x2 . x < ab. Pero x. es decir. es decir. Para todo grupo finito [G. .6.´ ´ 11. x mod a = u 2. . donde pi es un polinomio que vale 1 en xi y 0 en todos los xj con j = i. Unicidad Demostraci´ on del teorema chino de los restos Supongamos 0 ≤ x. . n > 2. OTROS TEOREMASCAP IMPORTANTES. existe el inverso multiplicativo del producto en Z∗ p . si a · b = 0. “no hay divisores del cero”. . Existencia Daremos una demostraci´ on constructiva.4.6. 106 P. el producto ser´ ıa divisible por p. como al lado izquierdo tenemos la multiplicaci’on en Z∗ p . se tiene 11.U. . Los valores sa y tb juegan el rol de los pi en la interpolaci´ on de Lagrange: sa y tb satisfacen tb tb sa sa De aqu´ ı. con s.C.U. Encuentre una f´ ormula para pi (x). 107 P.6. 1.´ ´ CAP´ ITULO 11. 11. Chile. OTROS ARITM TEOREMAS ETICA MODULAR IMPORTANTES. 0. 2004 . obtenemos que x = (sav + tbu) mod ab (que es computable eficientemente) satisface las condiciones pedidas. Y CRIPTOGRAF Y DEMOSTRACIONES IA PENDIENTES Ejercicio. Sabemos que existe una CLE: s · a + t · b = 1. c Luis Dissett. mod a mod b mod a mod b = = = = 1. Esta CLE es computable eficientemente . 0. t ∈ Z.
Copyright © 2024 DOKUMEN.SITE Inc.