lunes, 24 de abril de 2017

Resolución Lógica:

En programación lógica se utiliza una única regla: la regla de resolución.

Utilizando esta regla y la demostración por reducción al absurdo podemos demostrar cualquier teorema dentro del subconjunto de lógica de predicados que tratamos (las cláusulas de Horn).

Vamos a ver la regla de resolución aplicada primero a lógica proposicional, y después la veremos ya aplicada a lógica de predicados.


Regla de resolución

Reglas habituales:


Ejemplo de refutación por resolución

Refutación de {{p, q}, {¬p, q}, {p, ¬q}, {¬p, ¬q}} :
      1 {p, q} Hipótesis
      2 {¬p, q} Hipótesis
      3 {p, ¬q} Hipótesis
      4 {¬p, ¬q} Hipótesis
      5 {q} Resolvente de 1 y 2
      6 {¬q} Resolvente de 3 y 4
      7 Resolvente de 5 y 6



Algoritmo de de resolución por saturación 

Def.: Sea S un conjunto de cláusulas.
         Res(S) = S ∪ ( S {Res(C1, C2) : C1, C2 ∈ S}).

Algoritmo de resolución por saturación

Entrada: Un conjunto finito de cláusulas, S.
Salida: Consistente, si S es consistente;
            Inconsistente, en caso contrario.

S 0 := ∅
mientras ( 6∈ S) y (S 6= S 0) hacer
       S 0 := S
       S := Res(S)
fmientras
si ( ∈ S) entonces
    Devolver Inconsistente
en caso contrario
    Devolver Consistente
fsi

Prop.: El algoritmo de resolución por saturación es correcto.




Programa para solucionar resolución:

Sin resultado de programas para la solucion de resoluciones logicas.


Bibliografia:

http://informatica.uv.es/iiguia/MD/prog_log3.pdf
https://www.cs.us.es/~jalonso/cursos/li-12/temas/tema-5.pdf
Deducción natural

El metodo de deduccion natural, desarrollado por Gentzen, utiliza dos reglas de inferencia por cada conectiva: una para insertar la conectiva y otra para eliminarla

Las reglas de inferencia son:


A continuacion se incluyen varios ejemplos de demostraciones en deducion natural.





Para que sirve:

La deducción natural sirve para intentar demostrar que un razonamiento es correcto (``para comprobar la validez de un secuente'', dice la teoría). Ejemplo:
Yo te digo: ``En verano hace calor, y ahora estamos en verano, por eso hace calor''. Tú te pones a hacer cálculos, y respondes ``Vale, puedo demostrar que el razonamiento que has hecho es correcto''. Para eso sirve la deducción natural.


Programas para la deducion natural

Sin resultados al momento de encontrar un programa para calcular la deduccion natural.


Bibliográfia: 

http://di002.edv.uniovi.es/~labra/Logica/apuntes/nd.pdf

http://www.danielclemente.com/logica/dn-node12.html