calculo de predicados

16
Cálculo de Predicados Diego Gonzalez C.I. 16.714.513 Estructuras Discretas SAIA – UFT Noviembre, 2015

Upload: diego-gonzalez

Post on 22-Jan-2017

179 views

Category:

Engineering


0 download

TRANSCRIPT

Cálculo de Predicados

Diego GonzalezC.I. 16.714.513

Estructuras Discretas SAIA – UFT

Noviembre, 2015

Representación e inferencia en la lógica de predicados

Idea: La lógica como sistema de representación del conocimiento y de obtención de consecuencias (control)

Cálculo de predicados de primer orden

FórmulasFórmulas atómicas

Conectores

autor(quijote, cervantes)

escritor(cervantes)

Predicado: Un predicado es un símbolo cuyo valor se encuentra en el dominio lógico (verdadero o falso) y representa alguna cualidad semántica, en un cierto contexto, acerca de las relaciones entre objetos o entidades

Fórmulas atómicasTérminos

autor(quijote, Quién)

autor(quijote, mejor(novelista, españa))

Constante:

Representa un término con un valor semántico determ

Fórmulas atómica :: Predicado | Predicado(Términos)

Términos :: Término | Término, Términos

Término :: Variable | Constante | Functor

Functor :: NombreFunctor(Términos)Variable:

Representa un término cuyo valor no está determinado inicialmente y su dominio de definición debe coincidir con el de los términos constantes

Functor:

Es un símbolo que posee valor en el dominio de las variables y constantes, pero que no es ni una variable ni una constante.

Normas léxicas:

Las variables siempre empiezan por mayúscula

las constantes por minúscula

Conectores

Permiten construir fórmulas complejas a partir de fórmulas o expresiones atómicas

Negación : (~)Disyunción : (OR)Conjunción : (AND)Implicación : ()Equivalencia :

Negación: Genera una fórmula que posee valores lógicos complementarios a los de la fórmula sobre la que se aplica. Estrictamente no es un conector, pues no conecta dos fórmulas sino que transforma una.

autor(hamlet, cervantes)

Disyunción: Genera una fórmula cuyo valor lógico es el “OR” de los valores de las dos fórmulas que conecta.

estado(bombilla, encendida) estado(bombilla, apagada)

Conjunción: Genera una fórmula cuyo valor lógico es el “AND” de los valores de las dos fórmulas que conecta.

color(coche, rojo) color(camisa, azul)

Implicación: Genera una fórmula compuesta no-simétrica que es cierta siempre, salvo cuando el antecedente es cierto y el consecuente falso.

p q es equivalente a p q

p q p q p p q

0 0 1 1 10 1 1 1 11 0 0 0 01 1 1 0 1

está(cielo, azul) lloverá(hoy)

está(cielo, azul) lloverá(hoy)

Equivalencia o doble implicación: Genera una fórmula que es cierta sólo si las dos componentes poseen idéntico valor.

p q es equivalente a (p q) (q p)

p q p q q p (p q) (q p)

0 0 1 1 10 1 1 0 01 0 0 1 01 1 1 1 1

llueve(hoy) está(cielo, nublado)

Programación Lógica

EquivalenciasComplemento: p p 1Doble negación: ( p ) pConmutativa: p q q p

p q q p

Distributiva: p (q r) (p q) (p r)p (q r) (p q) (p r)

Asociativa: p (q r) (p q) r p (q r) (p q) r

Leyes de De Morgan: (p q) p q (p q) p q

Ley del contrapositivo: p q q p

Cuantificadores Establecen el ámbito de existencia de las variables

Cuantificador Universal ():

Cuando acompaña a una variable X establece que la fórmula es siempre válida para cada valor posible de la variable X. La variable X se dice entonces cuantificada universalmente.

“Todo cuerpo con masa cae”

(X) ( [cuerpo(X) posee(masa, X)] cae(X) )

Cuantificadores Establecen el ámbito de existencia de las variables

Cuantificador Existencial ():

Establece que como mínimo existe un valor de la variable cuantificada que hace cierta la fórmula. La variable se dice cuantificada existencialmente.

“Alguién descubrió la penicilina”

( X) ( descubrió( X, penicilina )

Reglas de precedencia entre operadores, , ,

menor precedencia

Forma Normal de una fórmulaUna fórmula se dice que está en forma normal si todos los cuantificadores han sido desplazados al principio de la fórmula.

Forma normal de una fórmulaUna fórmula se dice que está en forma normal si todos los cuantificadores han sido desplazados al principio de la fórmula.

Algunas equivalencias útiles para alcanzar una forma normal

[ ( X) p(X) ] (X) [ p(X) ]

[ (X) p(X) ] ( X) [ p(X) ]

( X) [ p(X) q(X) ] [ (X) p(X) ] [ (X) q(X) ]

( X) [ p(X) q(X) ] [ ( X) p(X) ] [ ( X) q(X) ]

Lógica de orden cero:

Los predicados carecen de términos y el cálculo de predicados se reduce al cálculo de proposiciones o proposicional.

Lógica de orden uno:

Los predicados poseen términos que pueden ser constantes, variables o functores.

Lógica de orden superior:

Los predicados lógicos pueden ser en sí mismos variables.

Ejercicios. Expresar como fbf en lógica de predicados los siguientes hechos

A. Marco era un hombre.B. Marco era pompeyano (de Pompeya).C. Todos los pompeyanos eran romanos.D. César era un dirigente.E. Todos los romanos o bien eran leales a César o bien le odiaban.F. Todo el mundo es fiel a alguien. G. La gente sólo trata de asesinar a aquellos dirigentes a los que no son leales.H. Marco intentó asesinar a César.I. Algún romano odia a César.

A. hombre(marco)B. pompeyano(marco)C. (X)(pompeyano(X) romano(X))D. dirigente(césar)E. (X)(romano(X) leal(X,césar) odia(X,césar))F. (X)(hombre(X) (Y) leal(X,Y)G. (X)(Y) (hombre(X) dirigente(Y) intenta_asesinar(X,Y) leal(X,Y))H. intenta_asesinar(marco, césar)I. (X) (romano(X) odia(X, césar))