You are on page 1of 9

1

Resumen.

LOGICA DE PREDICADOS.

Adrián de Jesús Pérez Domínguez


David Flores Velazquez

Facultad de Ciencias de la Computación.


Benemerita Universidad Autonoma de Puebla.

1
Tabla de contenido.

Introduccion .......................................................................................................... 3
Traduccion en logica de predicados ......................................................................... 4
Aplicacion .................................................................................................................. 5
Conclusiones y recomendaciones ............................................................................. 9
Bibliografia ................................................................................................................ 9
Agradecimientos ........................................................................................................ 9

2
Introduccion.

En las ultimas decadas, ha aumentado considerablemente el interes de la informatica por


la aplicacion de la logica a la programacion. De hecho, ha aparecido un nuevo paradigma
de programacion(la programacion declarativa) cuyos fundamentos teoricos se basan en
los desarrollos de la logica de predicados que pretendian alcanzar sistemas de
demostracion axiomaticas de teoremas.

Traduccion en logica de predicados

Hemos visto en clases anteriores como la logica proposicional nos permite encontrar la
valides formal de una inferencia atendiendo a las letras enunciativas y a los conectores
presentes en un argumento. El problema surge sin embargo, cuando nos encontramos
con razonamientos que, siendo formalmente validos, no deben tal validez unicamente a
la naturaleza de sus letras enunciativas y sus conectores logicos, si no que tenemos que
ir mas haya de los mismos con el objeto de poder demostrar tal validez.

Ejemplo:

Ningun fosil puede estar traspasado de amor.


Una Ostra puede estar traspasada por el amor.
............................................................................
Las Ostras no son fosiles.

Si solo existiera la logica de enunciados nos encontrariamos con una inferencia que no
seria valida formalmente de ¬p ^ q es imposible poder derivar ¬r, y, sin embargo el
sentido comun nos dice que en este razonamiento, suponiendo que las premisas fueran
ciertas, parece evidente que podria seguirse la conclusion señalada.

EL instrumento fundamental de comunicacion humana es el lenguaje, formado por frases


de tipo interrogativo, imperativo y declarativo. Estas ultimas constituyen el elemento
basico de descripcion del conocimiento.
La logica es la diciplina que estudia los metodos de formalizacion del conocimiento
humano.
La logica de predicados estudias las frases declarativas con mayor grado de detalle,
considerando la estructura interna de las proposiciones. Se tomaran como elemento
basico los objetos y las relaciones entre dichos objetos. Es decir, se distingue:

• Qué se afirma (predicado o relacion).


• De quién se afirma(Objeto).

Definicion: El alphabeto de logica de predicados estara formado por los siguentes


conjuntos de simbolos:

• Conjunto de Simbolos o Variables(VAR): Esta formado por las ultimas letras


del alphabeto minusculas. Tambien se utilizan subindices, por ejemplo:
x,y,z,x1,x2, etc.
• Conjunto de Simbolos de Constantes(CONS): Primeras letras del alfabeto
minusculas(con subindice), por ejemplo: a,b,c,a 1,b1,c1.
• Conjunto de letras de Funcion (FUNC): Esta formado por las letras f, g,
h. Tambien puede incluir subindices para diferenciar distintas funciones:
f1,g1,h1.
En algunos casos se indica la aridad mediante un superindice. Asi por
ejemplo f2 ϵ FUNC sera una funcion con 2 argumentos.
La Aridad de una funcion o de un predicado se define como el numero
de argumentos que tiene.
• Conjunto de letras de Predicado(PRED): Se representa mediante letras
mayusculas, P,Q,R, K ϵ PRED.
Como en el caso de las funciones, se puede representar la aridad mediante un
superindice, por ejemplo: P3 ϵ PRED sera un predicado con tres
argumentos.

Simbolos de conectivos:

• ¬ = Negacion.
• ˆ = Conjuncion 'y'
• ˇ = Disyuncion 'o'
• → = Implicacion
• ↔ = Dobleimplicacion
Signos de puntuacion:

• Parentesis ( ) y coma ,

Los cuantificadores que tipicamente se usan en logica de predicados son:

• El cuantificador Universal (∀): Indica que la formula bien formada,


dentro de su alcance, es verdadera para todos los valores posibles de la
variable que es cuantificada. Por ejemplo:

∀X
Establece que “para todo X, es verdad que . . .”

• El cuantificador Existencial (∃): Indica que la formula bien formada,


dentro de su alcanze, es verdad para algun valor o valores dentro del
dominio. Por ejemplo:

∃X
Establece que “existe un X, tal que . . .”

Ejemplo de predicados cuantificados:

∀x,[niño(x) → le_gusta(x, helados)]


∀y[mamifero(y) → nace(y,vivo)]
∃z[cartero(z) ˆ mordio(boby, z)]

Definicion: Un termino es una cadena de simbolos utilizada para representar


objetos siguiendo las siguentes reglas:

• Toda variable o constante individual es un termino.


• Si t1, t2, L, tn, son terminos Y f es una funcion de aridad n entonces
f(t1,t2,L,tn) es un termino.
• Todos los terminos posibles se generan aplicando unicamente de las dos
reglas anteriores.
APLICACION.

Aplicacion en la teoria de los sistemas expertos para la


representacion de conocimientos.

Los sistemas de razonamiento basados en la lógica de predicados son sistemas de


razonamiento monotónico ("monotónico" significa "moverse en una sola
dirección") ya que las deducciones realizadas nunca generan contradicciones.
Un sistema de razonamiento no monotónico es aquel que sigue la trayectoria de
un conjunto de creencias tentativas y revisa aquellas creencias cuando se observa
o se deduce nuevo conocimiento.
El razonamiento que seguiría un experto humano en la materia a fin de poder
codificarlo mediante el empleo de un determinado lenguaje informático; por otra,
la síntesis artificial, de tipo mecánico, de los razonamientos de manera que éstos
serán semejantes a los empleados por el experto humano en la resolución de la
cuestión planteada.
Los sistemas expertos son, por lo tanto, intermediarios entre el experto humano,
que transmite sus conocimientos al sistema, y el usuario de dicho sistema, que lo
emplea para resolver los problemas que se le plantean con la competencia de un
especialista en la materia y que, además, puede adquirir una destreza semejante
a la del experto gracias a la observación del modo de actuar de la máquina.
Finalmente, el nivel cognoscitivo corresponde al conjunto de los conocimientos
que el experto humano pone en práctica para la resolución del problema
planteado. Este conjunto de conocimientos debe poder traducirse al lenguaje
definido mediante el formalismo de representación del conocimiento adoptado. En
cuanto al desarrollo actual de la investigación en el campo de los sistemas
expertos, la primera fase corresponde al desarrollo de sistemas y programas que
traten directamente el lenguaje natural, si bien persisten todavía dos escollos
importantes. Por un lado, el problema de cómo emplear de un modo eficaz una
gran cantidad de información sin necesidad de echar mano de la combinatoria; Es
decir, cómo conseguir un sistema dotado de conocimientos (metaconocimientos),
que le permitan utilizar los conocimientos del sistema y que, a su vez, le permitan
deducir automáticamente nuevos conocimientos, ya que no cabe pensar en la
reunión de todos los conocimientos necesarios en casos de campos tan
sumamente vastos como el del diagnóstico en la medicina.
Aplicacion en la teoria de base de Datos.

El área de base de datos es un área importante de la ciencia de la computación


concerniente con la historia, consultando y actualizando una gran cantidad de
datos. La lógica y las bases de datos están íntimamente conectados desde el
nacimientos del sistema de base de datos a principios de los ‘70s. Aquellas
relaciones en un suceso incompetente de la historia. En efecto la lógica de primer
orden (FO) tiende hacia los sistemas de base de datos modernos, y los lenguajes
de consulta estructurados (SQL) y Consulta Por Ejemplo (QBE) son variantes
sintácticas de (FO). El lenguaje de consulta mas poderos esta basado en
extensiones de FO con recursión y son evocados con el bien conocido punto fijo
consultado y estudiado en un modelo de teoría finita. El impacto de la lógica en
base de datos es notable en la mayoría de los ejemplos de la eficacia de la lógica
en ciencias computacionales.
En conclusión, la lógica provee una herramienta espectacularmente efectiva en el
área de base de datos. FO provee las bases para el lenguaje de consulta estándar,
porque la comodidad del uso de la implementación eficiente vía álgebra
relacional. FO puede lograr escalas lineales, consiguiendo fuentes de procesos
paralelos. Así, se llena el potencial como un lenguaje de consulta permaneciendo
aun para ser realizado.

Aplicacion en el paradigma de la programacion Orientado


a Objetos.

La mayoría de los lenguajes experimentales que se han producido en los últimos


10 años son orientados a objetos. Al igual que los frames, se asocia a un objeto
tanto datos como procedimientos en estructuras organizadas en jerarquías. Los
datos al igual que los procedimientos pueden ser heredados. Los objetos se
comunican entre ellos a través de un protocolo especial de pasar mensajes. Cada
objeto es una instancia de una clase y puede mandar su propio mensaje y hacer
acciones independientes. Las clases se relacionan en una jerarquía.
El objeto puede ser objeto físico, un concepto, o lo que sea que queremos
describir (ejemplo; un coche, un curso, un programa, etc.) Un objeto tiene un
estado, exhibe un comportamiento bien definido y tiene una identidad única.
El código privado que tiene el objeto puede ser accesado solo por medio de
mensajes. El mensaje dice a que objeto se dirige, que procedimiento ejecutar y
cuales son los argumentos.
Los métodos que se utilizan se refieren a un procedimiento privado de un objeto
que dice que hacer con un mensaje y como hacerlo. Como cada objeto tiene sus
propios métodos, los objetos pueden responder diferente al mismo mensaje.
Normalmente los mensajes se mandan a instancias, que heredan su métodos de
clases. Cuando se manda un mensaje a un objeto, éste checa sus datos y
métodos particulares para ver si se puede manejar el mensaje. Si no puede, busca
la forma de hacerlo en su objeto padre.
Los procedimientos pueden ser polimórficos. Se tiene que programar en términos
de operaciones genéricas. Las propiedades relevantes dependen de cómo se
persigue el objeto, ejemplo., un piano a un músico (como suena) a un cargador
(cuanto pesa).
La filosofía de representar el conocimiento en términos de objetos y agentes es
adecuada para muchos problemas (en especial los que tienen un componente de
simulación.) El tener datos y procedimientos, obliga a pensar en el tipo de objetos
y el comportamiento que es relevante para el problema.
Conclusiones y recomendaciones.

Lo que describo en paginas anteriores no es todo lo que abarca el calculo de


predicados son solo aspectos teoricos y algunos ejemplos. Si requieres mas
informacion de estos temas puedes consultar la bibliografia y los libros que
vienen incluidos.
Si encuentras algun error favor de reportalo al siguiente correo:
lelouchy@gmail.com

Bibliografia.

Discrete mathematics with aplications.


Thomas Kosky Diciembre 12 del 2007, 1042 paginas.
El shevier Academic.

Discrete mathematical structures.


G. Shanker Roa, diciembre del 2009, 459 paginas
New Age, second edition.

Mathematics and Computation, a contemporary View.


Hans Munthe-kass Brynulf Owren, 2008, 137 paginas
Springer, tercera edicion.

Agradecimientos.

A dios que nos dio la fuerza y el entendimiento para terminar este documento.
A los amigos que nos apoyaron explicandonos temas del curso de logica.
A nuestros jefes que nos dejaron faltar al trabajo por concluir todas nuestras
materias.
Al profesor, por su comprencion y ayuda en la hora de clases.

You might also like