Proposicional Proposicional Universidad Nacional del Nordeste Facultad de Ciencias Exactas Contenidos Introduccin Problema Sistemas de Produccin Bsqueda Programacin con Lgica Proposicional Sintaxis Consecuencia lgica Resolucin Resolucin Refutacin y Deduccin rbol de Resolucin Negacin Resolucin SLD Programacin con Lgica de Predicados Sintaxis Clusulas Unificacin Resolucin ProLog Ejemplos Lgica En la Lgica Formal se estudian los principios y mtodos a travs de los cuales podemos determinar la validez de argumentos, desde el punto de vista solamente de su estructura, sin tomar en cuenta el contenido semntico de las expresiones de los argumentos. Se puede decir que la Lgica es una herramienta para el anlisis Se puede decir que la Lgica es una herramienta para el anlisis de la veracidad de argumentos en base slo a la estructura correcta del razonamiento, su validez lgica, ms que la verdad o falsedad de las proposiciones que la componen. El anlisis de la veracidad de argumentos se realiza mediante ciertos axiomas bsicos y ciertas reglas de deduccin. Todos los hombres son mortales Todos los investigadores son hombres Todos los investigadores son mortales Lgica II Todos los investigadores son mortales Argentina est en frica o Argentina est en Asia. Argentina no est en Asia En consecuencia, Argentina est en frica. Lgica III Si el tren llega tarde y no hay taxis en la estacin, entonces Juan se retrasar a su cita. Juan no est retrasado para su cita. El tren lleg tarde. Por lo tanto hay taxis en la estacin. Si est lloviendo y Mara no tiene su paraguas, entonces se mojar. Mara no est mojada. Est lloviendo. Por lo tanto Mara tiene su Mara no est mojada. Est lloviendo. Por lo tanto Mara tiene su paraguas. Si p y no q, entonces r. No r. p. Por lo tanto, q. p r q p r q Lgica(s) Valores de Verdad Lgicas Multivaluadas Lgica Difusa (Continuo) Lgica Proposicional Clculo de Predicados Lgica de 2do Orden Orden Contexto Lgica Modal Necesariamente Posiblemente Proposiciones Las proposiciones son expresiones que pueden evaluarse a V o F. Son expresiones declarativas y nunca interrogativas o imperativas. Son Proposiciones No Son Proposiciones Hay vida en la tierra. La suma entre 2 y 5 es 7. Todos los hombres de Colombia son solteros. Todo nmero natural mayor que 2 es la suma de dos nmeros primos. Los cantantes no duermen. Comer mucho, engorda. El hombre desciende del elefante. Puedes pasarme la sal? Teclea exit Arriba Argentina! Levntate temprano! Has entendido lo que es una proposicin? Estudia esta leccin! Preparados, listos, ya! Son Proposiciones No Son Proposiciones Proposiciones Estudiaremos los principios para determinar la validez de argumentos conformados con proposiciones. Proposiciones simples o tomos: p, q Proposiciones compuestas: formadas por proposiciones simples a travs de conectores lgicos. p or q, r and s Conectivos Lgicos Operadores unarios: NEGACION: not, Operadores binarios: Operadores binarios: CONJUNCION: and, . DISYUNCION: or, v CONDICIONAL: implicacin, BICONDICIONAL: doble implicacin Formulas Bien Formadas Una frmula bien formada (fbf) es una expresin que representa una proposicin simple o compuesta, la cual esta bien escrita de acuerdo con determinada sintaxis. Las reglas de la sintaxis del Clculo Proposicional: Las reglas de la sintaxis del Clculo Proposicional: a) Un tomo es una frmula bien formada. b) Si G es una frmula bien formada entonces G tambin lo es. c) Si G y H son frmulas bien formadas, entonces tambin lo son: G . H G v H G H G H d) Todas las fbf's se obtienen aplicando a, b y c. Interpretacin Asignacin de valores de verdad para las proposiciones de una expresin. El significado de una formula proposicional se puede expresar por medio de una funcin: =: prop {verdadero, falso} La funcin = es una funcin de interpretacin que satisface: La funcin = es una funcin de interpretacin que satisface: F G F F . G F v G F G F G V V F V V V V V F F F V F F F V V F V V F F F V F F V V Interpretacin 2 Una frmula se dice vlida si es verdadera bajo cualquier interpretacin (tautologa). Una frmula es invlida si no es vlida. Una frmula es insatisfascible o inconsistente si es falsa bajo cualquier interpretacin (contradiccin), sino es satisfascible o consistente. consistente. Vlido Invlido Siempre verdadero A veces V o F Siempre falso Satisfacible Insatisfacible Leyes de Equivalencia (F) F F . G G . F F v G G v F (F . G) . H G . (F . H) (F v G) v H G v (F v H) F y G son equivalentes si sus tablas de verdad tienen los mismos valores de verdad. (F v G) v H G v (F v H) F v (G . H) (F v G) . (F v H) F . (G v H) (F . G) v (F . H) F G F G . G F F G F v G (F . G) G v F (F v G) G . F Consistencia Lgica Es una propiedad de un conjunto de axiomas. Se dice que un conjunto de axiomas es Se dice que un conjunto de axiomas es consistente si a partir de l no puede deducirse simultneamente una proposicin (p) y su contraria (p). Consecuencia Lgica Dadas las frmulas F 1 , , F n y una frmula G, se dice que G es una consecuencia lgica de F 1 , , F n , si y solo si para cualquier interpretacin I, en la cual F 1 , , F n es verdadera, G tambin lo es. Pruebas Dadas las frmulas F 1 , F 2 , , F n y una frmula G, G es una consecuencia lgica de F 1 ,F 2 , , F n , si y solo si: Mtodo Directo (F 1 . F 2 . . F n ) G es vlida. Mtodo Indirecto (F 1 . F 2 . . F n ) . G es inconsistente. Definiciones Literal Proposicional Es una variable proposicional o la negacin de una variable proposicional. Un literal proposicional positivo es simplemente una variable proposicional, proposicional, Un literal proposicional negativo es la negacin de una variable proposicional. Clusula proposicional Es una disyuncin de literales proposicionales. Es una formula proposicional donde el nmero de literales proposicionales estn conectados con el operador v. Clusula de Horn Clusula Proposicional de Horn Es una clusula proposicional con un literal positivo como mximo: q (clausula unidad) p 1 v ... v p n v q clusulas de programa p 1 v ... v p n clusula meta donde p 1 ... p n , q son variables proposicionales. Completitud Sea un programa lgico P, y una clusula q, que corresponde a una invocacin del programa P. Sea R una regla de inferencia. Se dice que R es completa si se cumple que: q es deducible lgicamente de P, utilizando R sii q es consecuencia lgica de P. Regla de Resolucin (Robinson) C1 v p, C2 v p Res C1 v C2 Tomemos por ejemplo una clusula C1 de tipo (3) y C2 de tipo (2): Es una regla de inferencia que se utiliza en la programacin lgica para realizar deducciones (es completa): Tomemos por ejemplo una clusula C1 de tipo (3) y C2 de tipo (2): C1 = q 1 v ... v q n C2 = r 1 v ... v r m v s Podemos tener dos clusulas: C1 v p C2 v p Podemos escribirlas como: (q 1 . ... . q n ) p (r 1 . ... . r m . p) s Lo que significa: (q 1 . ... . q n . r 1 . ... . r m ) s q 1 v ... v q n v r 1 v ... v r m v s C1 v C2 Si las clusulas de programa se toman como hiptesis, puede la consulta deducirse de estas hiptesis usando la regla de resolucin?
Dado un programa lgico P y una consulta Q, puede establecerse la deduccin
P Res Q? Deduccin y Contradiccin Refutacin - Reduccin al Absurdo Una manera de realizar la prueba es la llamada prueba por contradiccin o reduccin al absurdo. Sea Q una frmula y P un conjunto de frmulas. Se dice que Q es deducible lgicamente a partir de P, sii el conjunto formado por P y Q es inconsistente. Un sistema formal se dice consistente si no se puede deducir del sistema F y F. De lo contrario es inconsistente. Deduccin Si podemos inferir a partir de una clusula de programa que una proposicin p es verdadera, podemos decir que p tiene xito. Si no podemos decir que p es verdadero, podemos Si no podemos decir que p es verdadero, podemos decir que p falla. Esto no significa que p es falso; significa simplemente que p no puede inferirse como verdadero de las clusulas del programa dado. Refutacin 1. Dado un Programa P. (Conjunto de clusulas de programa). 2. Agregaremos Q como una hiptesis y usaremos resolucin para establecer una contradiccin en la forma de clusula vaca. Una consulta (query) es una conjuncin de variables proposicionales y tiene Una consulta (query) es una conjuncin de variables proposicionales y tiene la siguiente forma: q 1 . ... . q n cuya negacin es q 1 v v q n 3. Usando resolucin, la nica manera de obtener la clusula vaca, es aplicando la regla de resolucin a la variable proposicional p y p, en la cual tenemos una contradiccin. La clusula vaca es denotado por . Mundo Cerrado (closed-world assumption) Consideremos los siguientes ejemplos: Un seor se encuentra con dos seoritas en la parada de colectivos y le dice a una de ellas: Usted es muy bonita bonita La otra mujer tiene derecho a sentirse Menos bonita? En la clase de Paradigmas, el profesor dice: Todos los Jueves hay examen. Significa esto que ningn otro da habr examen? Ejemplo 1 Dado el Programa: p v q v r p q 1. p v q v r 2. p Hiptesis 3. q Es posible deducir r?. Para ello agregamos la consulta r como hiptesis agregada. 3. q 4. r Hiptesis agr. 5. q v r Res por 1 y 2 6. r Res por 3 y 5 7. Res por 4 y 6 Ejemplo 2 (p . q . r) s (t . w) r p v q v r v s t v w v r Dado el programa P. Podemos deducir s del mismo? (t . w) r q (v . r) p t v v w t v w v r q v v r v p t v v v w Ejemplo 2 1. p v q v r v s 2. t v w v r 3. q 4. v v r v p Hiptesis 5. t 6. v 7. v v w 8. s Hiptesis agregada 8. s Hiptesis agregada 9. p v q v r Res por 1 y 8 10. p v q v t v w Res por 2 y 9 11. p v t v w Res por 3 y 10 12. t v w v v v r Res por 4 y 11 13. w v v v r Res por 5 y 12 14. w v r Res por 6 y 13 15. v v r Res por 7 y 14 16. t v w v v Res por 2 y 15 17. w v v Res por 5 y 16 18. v Res por 7 y 17 19. Res por 6 y 18 rbol de Resolucin Cada literal positivo de la consulta se considera como una submeta, las cuales son derivadas en turno. Cada submeta s p, q, r por clusula (a) p, q, t, w por clusula (b) p, t, w por clusula (c) v, r, t, w por clusula (d) a) (p . q . r) s b) (t . w) r c) q d) (v . r) p e) t f) v Cada submeta coincidir con una o ms clusulas de programa. La cola de cada clusula elegida nos da mas submetas para derivar v, r, w por clusula (e) r, w por clusula (f) r, v por clusula (g) t, w, v por clusula (b) w, v por clusula (e) v, v por clusula (g) v por clusula (f) xito por clusula (f) f) v g) v w rbol de Resolucin a) (p . q) r b) w r c) s w d) p e) s r s por clusula (e) q por clusula (d) p, q por clusula (a) w por clusula (b) xito por clusula (e) Falla Backtracking Negacin en Programacin Lgica Como vimos, los programas lgicos solo expresan informacin positiva. No es posible mostrar que un literal negativo es consecuencia de un programa lgico. Consideraremos cualquier consulta como falsa si no puede derivarse del programa. derivarse del programa. Esto se conoce con el nombre de Negacin por falla o por mundo cerrado. Una sentencia que no fue considerada, puede no necesariamente ser falsa aunque la tcnica la considere falsa. Si P es un programa proposicional, q es una consulta y P q no puede establecerse, podemos deducir que P q. Negacin en Programacin Lgica: Ejemplo a) n q b) (p . r . s) q c) w q d) u n e) t r f) p q n por w por p, r, s por f) p g) t n por clusula (a) w por clusula (c) Falla Falla p, r, s por clusula (b) p, t, s por clusula (e) t, s por clusula (f) s por clusula (g) Falla Podemos decir que q se deriva del programa. u por clusula (d) Resolucin SLD El uso de la funcin de seleccin con resolucin se denomina Resolucin SLD (Selective Linear for Definite clauses) Selecction Rule Linear Resolution Definite Clauses (Horn clauses) Definite Clauses (Horn clauses) Es una estrategia de resolucin en la que se establece qu clusula y qu literal sern seleccionados. La regla de seleccin determina qu frmula atmica del objetivo utilizar a la hora de generar un nuevo nivel en el rbol SLD. (izq der, der izq.) La regla de bsqueda determina cmo se seleccionan las clusulas que unifican con una frmula atmica dada. (arr abj, abj arr) Resolucin SLD: Ejemplo 1. (p . r . s) q 2. (p . w) q 3. w n 4. (p . t) n s w q, n, w p, r, s, n, w p, w, n, w r, s, n, w t, s, n, w w, n, w w, n 5. s w 6. t r 7. p 8. t 9. s w, w p, t, w w p, t s, n, w n, w s, n n w s xito t, w w s s xito t xito xito