Contenido - odin.ces.edu.coodin.ces.edu.co/Contenidos_Web/41027474.pdf · X MATEMÁTICA DISCRETA y...

9
CONTENIDO vii Contenido Prólogo ..................................................................................................................... XVIl Prólogo a la edición en español .............................................................................. XXI 1 Cálculo proposicional ........................................................................................ 1 1.1 Argumentos y proposiciones lógicas 1 1.1.1 Introducción 1 1.1.2 Algunos argumentos lógicos importantes 2 1.1.3 Proposiciones 4 1.2 Conexiones lógicas 5 1.2.1 Introducción 5 1.2.2 Negación 6 1.2.3 Conjunción 6 1.2.4 Disyunción 7 1.2.5 Condicional 8 1.2.6 Bicondicional 11 1.2.7 Comentarios adicionales sobre conexiones 11 1.3 Proposiciones compuestas 12 1.3.1 Introducción 12 1.3.2 Expresiones lógicas 12 1.3.3 Análisis de proposiciones compuestas 14 1.3.4 Reglas de prioridad 17 1.3.5 .Evaluaciónde expresiones y tablas de verdad 18 1.3.6 Ejemplos de proposiciones compuestas 19 1.4 Tautología y contradicciones .. 22 1.4.1 Introducción. 22

Transcript of Contenido - odin.ces.edu.coodin.ces.edu.co/Contenidos_Web/41027474.pdf · X MATEMÁTICA DISCRETA y...

Page 1: Contenido - odin.ces.edu.coodin.ces.edu.co/Contenidos_Web/41027474.pdf · X MATEMÁTICA DISCRETA y LÓGICA 4 Prolog 173 4.1 Prolog básico 174 4.1.1 Introducción 174 4.1.2 Hechos,

CONTENIDO vii

Contenido

Prólogo ..................................................................................................................... XVIl

Prólogo a la edición en español .............................................................................. XXI

1 Cálculo proposicional ........................................................................................ 1

1.1 Argumentos y proposiciones lógicas 11.1.1 Introducción 11.1.2 Algunos argumentos lógicos importantes 21.1.3 Proposiciones 4

1.2 Conexiones lógicas 51.2.1 Introducción 51.2.2 Negación 61.2.3 Conjunción 61.2.4 Disyunción 71.2.5 Condicional 81.2.6 Bicondicional 111.2.7 Comentarios adicionales sobre conexiones 11

1.3 Proposiciones compuestas 121.3.1 Introducción 121.3.2 Expresiones lógicas 121.3.3 Análisis de proposiciones compuestas 141.3.4 Reglas de prioridad 171.3.5 .Evaluaciónde expresiones y tablas de verdad 181.3.6 Ejemplos de proposiciones compuestas 19

1.4 Tautología y contradicciones .. 221.4.1 Introducción. 22

Page 2: Contenido - odin.ces.edu.coodin.ces.edu.co/Contenidos_Web/41027474.pdf · X MATEMÁTICA DISCRETA y LÓGICA 4 Prolog 173 4.1 Prolog básico 174 4.1.1 Introducción 174 4.1.2 Hechos,

viii MATEMÁTICA DISCRETA y LÓGICA

1.4.2 Tautologías 221.4.3 Tautología y razonamiento válido 241.4.4 Contradicciones 251.4.5 Tipos importantes de tautologías 25

1.5 Equivalencias lógicas y su utilización 271.5.1 Introducción 271.5.2 Demostración de equivalencias lógicas mediantes tablas de verdad 271.5.3 Álgebra declarativa 281.5.4 Eliminación de condicionales y bicondicionales 301.5.5 Leyes para el álgebra declarativa 311.5.6 Métodos abreviados para manipular expresiones 321.5.7 Formas normales 341.5.8 Tablas de verdad y formas normales disyuntivas 361.5.9 Formas normales conjuntivas y complementación 37

1.6 Implicaciones y derivaciones lógicas 401.6.1 Introducción 401.6.2 Implicaciones lógicas 401.6.3 Demostraciones de validez mediante tablas de verdad 411.6.4 Demostraciones 431.6.5 Sistemas para derivaciones 461.6.6 El Teorema de la deducción 49

2 Cálculo de predicados oo oo 55

2.1 Componentes sintácticos del cálculo de predicados 562.1.1 Introducción... 562.1.2 El universo de discurso 562.1.3 Predicados 572.1.4 Variables y particularizaciones (casos o ejemplares) 592.1.5 Cuantificadores 612.1.6 Restricciones de los cuantificadores a ciertos grupos 64

2.2 Interpretaciones y validez 662.2.1 Introducción... 662.2.2 Interpretaciones 662.2.3 Validez 692.2.4 Expresiones no válidas 712.2.5 Demostración de la validez 73

2.3 Derivaciones 752.3.1 Introducción 752.3.2 Particularización universal 752.3.3 Generalización universal... 772.3.4 El Teorema de la deducción y la generalización universal 792.3.5 Eliminación de los cuantificadores universales 802.3.6 Generalización existencial 822.3.7 Particularización existencial 83

Page 3: Contenido - odin.ces.edu.coodin.ces.edu.co/Contenidos_Web/41027474.pdf · X MATEMÁTICA DISCRETA y LÓGICA 4 Prolog 173 4.1 Prolog básico 174 4.1.1 Introducción 174 4.1.2 Hechos,

CONTENIDO ix2.4 Equivalencias lógicas 87

2.4.1 Introducción 872.4.2 Equivalencias lógicas básicas 872.4.3 Otras equivalencias importantes 89

2.5 Lógica de las ecuaciones 912.5.1 Introducción 912.5.2 Igualdad 912.5.3 Igualdad y unicidad 942.5.4 Funciones y lógica de ecuaciones 962.5.5 Composición de funciones 982.5.6 Propiedades de los operadores 1002.5.7 Elementos nulo e identidad 1032.5.8 Las derivaciones en la lógica de ecuaciones 1062.5.9 La lógica de ecuaciones en la práctica 108

2.5.10 Álgebra de Boole 110

3 Inducción y recursividad 115

3.1 La inducción en números naturales 1173.1.1 Introducción 1173.1.2 Los números naturales 1173.1.3 Inducción matemática 1183.1.4 La inducción para demostrar propiedades de la suma 1223.1.5 Modificación de la base inductiva 1243.1.6 Inducción fuerte 125

3.2 Sumas y construcciones relacionadas 1273.2.1 Introducción 1273.2.2 Definiciones recursivas de sumas y productos 1273.2.3 Identidades que implican sumas 1303.2.4 Sumas dobles y matrices 134

3.3 Demostración por recursividad 1363.3.1 Introducción 1363.3.2 Definiciones recursivas 1373.3.3 Sucesiones fescendentes 1413.3.4 El Principio de demostraciones por recursividad 1423.3.5 Inducción estructural 144

3.4 Aplicaciones de la recursividad a la programación 1483.4.1 Introducción 1483.4.2 La programación como composición de funciones 1493.4.3 La recursividad en los programas 1533.4.4 Programas que implican árboles 157

3.5 Funciones recursivas 1613.5.1 Introducción 1613.5.2 Funciones recursivas primitivas 1633.5.3 Programación y recursividad primitiva 1673.5.4 Minimalizacíón 169

Page 4: Contenido - odin.ces.edu.coodin.ces.edu.co/Contenidos_Web/41027474.pdf · X MATEMÁTICA DISCRETA y LÓGICA 4 Prolog 173 4.1 Prolog básico 174 4.1.1 Introducción 174 4.1.2 Hechos,

X MATEMÁTICA DISCRETA y LÓGICA

4 Prolog 173

4.1 Prolog básico 1744.1.1 Introducción 1744.1.2 Hechos, reglas y consultas 1744.1.3 Derivaciones que implican hechos 1774.1.4 Derivaciones que implican reglas 1784.1.5 Particularizaciones y unificación 1824.1.6 Retroceso (backtracking) 1834.1.7 Resolución 185

4.2 Ejecución y depuración de programas ...................................................................4.2.1 Introducción ............

4.2.2 Compiladores e intérpretes de Prolog ........................................................4.2.3 Consulta de una base de datos ...................................................................4.2.4 Depuración y seguimiento ......

4.3 Características adicionales de Prolog ..........4.3.1 Introducción... ........4.3.2 Entrada y salida..........................................................................................4.3.3 Estructuras.................................................................................................

4.3.4 Notación infija ...........................................................................................4.3.5 Aritmética..................................................................................................4.3.6 Predicados de igualdad ..............................................................................

4.4 Recursividad..........................................................................................................4.4.1 Introducción .............................4.4.2 Predicados recursivos .........................4.4.3 Terminación...............................................................................................4.4.4 Bucles y Prolog .........................4.4.5 Listas..........................................................................................................

4.4.6 Predicados recursivos que contienen listas ................................................4.4.7 Refinamiento sucesivo ... ........

4.5 Negación en Prolog ...............................................................................................4.5.1 Introducción... ....4.5.2 Prolog como lenguaje lógico .....................................................................4.5.3 La negación como fracaso .........................................................................4.5.4 Utilización del orden de cláusulas .............................................................4.5.5 Cortes.........................................................................................................

4.6 Aplicación de Prolog a la lógica ............................................................................4.6.1 Introducción ......

4.6.2 Las listas como expresiones lógicas ..........................................................4.6.3 Representación de expresiones lógicas como estructuras .........................

5 Conjuntos y relaciones ......................................................................................

5.1 Conjuntos y operaciones de conjuntos ..................................................................5.1.1 Introducción ..........................................................5.1.2 Los conjuntos y sus miembros ...................................................................5.1.3 Subconjuntos .....

188188188189191

192192192193194195196

198198198200202202204207

209209209212212213

215215216217

223

223223224226

Page 5: Contenido - odin.ces.edu.coodin.ces.edu.co/Contenidos_Web/41027474.pdf · X MATEMÁTICA DISCRETA y LÓGICA 4 Prolog 173 4.1 Prolog básico 174 4.1.1 Introducción 174 4.1.2 Hechos,

5.1.45.1.55.1.65.1.7

CONTENIDO

Intersecciones ............................................................................................Uniones ......................................................................................................

Diferencias y complementos ......................................................................Expresiones que involucran conjuntos ...........................

xi228229230232

5.2 Tuplas, sucesiones y conjuntos potencia 2365.2.1 Introducción 2365.2.2 Tuplas y productos cartesianos 2375.2.3 Sucesiones y cadenas 2395.2.4 Conjuntos potencia 2415.2.5 Tipos y signaturas 241

5.3 Relaciones 2445.3.1 Introducción 2415.3.2 Relaciones y su representación 2415.3.3 Dominios y rangos 2465.3.4 Algunas operaciones de relaciones 2475.3.5 Composición de relaciones 2505.3.6 Ejemplos 254

5.4 Propiedades de las relaciones 2555.4.1 Introducción 2555.4.2 Relaciones sobre un conjunto 2555.4.3 Relaciones reflexivas 2565.4.4 Relaciones simétricas 2585.4.5 Transitividad 2595.4.6 Cierres 2615.4.7 Relaciones de equivalencia 2625.4.8 Ordenes parciales 264

6 Funciones ........................................................................................................... 273

6.1 Representaciones y manipulaciones que involucran funciones 2736.1.1 Introducción 2736.1.2 Definiciones y notación 2746.1.3 Representaciones de funciones 2766.1.4 La notación lambda 2776.1.5 Restricciones y sobrecarga 2796.1.6 Composición de funciones 2806.1.7 Inyecciones, sobreyecciones (o epiyecciones) e inversas 2836.1.8 Creación de inversas mediante creación de tipos 287

6.2 Enumeraciones, isomorfismos y homomorfismos 2896.2.1 Introducción 2896.2.2 Enumeraciones 2906.2.3 Conjuntos contables e incontables 2926.2.4 Permutaciones y combinaciones 2956.2.5 Isomorfismos y homomorfismos 297

6.3 Complejidad computacional 3006.3.1 Introducción 3006.3.2 Polinomios y algoritmos de tiempo polinómico 301

Page 6: Contenido - odin.ces.edu.coodin.ces.edu.co/Contenidos_Web/41027474.pdf · X MATEMÁTICA DISCRETA y LÓGICA 4 Prolog 173 4.1 Prolog básico 174 4.1.1 Introducción 174 4.1.2 Hechos,

xii MATEMÁTICA DISCRETA Y LÓGICA

6.3.3 Funciones y algoritmos relacionados con las exponenciales 3056.3.4 Los límites de la computabilidad 3096.3.5 Análisis asintótico 3116.3.6 Divide y vencerás 3156.3.7 Polinomios no deterministas 318

6.4 Relaciones de recurrencia ..........6.4.1 Introducción...............................................................................................

6.4.2 Relaciones de recurrencia homogéneas .....................................................6.4.3 Ecuaciones de recurrencia no homogéneas ...............................................

6.5 Miranda..................................................................................................................6.5.1 Introducción...............................................................................................6.5.2 El nivel de órdenes .....................................................................................6.5.3 Definiciones de función ..........6.5.4 Tipos, funciones y declaraciones ..........................6.5.5 Reconocimiento de patrones y reescritura .................................................6.5.6 Un problema de programación ..................................................................

7 Grafos y árboles. .............................

7.1 Introducción y ejemplos de modelado de grafos ...................................................7.2 Definiciones básicas de la teoría de grafos ............................................................7.3 Caminos, accesibilidad y conexiones ....................................................................7.4 Cálculo de caminos a partir de una representación matricial de los grafos ...........7.5 Recorrido de grafos representados como listas de adyacencia ..............................

7.5.1 Introducción...............................................................................................

7.5.2 Representación de grafos mediante listas de adyacencia ...........................7.5.3 Búsqueda en amplitud ................................................................................7.5.4 Búsqueda en profundidad ......7.5.5 El Algoritmo de Dijkstra para la búsqueda de caminos mínimos .............

7.6 Árboles y árboles de expansión .............................................................................7.6.1 Introducción...............................................................................................7.6.2 Árboles libres .............................................................................................

7.6.3 Árboles de expansión .................................................................................7.6.4 Árboles de expansión mínimos ..................................................................

7.7 Redes de planificación ...........................................................................................7.7.1 Introducción...............................................................................................

7.7.2 Un modelo de administración de proyectos ...............................................7.7.3 Ordenación topológica .....................

8 Especificación formal de requisitos en Z .........................................................8.1 Introducción...........................................................................................................8.2 El ciclo vital del software ......................8.3 La necesidad de las especificaciones formales ......................................................8.4 Introducción a Z ....................................................................................................

8.4.1 Introducción... ...................................................8.4.2 Alfabeto y elementos léxicos ....................................

321321323326

330330330331333335337

341

342348355363376376376379382386

391391393393399

403403403411

419

419420423425425426

Page 7: Contenido - odin.ces.edu.coodin.ces.edu.co/Contenidos_Web/41027474.pdf · X MATEMÁTICA DISCRETA y LÓGICA 4 Prolog 173 4.1 Prolog básico 174 4.1.1 Introducción 174 4.1.2 Hechos,

8.4.38.4.48.4.58.4.68.4.78.4.8

CONTENIDO

Tipos y declaraciones ...............................................................................Especificación de un sistema mediante lógica y conjuntos .....................Esquemas .................................................................................................Relaciones ................................................................................................Funciones .................................................................................................Sucesiones ................................................................................................

xiii426428432437443449

9 Verificaciónde programas 459

9.1 Conceptos preliminares 4609.1.1 Introducción 4609.1.2 Programas y códigos 4609.1.3 Aserciones (asertos) 4619.1.4 Corrección 462

9.2 Reglas generales relativas a las precondiciones y postcondiciones 4649.2.1 Introducción 4649.2.2 Reforzamiento de precondiciones 4649.2.3 Debilitamiento de postcondiciones 4669.2.4 Reglas de conjunción y disyunción 467

9.3 Verificaciónde códigos sin bucles 4699.3.1 Introducción 4699.3.2 Sentencias de asignación 4709.3.3 Concatenación de código 4729.3.4 La sentencia if 476

9.4 Bucles y arrays 4799.4.1 Introducción.. 4799.4.2 Una regla while preliminar 4799.4.3 La regla while general 4849.4.4 Arrays 4859.4.5 Terminación del programa 489

10 Gramáticas, lenguajes y análisis sintácticos 493

10.1 Lenguajes y gramáticas 49410.1.1 Introducción 49410.1.2 Tratamiento de las gramáticas . 49510.1.3 Definición formal de un lenguaje 49810.1.4 Nociones de análisis sintáctico 50310.1.5 Gramáticas ambiguas 50810.1.6 Gramáticas reducidas 513

10.2 Análisis sintáctico descendente 51710.2.1 Introducción 51710.2.2 Estrategia general de análisis sintáctico descendente 51810.2.3 Análisis sintáctico descendente determinista con gramáticas LL(1) 521

Page 8: Contenido - odin.ces.edu.coodin.ces.edu.co/Contenidos_Web/41027474.pdf · X MATEMÁTICA DISCRETA y LÓGICA 4 Prolog 173 4.1 Prolog básico 174 4.1.1 Introducción 174 4.1.2 Hechos,

xiv MATEMÁTICA DISCRETA Y LÓGICA

11 Derivaciones 537

11.1 Derivaciones en cálculo proposicional 53711.1.1 Introducción 53711.1.2 Conceptos básicos de la derivación natural 53711.1.3 Implementación del teorema de la deducción 53811.1.4 Resolución 541

11.2 Algunos resultados del cálculo de predicados 54711.2.1 Introducción 54711.2.2 Complementos 54711.2.3 Formas normales prenex 548

11.3 Derivaciones en el cálculo de predicados 54911.3.1 Introducción 54911.3.2 Derivaciones canónicas 55011.3.3 Cuantificadores en la deducción natural 55411.3.4 Sustitución de cuantificadores por funciones y variables libres 55511.3.5 Resolución en el cálculo de predicados 556

12 Una panorámica de los sistemas de bases de datos relacionales 563

12.1 Conceptos básicos 56412.1.1 Introducción 56412.1.2 Definiciones y conceptos 56412.1.3 Ejemplo introductorio de una base de datos relacional 56412.1.4 Panoramica de un sistema de base de datos 568

12.2 El modelo de datos relacional 57112.2.1 Introducción.. 57112.2.2 Panorámica de la estructura relacional 57212.2.3 Las relaciones y sus esquemas 57212.2.4 Representación de las relaciones en el modelo lineal 57412.2.5 Reglas de integridad 575

12.3 Álgebra relacional 57612.3.1 Introducción 57612.3.2 Operaciones básicas 57612.3.3 Operaciones relacionales adicionales 57812.3.4 Ejemplos 585

12.4 Cálculo relacional 59012.4.1 Introducción 59012.4.2 Cálculo de tuplas 59112.4.3 Ejemplos 592

12.5 El lenguaje de consulta estructurado (SQL) 59512.5.1 Introducción... 59512.5.2 Definición de datos 59612.5.3 Administración de datos 59712.5.4 Consultas de datos 598

12.6 Comentarios finales 608

Page 9: Contenido - odin.ces.edu.coodin.ces.edu.co/Contenidos_Web/41027474.pdf · X MATEMÁTICA DISCRETA y LÓGICA 4 Prolog 173 4.1 Prolog básico 174 4.1.1 Introducción 174 4.1.2 Hechos,

CONTENIDO xv611Bibliografía ..............................................................................................................

Soluciones a los problemas pares ........................................................................... 613

Índice analítico ........................................................................ 687