Conceptos elementales de lógica informática Nelson Becerra Correa Nelson Becerra Correa Nacido en Guicán, Colombia. Ingeniero de sistemas; impartió las cátedras de Inteligencia Artificial y Lógica Informática en la Facultad Tecnológica, de la Universidad Distrital Francisco José de Caldas. Actualmente es docente en la misma Universidad. Conceptos Elementales de Lógica Informática Nelson Becerra Correa Primera Edición FB C Índice general Contents I 1. Conceptos Generales de Lógica IX 1.1. Oraciones y proposiciones . . . . . . . . . . . . . . . . . . . . . . . . x 1.2. Verdad y Validez . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi 1.3. Sintaxis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii 1.4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii 1.4.1. Formalizar proposiciones . . . . . . . . . . . . . . . . . . . . xiv 1.4.2. Formalizar inferencias . . . . . . . . . . . . . . . . . . . . . . xvi 1.4.3. Ejemplos de inferencias ordenadas . . . . . . . . . . . . . . . . xvii 1.4.4. Ejemplo de inferencias desordenadas . . . . . . . . . . . . . . xxii 1.5. Sı́mbolos utilizados en este libro . . . . . . . . . . . . . . . . . . . . . xxv 2. Lógica proposicional XXVII 2.1. Lógica Proposicional . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvii 2.1.1. Sintaxis de la lógica proposicional . . . . . . . . . . . . . . . . xxviii 2.1.2. Subfórmulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxx 2.1.3. Semántica de la lógica proposicional . . . . . . . . . . . . . . . xxxi 2.2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxi 2.2.1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxii 2.3. Formas normales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlii 2.3.1. Forma Normal Conjuntiva . . . . . . . . . . . . . . . . . . . . xlii 2.3.2. Forma Normal Disyuntiva . . . . . . . . . . . . . . . . . . . . xliii i ÍNDICE GENERAL ii 2.4. Resolución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlviii 2.5. Método de Resolución . . . . . . . . . . . . . . . . . . . . . . . . . . xlviii 2.5.1. Tableaux semánticos representados como árboles . . . . . . . lvi 3. Lógica predicados LXIX 3.1. Lenguaje de la lógica . . . . . . . . . . . . . . . . . . . . . . . . . . . lxx 3.2. Lenguaje del calculo de predicados . . . . . . . . . . . . . . . . . . . lxx 3.2.1. Árbol de una fórmula . . . . . . . . . . . . . . . . . . . . . . . lxxiv 3.3. Semántica de la logica de predicados . . . . . . . . . . . . . . . . . . lxxvii 3.3.1. Equivalencias lógicas: . . . . . . . . . . . . . . . . . . . . . . . lxxx 3.4. Indecibilidad del calculo de predicados . . . . . . . . . . . . . . . . . lxxxi 3.5. Ejercicios calculo de predicados . . . . . . . . . . . . . . . . . . . . . lxxxi 4. Procedimiento de prueba de Lógica predicados LXXXV 4.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lxxxv 4.2. Formas Normales de la Lógica de Predicados . . . . . . . . . . . . . . lxxxv 4.2.1. Forma clausal . . . . . . . . . . . . . . . . . . . . . . . . . . . lxxxv 4.3. Forma Normal de Skolem . . . . . . . . . . . . . . . . . . . . . . . . . lxxxviii 4.3.1. Teorema de Herbrand . . . . . . . . . . . . . . . . . . . . . . . xci 4.4. Tableaux semánticos de primer orden . . . . . . . . . . . . . . . . . . xciii 4.5. Unificación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xcvi 4.6. Resolución de primer orden . . . . . . . . . . . . . . . . . . . . . . . xcviii 5. Deducción Natural CI 5.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ci 5.2. Conceptos Generales . . . . . . . . . . . . . . . . . . . . . . . . . . . cii 5.2.1. Reglas empleadas en la deducción natural . . . . . . . . . . . cii 5.2.2. Prueba directa . . . . . . . . . . . . . . . . . . . . . . . . . . cv 5.2.3. Prueba condicional : . . . . . . . . . . . . . . . . . . . . . . . cvi 5.2.4. Pruebas por reducción al absurdo . . . . . . . . . . . . . . . . cvii 5.2.5. Notación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . cix ÍNDICE GENERAL iii 5.2.6. Las reglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . cx 5.2.7. Las reglas de inferencia en términos de la Deducción Natural . cxiii 5.3. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . cxvii 6. Técnicas Resolución SAT CXXV 6.1. El Problema SAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . cxxvi 6.1.1. Que es SAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . cxxvi 6.1.2. Areas de Investigación de SAT . . . . . . . . . . . . . . . . . . cxxvii 6.1.3. Casos de prueba SAT . . . . . . . . . . . . . . . . . . . . . . . cxxviii 6.1.4. Métodos de solución . . . . . . . . . . . . . . . . . . . . . . . cxxx 6.1.5. Breve revision de las técnicas para solucionar SAT . . . . . . . cxxxii 6.1.6. Otros Trabajos . . . . . . . . . . . . . . . . . . . . . . . . . . cxxxv 6.2. Que procesos son importantes en un Resolvedor SAT . . . . . . . . . cxlvi 6.2.1. Algoritmos Backtracking Search . . . . . . . . . . . . . . . . . cxlvii 6.2.2. Estructuras de Datos . . . . . . . . . . . . . . . . . . . . . . . cxlviii 6.2.3. Heurı́sticas de selección de variable . . . . . . . . . . . . . . . cxlix 6.2.4. Aprendizaje de Cláusulas dirigidas por conflictos . . . . . . . cli 6.2.5. Backtracking no-cronologico . . . . . . . . . . . . . . . . . . . cliii 6.2.6. Reinicios y aleatorización . . . . . . . . . . . . . . . . . . . . . cliii 6.2.7. Búsqueda Local . . . . . . . . . . . . . . . . . . . . . . . . . . cliv 6.3. Caracterı́sticas de algunos Algoritmos SAT . . . . . . . . . . . . . . . clv 6.3.1. Algoritmos Completos . . . . . . . . . . . . . . . . . . . . clv 6.3.2. Algoritmos Incompletos . . . . . . . . . . . . . . . . . . . clxii 6.3.3. Competiciónes SAT . . . . . . . . . . . . . . . . . . . . . . . . clxiv 6.4. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . clxvii Prefacio vi ”... Cuando conozco a alguien no me importa si es blanco, negro, judı́o o musulmán. Me basta con saber que es un ser humano. Peor cosa no puede ser1 ...” Walt Whitman ´´Maı́tres anciens de Thomas Bernhard :2 La escuela es la escuela del Estado, donde se hace de los jóvenes criaturas del Estado, es decir, ni más ni menos que agentes del Estado. Cuando entraba en la escuela, entraba en el Estado, y como el Estado destruye a los seres, entraba en el establecimiento de destrucción de seres. [...] El Estado me ha hecho entrar en él por la fuerza, como por otra parte a todos los demás, y me ha vuelto dócil a él, [...], y ha hecho de mı́ un hombre estatizado, un hombre reglamentado y registrado y dirigido y diplomado, y pervertido y deprimido, como todos los demás. Cuando vemos a los hombres, no vemos más que hombres estatizados, servidores del Estado, quienes, durante toda su vida sirven al Estado y, por lo tanto, durante toda su vida sirven a la contra-natura ... Soy de la opinión que todos los paı́ses y todas las religiones, a la que se los conoce de cerca, son igual de horribles. Con el tiempo se descubre que la estructura es en todas partes la misma, tanto en las dictaduras como en las democracias; en el fondo, para el individuo son igual de horribles. ¿Pero este fragmento que tiene que ver con un libro de lógica y por que se lo incluye en el prologo ?. Veamos: Empezando a responder la ultima pregunta. Simplemente, por que me gusto. Respecto al primer interrogante, yo pienso, que todo depende del cristal con que se mire. Este fragmento de Bernhard -En mi infinita ignorancia-. Resume nuestro comportamiento, describe el motor que nos impulsa a hacer cosas y además de alguna manera al que quiera, permearse lo hace analizar su esencia. De otro lado, y para respetar las opiniones un libro sobre el lenguaje matemático -para los que saben matemáticas y los ortodoxos-, solo deberı́a contener sı́mbolos y demostraciones complicadisimas. Y ser el producto de gentes ı̈luminadas”que levitan y están como dice Nietzsche ”Mas allá del bien y del mal”. sobre este aspecto no discuto, -por que no quiero, no puedo y me da miedo- y les presento mis disculpas. El libro titulado Çonceptos elementales de lógica informática.o sea -La utilización por parte de la ciencias de la computación, de las herramientas desarrolladas por la lógica-; es producto de un compromiso entre yo, Nelson Becerra Correa, mayor de edad -bastante mayor de edad- en uso de mis facultades -las pocas que tengo- fı́sicas y mentales y de otro lado la Universidad Distrital Francisco Jose de Caldas. Como compromiso para otorgar el ”disfruteası́ consta en el acta- del año sabático. 1 Según Facundo Cabral, el ultimo fragmento del texto: ’... ,peor cosa no puede ser’; se lo adjudican a Mark Twain 2 Thomas Bernhard Ecrivain autrichien [Littérature étrangère] Né à Herleen le 09 février 1931 Décédé à Gmunden le 12 février 1989 vii Este libro, esta dividido en seis capı́tulos. El primero de ellos habla de los conceptos generales de la lógica. Respecto al segundo se tocan los conceptos elementales de la lógica de proposiciones. El tercer capitulo habla sobre la lógica de predicados. En el cuarto se desarrollan los procedimientos de prueba de la lógica de predicados. El Quinto trata sobre la Deducción Natural y el Ultimo y sexto capitulo trata el tema de la resolución del problema SAT de una manera muy elemental. Este libro esta diseñado para abarcar el curso de Lógica Informática en una carrera de Ingenierı́a o Tecnologı́a. A qui no se inventa nada, pero como dice Andre Guide ”Todas las cosas están ya dichas; pero como nadie escucha, hay que volver a empezar siempre”. Algunos de los temas tratados son conocidos desde hace miles de años y han sido explicados por muchos autores con la formación adecuada para detallarlos y demostrarlos de manera ortodoxa con mayor claridad. Por tal razón yo sugiero al amable lector que se remita a ellos. Si de alguna manera, este libro, contribuye a aclarar dudas o crearlas me doy por bien servido. Si por el contrario, no ayuda a nadie, de igual manera me siento satisfecho pues disfrute el hacerlo. Capı́tulo 1 Conceptos Generales de Lógica ”... Colombia asesina, malapatria, ¡paı́s hijo de puta engendro de España! ¿A quién estás matando ahora, loca? ...” El Desbarrancadero, Fernando Vallejo ix 1.1. Oraciones y proposiciones x Introducción La es un modelo matemático del pensamiento deductivo; el formalismo lógico es atractivo porque sugiere una forma potente para derivar conocimiento nuevo a partir de hechos comprobados: la deducción mate-mática. Utilizando la lógica podemos concluir que una proposición nueva es cierta demostrando que se deduce de proposiciones conocidas, ésto nos permite usar la deducción como una forma de derivar respuestas a preguntas y solucionar problemas. 1.1. Oraciones y proposiciones Vamos por partes dijo del descuartizador. Primero debemos recordar que es una oracion y cuales de ellas son : Segun la real academia de la lengua una oracion es: “ La oración es la mı́nima unidad del habla con sentido completo, que posee un verbo. Esto significa que es el fragmento más pequeño del enunciado que comunica una idea total, y posee independencia (es decir, podrı́a sacarse del contexto y seguir comunicando, no lo mismo, pero algo)”. Clases de oraciones: Las las podemos clasificar de la siguiente manera: Aseverativas o declarativas: Las cuales afirman o niegan algo Desiderativas : Expresan un deseo, Ejmp: Te deseo maria Tipos de oraciones Interrogativas : son las utilizadas para hacer preguntas Exclamativas o admirativas : expresan sorpresa o admiracion Exhortativas o imperativas : se utilizan para exhortar dar un mandato o hacer la prohibicion. Figura 1.1: Calsificacion de las oraciones Una proposicion debe cumplir cuatro condiciones estas son: 1. Debe ser una oracion 2. Debe ser oracion Aseverativa o declarativa 3. La oracion debe de tern sentido decir de ella que sea verdadera o falsa 4. La oracion no debe cambiar con el tiempo. A su vez las proposiciones se pueden clasificar en 2: OTROS TÍTULOS DE ESTA COLECCIÓN: Momento geométrico Carlos Orlando Ochoa Castillo Conceptos básicos de electricidad y magnetismo Patricia Abdel Este libro está dividido en seis capítulos. El primero habla de los conceptos generales de la lógica; en el segundo se tratan los conceptos elementales de la lógica de proposiciones; el tercero trata sobre la lógica de predicados; posteriormente, se desarrollan los procedimientos de prueba de la lógica de predicados; en el quinto se aborda la deducción natural y por último, se trata el tema de la resolución del problema SAT de una manera muy elemental. Este texto está diseñado para abarcar el curso de Lógica Informática de la carrera de Ingeniería o Tecnología. Aquí no se inventa nada, pero como dice André Guide “Todas las cosas están ya dichas; pero como nadie escucha, hay que volver a empezar siempre”. Algunos de los temas tratados son conocidos desde hace miles de años y han sido explicados por muchos autores con la formación adecuada para detallarlos y demostrarlos de manera ortodoxa y con claridad.