Title: Lgica de Primer Orden
1Lógica de Primer Orden
2Ref. Cap VII
http//www.massey.ac.nz/mjjohnso/notes/59302/l07.
html
3Lógica de Primer Orden
La lógica proposicional sólo puede representar
hechos acerca del mundo. La lógica de primer
orden describe un mundo que consta de objetos y
propiedades (o predicados) de esos objetos. Entre
los objetos, se verifican varias relaciones
p.ej. Progenitor(Marcos, José). Una función es
una relación en la cual sólo hay un valor para un
input dado. Ejemplos Objetos gente, casas,
números, planetas,... Relaciones progenitor,
hermano-de, mayor-que,... Propiedades rojo,
pequeño, primo,... Funciones padre-de,
uno-más-que
4Lógica de Primer Orden
Ejemplos Uno más uno igual a dos." Cuadrados
vecinos del Wumpus son malolientes." La lógica de
primer orden es universal porque puede expresar
cualquier cosa que pueda ser programada. Syntaxis
y semántica La lógica de primer orden tiene
sentencias como lógica proposicional y, además,
tiene términos, que representan objetos. Para
construÃr términos se usan sÃmbolos constantes,
variables y funciones, y cuantificadores y
sÃmbolos predicado son usados para construÃr
sentencias.
5Lógica de Primer Orden BNF
ltSentenciagt ltSentencia Atómicagt
ltSentenciagt ltConectorgt ltSentenciagt
ltCuantificadorgt
ltVariablegt,... ltSentenciagt
?ltSentenciagt
(ltSentenciagt) ltSentencia Atómicagt
ltPredicadogt(ltTérminogt,...)
ltTérminogt ltTérminogt ltTérminogt
ltFuncióngt(ltTérminogt,...)
ltConstantegt
ltVariablegt ltConectorgt ? ltgt
gt ltCuantificadorgt ? ? ltConstantegt Martin
59302 Gato X ... ltVariablegt a x s
... ltPredicadogt Previo Gusta Llueve
Falla ... ltFuncióngt Padre Cabellode
10043nota ...
6Lógica de Primer Orden
SÃmbolos constantes A, B, C, 1, Juan,... Cada
sÃmbolo constante nombra a exactamente un objeto
en el mundo, no todos los objetos necesitan tener
nombres y algunos pueden tener más de un
nombre. SÃmbolos predicado Vecino,
Hermano,... Un sÃmbolo predicado se refiere a una
relación particular en el modelo. Por ejemplo,
Hermano dado que Hermano es un sÃmbolo de
relación binaria, la relación a que se refiere
debe ser también binaria, es decir, debe darse o
fallar entre pares de objetos. SÃmbolos de
función Coseno, Padrede, PiernaIzquierdade Una
relación funcional relaciona un objeto a
exactamente otro único objeto. El último
elemento en la tupla es el valor de la función
para los otros elementos. ej. Oficinade(MarÃa,bas1
.240)
7Lógica de Primer Orden
Términos Un término es una expresión lógica que
se refiere a un objeto. Los sÃmbolos constantes
son términos. Los términos también se pueden
construÃr a partir de sÃmbolos de funciones y
sÃmbolos de constantes, ej., Padrede(Juan). La
semántica formal de los términos es la siguiente
Una interpretación especifica una relación
funcional referida por el sÃmbolo funcion y
objetos referidos por los sÃmbolos constantes. En
consecuencia, un término función se refiere a el
objeto n1 en una tupla cuyos primeros n
elementos son aquellos referidos por los
argumentos de la función. Sentencias atómicas Una
sentencia atómica está formada por un sÃmbolo
predicado seguido por una lista entre paréntesis
de términos, por ejemplo, Hermano(Roberto,Juan)
indica que el objeto referido por Roberto es el
hermano del objeto referido por Juan.
8Lógica de Primer Orden
Las sentencias atómicas pueden tener argumentos
que son términos complejos Casado(Padrede(Robert
o),Madrede(Juan)) Sentencias complejas Podemos
usar conectores lógicos para construÃr sentencias
más complejas. La semántica de éstas es la misma
usada en lógica proposicional. Ejemplos Hermano(R
oberto,Juan) ? Hermano(Juan,Roberto) es verdad en
el caso en que Juan es hermano de Roberto y
Roberto es hermano de Juan. Mayor(Juan,30) ?
Menor(Juan,30) es verdad cuando Juan es mayor de
30 o es menor que 30.
9Lógica de Primer Orden
Cuantificadores Nos permiten expresar propiedades
de colecciones de objetos. Hay dos
cuantificadores en lógica de primer orden
universal y existencial. Cuantificación
universal (?) Usando esta cuantificación podemos
decir cosas tal como, Todos los hamsters son
mamÃferos." ?x Hamster(x) ?Mamifero(x) En
consecuencia, una sentencia ?x ?(x) es verdad en
un modelo solo si ? es verdad para todos los
objetos en el modelo.
10Lógica de Primer Orden
Notar la diferencia entre ?x Hamster(x)?Mamifero(
x) y ?x Hamster(x)?Mamifero(x) Las afirmaciones
universales son verdad si son verdad para cada
individuo en el mundo. Se pueden pensar como una
conjunción infinita. Cuantificación
existencial Realiza afirmaciones acerca de al
menos algún objeto. Para decir, por ejemplo que
Mancha tiene una hermana que es un hamster,
escribimos ?x Hermana(x,mancha) ? Hamster(x) ?x
P es verdad si P es verdad para algún objeto en
el mundo. Se puede pensar como una disyunción
infinita. Cuantificadores anidados Se pueden
realizar afirmaciones muy complejas si se anidan
cuantificadores.
11Lógica de Primer Orden
Sin mezclar tipos de cuantificadores, podemos
decir cosas como ?x,y Progenitor(x,y) ?
Hijo(y,x) También podemos mezclar
cuantificadores, ?x?y Buenopara(x,y) Todos
somos buenos para alguna cosa" Conexiones entre ?
y ? Hay una Ãntima conexión entre los dos
cuantificadores. Para ver esto, considerar la
sentencia ?x ?Gusta(x,LideresDecepcionantes) Para
todo x, x no gusta de los lÃderes
decepcionantes." Otra forma de decir esto es, No
existe un x que guste de los lÃderes
decepcionantes. ??x Gusta(x,LideresDecepcionante
s) Esto es verdad en general porque ? es una
conjunción sobre todos los objetos y ? es una
disyunción sobre todos los objetos.
12Lógica de Primer Orden
De hecho, todo lo siguiente también es verdad ?x
?P ? ??x PÂ Â Â Â Â Â Â Â ?P??Q ? ?(P?Q)Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
              ??x P ? ?x ?P          ?(P?Q) ?
?P ? ?QÂ Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â ?x P ? ??x
?PÂ Â Â Â Â Â Â Â Â Â P ? Q ? ?(?P ? ?Q)Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â
          ?x P ? ??x ?P          P ? Q ? ?(?P ?
?Q) Igualdad Con frecuencia el sÃmbolo de
igualdad se incluye como un sÃmbolo especial.
Esto se debe a que la noción de igualdad es muy
importante en nuestro modo de pensar. Con este
sÃmbolo, podemos escribir cosas como
Padre(Juan)Jose, con el objeto de afirmar que el
objeto que es padre de Juan es el mismo que el
objeto José. Igualdad puede ser pensada como un
sÃmbolo de relación binaria ordinaria, asà la
interpre-tación de es un conjunto de pares.
13Lógica de Primer Orden
La igualdad puede ser usada para decir que hay
dos o más individuos con una propiedad
particular ?x,y Hermana(Mancha,x) ?
Hermana(Mancha,y) ? ?(xy) Hay un x y un y que
son hermanas de Mancha y no son el mismo
individuo." El sÃmbolo de igualdad también puede
ser usado para restringir el número de objetos
que tienen cierta propiedad, por ejemplo, ?x,y
P(x) ? P(y) ? xy Todo par de objetos con la
propiedad P son iguales." Esta afirmación los
restringe a ser un objeto con la propiedad P. Con
frecuencia se usa la forma reducida ?! x Rey(x)
que significa ?x Rey(x) ? ?y Rey(y) ? xy
14Lógica de Primer Orden
En la representación del conocimiento, un dominio
es una sección del mundo acerca del cual deseamos
expresar algún conocimiento. Un ejemplo simple y
muy conocido del uso de LPO para codificar
dominios es el dominio de relaciones
familiares. Axiomas, Definiciones y Teoremas Los
axiomas capturan los hechos básicos acerca de un
dominio. Los axiomas son luego usados para probar
teoremas. Haciendo preguntas y obteniendo
respuestas Para agregar sentencias a la base de
conocimiento, llamamos a TELL, por ej., TELL(KB,
?m,c Madre(c)m ? Hembra(m) ? Progenitor(m,c)) TEL
L se usa para axiomas(como aquà arriba) y hechos
especÃficos acerca de una situación particular
como TELL(KB,(Hembra(Maxi)?Progenitor(Maxi,Mancha)
?Progenitor(Mancha,Boots)))
15Lógica de Primer Orden
Con el agregado de estos hechos podemos
ASK(KB,Abuela(Maxi,Boots)) Y recibir respuesto
si/no. También podemos hacer preguntas para
obtener información adicional en las respuestas,
como ASK(KB, ?x hijo(x,Mancha)). Aquà no solo
queremos la respuesta si/no, querrÃamos conocer
el término x que denota objetos en el dominio. En
general, para un query con variables
existencialmente cuantificadas, queremos conocer
las particularizaciones de dichas variables.
Entonces, ASK retorna una lista de
particularizaciones, ej., x/boots.
16Agentes lógicos para el mundo de Wumpus
- Agente reflejo. Meramente clasifica sus
percepciones y actúa de acuerdo a dicha
clasificación. - Agente basado en modelo. Construye una
representación interna del mundo y la usa para
actuar. - Agente basado en objetivos. Forma objetivos y
trata de alcanzarlos
17Agentes lógicos para el mundo de Wumpus
El primer paso es definir la interface entre el
agente y el mundo. La secuencia de percepción
debe contener las percepciones y el momento en
que ocurrieron. Usaremos enteros para las etapas
temporales, asi una tÃpica sentencia de
percepción serÃa Percepcion(Hedor,Brisa,Brillo,Na
da,Nada,5) La acción del agente debe ser una
de Girar(Derecha), Girar(Izquierda), Avanzar,
Disparar, Tomar, Liberar, Trepar Para determinar
cuál es la mejor acción, creamos un query tal
como Accion(a,5). Si hemos presentado las cosas
de manera correcta, este query retornará una
lista de particularizac. tal como a/Tomar.
18Cálculo de situación
Cálculo de situación es el nombre dado a un modo
particular de describir cambio en LPO. Concibe al
mundo como una secuencia de situaciones, cada una
de las cuales es un instante en el estado del
mundo. Las situaciones son generadas a partir de
situaciones previas por medio de acciones. Cada
relación cuya verdad pueda cambiar con el tiempo,
es manejada dándole un argumento extra de
situación al correspondiente sÃmbolo de
predicado. Por convención, ubicamos el argumento
de situación siempre al final. AsÃ, en vez de
En(Agente,Ubicacion), deberemos tener
En(Agente,1,1,S0) ? En(Agente,1,2,S1). Las
relaciones o propiedade que no cambian con el
tiempo no necesitan el argumento extra, ej.,
ParedEn(0,1).
19Cálculo de situación