Capítulo 2 El Método de Resolución

Documentos relacionados
Introducción a la Lógica Proposicional Seminario de Matemáticas

CIENCIAS FORMALES CIENCIAS FÁCTICAS

Teoremas: Condiciones Necesarias, Condiciones Suficientes y Condiciones Necesarias y Suficientes

1. Resolución en lógica proposicional

Introducción a la Lógica

Matemáticas Discretas Lógica

Inteligencia en Redes de Comunicaciones. Razonamiento lógico. Julio Villena Román.

Lógica Matemática. Contenido. Definición. Finalidad de la unidad. Proposicional. Primer orden

Tema 7: Formas normales: Formas prenex y de Skolem

Capítulo 4. Lógica matemática. Continuar

Métodos de Inteligencia Artificial

Coordinación de Matemática I (MAT021) 1 er Semestre de 2013 Semana 1: Lunes 11 Viernes 16 de Marzo. Contenidos

Matemáticas Dicretas LÓGICA MATEMÁTICA

Lógica Proposicional. Del conjunto de hipótesis Γ se deduce α?

ALGEBRA y ALGEBRA LINEAL. Primer Semestre CAPITULO I LOGICA Y CONJUNTOS.

Lógica de proposiciones

Resolución en lógica de primer orden

Lógica Proposicional. Sergio Stive Solano Sabié. Marzo de 2012

Curso LÓGICA Examen de recuperación de lógica proposicional

Tema 2: Métodos de Deducción para la Lógica Proposicional

Inteligencia en Redes de Comunicaciones - 04 Razonamiento lógico

Tema 5: Teoría de la Demostración en Predicados

Lógica Proposicional Lenguaje Proposicional Implicación semántica

MÉTODOS DE DEMOSTRACIÓN

Sistemas Deductivos. Sistemas Deductivos

2.1. Introducción Lógica: Campo del conocimiento relacionado con el estudio y el análisis de los métodos de razonamiento. El razonamiento lógico es es

Lógica Proposicional. Sergio Stive Solano Sabié. Abril de 2013

Paradigma lógico Lógica proposicional Resolución. Programación Lógica. Eduardo Bonelli. Departamento de Computación FCEyN UBA. 10 de octubre, 2006

Lógica Matemática, Sistemas Formales, Cláusulas de Horn

Tema 2: Teoría de la Demostración

Clase 5 1. Lógica proposicional. Razonamientos

Programación II Sesión 2: Especificación de problemas

Demostración Automática. Tema 2. Procesamiento del conocimiento con la Lógica Matemática

LÓGICA FORMAL TEORIAS DE PRIMER ORDEN. Axiomática

Capítulo 1: Fundamentos: Lógica y Demostraciones Clase 2: Lógica de Predicados y Métodos de Demostración

Sintaxis LÓGICA COMPUTACIONAL CÁLCULO DE PROPOSICIONES. Funciones boolenas. Semántica

Resolución Proposicional

IIC2213. IIC2213 Teorías 1 / 42

Lógica de proposiciones (5)

TEMA 1: LÓGICA. p p Operador conjunción. Se lee y y se representa por. Su tabla de verdad es: p q p q

Lógica Proposicional. Cátedra de Matemática

Tema 10: Conceptos Metalógicos

Enunciados Abiertos y Enunciados Cerrados

Razonamiento Automático. Representación en Lógica de Predicados. Aplicaciones. Lógica de Predicados. Sintáxis y Semántica

Sistema Axiomático para el Cálculo Proposicional

Sistemas deductivos. Lógica Computacional. Curso 2005/2006. Departamento de Matemática Aplicada Universidad de Málaga

Demostraciones por resolución

Clase 5 1. Lógica de predicados. Razonamientos

1. Conjuntos y funciones

Ampliación Matemática Discreta. Justo Peralta López

UNIDAD I: LÓGICA MATEMÁTICA

Lógica de predicados

Cálculo de predicados. Lógica de predicados. Cálculo de predicados. Cálculo de predicados 08/06/2011

Axiomas del Cálculo de Predicados

Los Teoremas de Incompletitud de Gödel: Parte II: Coherencia y completitud

UNIVERSIDAD DE GUADALAJARA PROGRAMA DE ASIGNATURA MT106

Lógica informática ( )

1. Conjuntos y funciones

TEMA I INTRODUCCIÓN A LA LÓGICA

Ampliación Matemática Discreta. Justo Peralta López

Sumario Prólogo Unidad didáctica 1. Historia de la lógica Objetivos de la unidad... 10

Tema 6: Teoría Semántica

Capítulo V: Programación Lógica. 5.1 Breve Introducción al Cálculo de Predicados

Capítulo V: Programación Lógica

LICENCIATURA EN MATEMÁTICA. Práctico N 1 Lenguaje de la lógica. proposicional VICTOR GALARZA ROJAS 1 5 / 0 5 /

LÓGICA DE PROPOSICIONAL Y PREDICADOS INGENIERÍA DE SISTEMAS

MATEMÁTICAS DISCRETAS. UNIDAD1 Lógica y Demostraciones

Resumen de las clases teóricas del turno tarde a cargo de la Prof. Alcón.

Capítulo 1 Lógica Proposicional

Teorema de Compacidad

Algebras booleanas. B2) Leyes Distributivas. Cada operación es distributiva con respecto a la otra:

Lógica Proposicional. Significado de una Fórmula Proposicional

Lógica Proposicional

Nuestro objetivo es demostrar que autómata = lógica Qué significa esto? Queremos encontrar una lógica que defina a los lenguajes regulares

TÍTULO: MATEMÁTICA DISCRETA Y LÓGICA Disponibilidad

Material educativo. Uso no comercial 1.4 MÉTODOS DE DEMOSTRACIÓN Método directo o Método de la hipótesis auxiliar

REGLAS Y LEYES LOGICAS

Cálculo Proposicional

Estructuras Discretas. Teoremas. Técnicas de demostración. Reglas de Inferencia. Reglas de Inferencia Ley de Combinación.

Lógica de Predicados

Capítulo 8 Sistemas completos de contectivos

Lógica. Matemática discreta. Matemática discreta. Lógica

logica computacional Tema 1: Introducción al Cálculo de Proposiciones

Camilo Ernesto Restrepo Estrada, Félix Ruiz de Villalba, Lina María Grajales Vanegas y Sergio Iván Restrepo Ochoa 1.

Lógica Matemática. M.C. Mireya Tovar Vidal

Lógica Proposicional

Evaluación Nacional Revisión del intento 1

Lógica proposicional. Ivan Olmos Pineda

Rudimentos de lógica

CÓMO SE CONSTRUYE LA GEOMETRÍA MODERNA?

Ejercicios de Lógica Proposicional *

Tema 4: Gramáticas independientes del contexto. Teoría de autómatas y lenguajes formales I

1.1.1 Conectivos lógicos, formas proposicionales y tablas de verdad.

LógicaS Modales. Ricardo Oscar Rodríguez Departamento de Computación, Fac. Ciencias Exactas y Naturales, Universidad de Buenos Aires, Argentina.

Lógica Matemática. Operadores Lógicos. Universidad del Azuay - Marcos Orellana Cordero

Agentes Lógicos Univer Univ sidad Po sidad P litécnica de Pueb o la litécnica de Pueb D r. J Jesús A A ntonio G G á onz l ál ez B Ber l na

Matemáticas Básicas para Computación

Lógica Clásica Proposicional

Facultad de Ingeniería y Tecnología Informática Técnico en Programación de Computadoras Plan de Estudios 2014 Año 2014 Programa Analítico Lógica (1)

Autómatas Mínimos. Encontrar el autómata mínimo. Universidad de Cantabria. Introducción Minimización de Autómatas Deterministas Resultados Algoritmo

Transcripción:

Capítulo 2 El Método de Resolución En este capítulo se realiza una descripción general del método de resolución, dado que el programa de razonamiento automático OTTER lo utiliza y prueba a través de refutación. Asimismo, se da una descripción y definición de lo que es un modelo (que es uno de los objetivos de la herramienta a desarrollar). Dado que ambas herramientas prueban a partir de fórmulas que se encuentran en forma clausular, se presenta un algoritmo para transformar una fórmula a su forma clausular. 2.1 Resolución El método de resolución es una regla de inferencia que toma dos cláusulas y produce una tercera que es consecuencia lógica de éstas. El proceso consiste en identificar y borrar parejas complementarias de dos cláusulas, una de cada cláusula y luego, combinar las otras literales para formar una cláusula nueva [Ore94]. El método de resolución requiere que una fórmula se encuentre en forma clausular. Afortunadamente, es posible convertir cualquier conjunto de fórmulas en su equivalente 1 conjunto de fórmulas en forma clausular. En el método de resolución, se dice que una lista de cláusulas es inconsistente si se puede derivar la cláusula vacía de una lista de cláusulas. En este método, para demostrar que una fórmula se puede derivar de un conjunto de sentencias, se realiza lo siguiente: se niega la conclusión y se agrega al conjunto de sentencias que conforman la premisa, y si a partir de estos argumentos es posible derivar la cláusula vacía se dice que la premisa deriva a la sentencia de la conclusión. 1 La palabra equivalente la trataremos mas adelante en la sección 2.1.1. 11

2.2 Ejemplo del Método de Resolución Ejemplo 2.1 [Ore94] Mostrar que la premisa dada por ~{A B} puede derivar la conclusión ~A B. La premisa la podemos representar como {~A, ~B}, al aplicar la negación dentro de los argumentos. Ahora al negar la conclusión resulta: {A B}, por lo tanto podemos denotarla como {A}, {B}. Reescribiendo, y aplicando resolución se obtiene lo siguiente: 1. {~A, ~B} 2. {A} (Agregada) 3. {B} (Agregada) 4. {~B} (Resolución 1,2) 5. {} (Resolución 3,4) A una derivación por resolución de una cláusula vacía se le denomina derivación por refutación. De hecho lo que se busca, es mostrar que las premisas y la conclusión son inconsistentes refutando la consistencia de las cláusulas que resultan de unir ambos conjuntos de fórmulas. Por lo anterior, podemos decir que en el ejemplo 2.1, se probó por refutación. Un probador de teorema automático utiliza un procedimiento de afirmación o de refutación para demostrar que un teorema T es una consecuencia lógica de los axiomas A. Un procedimiento de afirmación muestra que A T es válido, mientras que un procedimiento de refutación prueba que la negación del teorema junto con los axiomas A ~T constituyen una contradicción. A continuación se describirá y definirá lo que es un modelo en lógica, junto con un algoritmo para transformar una fórmula cualquiera en un lenguaje de primer orden a su forma clausular. Se iniciará con una descripción de la terminología que se utilizará para la explicación, para de esta forma poder abordar los temas mencionados. 12

2.3 Qué es un Modelo? En lo siguiente de esta sección, se utilizarán las letras griegas β, δ, α o α 1,...,α n, para referirnos a fórmulas de un lenguaje de lógica de primer orden. Considerando a Σ un conjunto de enunciados pertenecientes a un lenguaje de lógica de primer orden, y pensando en Σ como un conjunto de hipótesis, como axiomas de una teoría o como una base de datos, y si β es un enunciado particular, es natural preguntarnos: Es β consecuencia lógica de Σ? β se sigue de Σ, lógicamente? o bien, β se puede deducir (es teorema) a partir de Σ? Lo anterior lo denotaremos de la siguiente manera: Σ = β β es consecuencia lógica de Σ Σ β β es deducible (es teorema) a partir de Σ En la segunda expresión se sobreentiende que nos referimos a un sistema formal de Cálculo de Predicados (CP), que cumple con el Teorema de Completud de la Lógica [Amo98]: Σ β Σ = β Si Σ es finito, digamos Σ={α 1,...,α n } entonces en vez de Σ β Σ = β escribimos: α 1,...,α n β α 1,...,α n = β Y el problema que nos hemos planteado consiste en responder a la pregunta α 1,...,α n = β? 13

Es importante precisar que el concepto β es una consecuencia lógica de α 1,...,α n (denotado por α 1,...,α n = β) significa que para toda interpretación respecto a la cual α 1,...,α n sean verdaderos, β sea verdadero también. Llamamos modelo de un conjunto de enunciados a cualquier interpretación respecto a la cual el conjunto de enunciados es verdadero. Con esta precisión de lo que significa la palabra modelo en lógica, podemos definir β es una consecuencia lógica de α 1,...,α n si y solo si todo modelo de α 1,...,α n es un modelo de β. Es decir, para cualquier interpretación, β es verdadera cada vez que α 1,...,α n son verdaderas [Amo98]. Teorema 2.1 (Teorema básico) α 1,...,α n = β (α 1 Λ,..., Λα n Λ β) no tiene modelo. Demostración [Amo98]: ) Si todo modelo de α 1,...,α n ha de ser modelo de β, no es posible que haya un modelo de α 1,...,α n que sea modelo de β. ) Si (α 1 Λ,..., Λα n Λ β) no tiene modelo, entonces cualquier modelo de α 1,...,α n será modelo de (α 1 Λ,..., Λα n ) y también de β, pues no lo será de β. Así pues, para probar que β es consecuencia lógica de Σ={α 1,...,α n }, es suficiente probar que el conjunto de enunciados {α 1,...,α n, β} no tiene modelos, lo cual es equivalente a que el enunciado (α 1 Λ,..., Λα n Λ β) no tenga modelos o que sea inconsistente. Sea ϕ una fórmula cualquiera. Por ejemplo ϕ=(α 1 Λ,..., Λα n Λ β). Sea ϕ la forma normal conjuntiva de la forma normal de Skolem de ϕ. Es un resultado de la lógica matemática que siempre es posible transformar de manera mecánica una fórmula cualquiera ϕ en una fórmula normal conjuntiva ϕ, donde además los cuantificadores existenciales han sido eliminados por medio de constantes o funciones de Skolem, y donde los cuantificadores universales están presupuestos aunque no se escriben [Amo98]. Así, tal ϕ es una conjunción de disyunciones de literales atómicas o negaciones atómicas. A esta fórmula se le llama forma clausular y la denotaremos con Cl(ϕ). Cada una de las 14

disyunciones de una forma clausular se llama cláusula; es decir, una cláusula es una disyunción de literales tal que cada una de esas literales es un átomo o la negación de un atómo. Teorema 2.2 [Amo98] Sea ϕ un enunciado y sea Cl(ϕ) la conjunción de las cláusulas correspondientes a ϕ (o forma clausular de ϕ). Entonces: ϕ tiene modelo Cl(ϕ) tiene modelo Demostración en la literatura de J. Malitz [Mal84]. Al inicio de la sección 2.1 se mencionó que existe equivalencia entre una teoría y su respectiva conversión a forma clausular. Sin embargo, esta afirmación de equivalencia es débil debido a que no asegura que los modelos de ambas sean los mismos. Sin embargo, el teorema 2.2 es suficientemente útil en el presente trabajo Definición 2.1 [Mal84] Una fórmula está rectificada si: No tiene presencias libres y acotadas de una misma variable, ni cuantificadores con alcances ajenos con la misma variable. No tiene dos cuantificadores que acotan presencias de una misma variable (cuantificaciones dobles). No tiene cuantificadores que no cuantifican (cuantificadores vacuos). 15

2.4 Algoritmo para transformar una fórmula a su forma clausular [Mal84] Un algoritmo para transformar una fórmula cualquiera en un lenguaje de primer orden a su forma clausular, es el siguiente: 1. Rectificar la fórmula. 2. Eliminar las implicaciones y las dobles implicaciones de la fórmula: (α β) ( α β), (α β) ( α β) ( β α) 3. Introducir al máximo las negaciones de la fórmula: α α, (α β) α β, (α β) α β xα x α, xα x α 4. Skolemnizar, es decir, eliminar los cuantificadores existenciales, de izquierda a derecha. Por ejemplo, la skolemnización de x y P(x,y) es x P(x,f(x)) y la skolemnización de y Q(y) es Q(c). Para más información sobre este tema consultar [Gen88]. 5. Presuponer los cuantificadores universales: todas las variables (libres) se consideran universalmente cuantificadas. 6. Pasar a la forma normal conjuntiva: α (δ β) (α δ) (α β) El resultado de aplicar este algoritmo a una fórmula es la forma clausular de la misma. Como hemos visto, esta forma clausular es una conjunción de disyunciones de literales tal que cada una de esas literales es un átomo o la negación de un atómo. Para poder comprender mejor el algoritmo de transformar una fórmula cualquiera en un lenguaje de primer orden a su forma clausular, se presenta el siguiente ejemplo: 16

2.5 Ejemplo de transformación de una fórmula a su forma clausular Ejemplo 2.2 [Amo98] clausular. Sea ϕ x y P(x,y) ( y Q(y) x P(a,x) ) transformar a su forma ϕ x y P(x,y) ( w Q(w) z P(a,z) ) Paso 1 x y P(x,y) ( w Q(w) z P(a,z) ) Paso 2 x y P(x,y) ( w Q(w) z P(a,z) ) Paso 3 x P(x,f(x)) ( Q(c) P(a,d) ) Paso 4 P(x,f(x)) ( Q(c) P(a,d) ) Paso 5 (P(x,f(x)) Q(c)) (P(x,f(x)) P(a,d)) Paso 6 A la última fórmula obtenida se le denomina forma clausular de ϕ, es decir, Cl(ϕ). 17