LMF2016: Algoritmo DPLL (Davis, Putnam, Logemann y Loveland)

En la segunda parte de la clase de hoy del curso Lógica matemática y fundamentos hemos estudiado el algoritmo DPLL (Davis, Putnam, Logemann y Loveland) para decidir la consistencia de conjuntos de cláusulas.

En primer lugar se ha explicado el concepto de equiconsistencia. A continuación, las reglas de eliminación de tautologías, de eliminación unitaria, de eliminación de literales puros y la de división. Finalmente, el algoritmo DPLL.

Las transparencias utilizadas son las página 1 a 12 del tema 6.

LMF2016: Estrategias y refinamientos de resolución

En la primera parte de la clase de hoy del curso Lógica matemática y fundamentos hemos continuado la búsqueda de la automatización del razonamiento.

Empezamos con un primer algoritmo de búsqueda de la cláusula vacía: el de saturación y dos mejoras: eliminación de tautologías y de subsumsución.

A continuación, hemos estudiado distintas estrategias cuyo objetivo es mejorar la búsqueda de la refutación por resolución.

Las estrategias estudiadas son la resolución positiva, la resolución negativa, la resolución unitaria, la resolución por entradas y la resolución lineal.

Además, se ha presentado la estrategia por pesos y propagación unitaria.

Finalmente, se ha mostrado el uso de Prover9 para decidir mediante resolución la validez de argumentos

Las transparencias de esta clase son las páginas 18 a 37 del tema 5.

I1M2015: División y factorización de polinomios mediante la regla de Ruffini en Haskell

En la segunda parte de la clase de hoy del curso de Informática de 1º del Grado en Matemáticas se han explicado las soluciones de los ejercicios de la relación 34. El objetivo de la relación es implementar la regla de Ruffini y sus aplicaciones utilizando las implementaciones del TAD de polinomio estudiadas en el tema 21.

Los ejercicios, y sus soluciones, se muestran a continuación.
Read More “I1M2015: División y factorización de polinomios mediante la regla de Ruffini en Haskell”

LMF2016: Resolución proposicional

En la clase de hoy del curso Lógica matemática y fundamentos hemos continuado la búsqueda de la automatización del razonamiento.

Comenzamos observando que, a partir de la forma normal conjuntiva, podemos representar las fórmulas, y los conjuntos de fórmulas, mediante conjunto de conjuntos de literales. Con esta nueva representación, basta una única regla de demostración: la regla de resolución. Esta regla engloba distintas reglas (como modus pones, modus tollens y encadenamiento).

Mediante las cláusulas, el problema de inconsistencia de un conjunto de de fórmulas se reduce al de la inconsistencia de un conjunto de cláusulas.

Mediante resolución, el problema de la inconsistencia de un conjunto de cláusulas se reduce a buscar la cláusula vacía entre las resolventes del conjunto S.

Finalmente, hemos visto propiedades del método (adecuación y completitud) y algoritmos de búsqueda de demostraciones por resolución.

Las transparencias de esta clase son las páginas 1 a 24 del tema 5.