Metodología de Programación I Lógica de Primer Orden · I Por ejemplo, en 9X sobre(X;Y) la...
Transcript of Metodología de Programación I Lógica de Primer Orden · I Por ejemplo, en 9X sobre(X;Y) la...
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Metodologıa de Programacion ILogica de Primer Orden
Dr. Alejandro Guerra-Hernandez
Departamento de Inteligencia ArtificialFacultad de Fısica e Inteligencia Artificial
[email protected]://www.uv.mx/aguerra
Maestrıa en Inteligencia Artificial 2011
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Objetivo
I A la programacion logica le concierne el uso de la logica deprimer orden para representar y resolver problemas.
I Usamos una logica de primer orden restringida a clausulas deHorn y resolucion-SLD [2].
I Hoy revisaremos algunos conceptos preliminares de la Logicade Primer Orden, necesarios para formalizar los conceptoscitados.
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Representacion
I Cuando describimos situaciones de nuestro interes, solemoshacer uso de enunciados declarativos.
I Se trata de expresiones del lenguaje natural que son o bienverdaderas, o bien falsas (a diferencia de interrogativas, etc.).
I Las proposiciones representan hechos que se dan o no en larealidad.
I La logica de primer orden tienen un compromiso ontologicomas fuerte [4], donde la realidad implica ademas, objetos yrelaciones entre ellos.
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Razonamiento
I Consideren los siguientes enunciados declarativos:
1. Julia es madre y Luis es hijo de Julia.2. Toda madre ama a sus hijos.
I Conociendolas es posible inferir:
3. Julia ama a Luis.
I Para ello definimos un conjunto de reglas de inferencia.Ejemplo:
P,P =⇒ Q
Q(M.P.)
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Componentes de un Sistema Formal (1)
I Un alfabeto y un conjunto de reglas sintacticas que generanformulas bien formadas (fbf) del lenguaje.
I Una teorıa del modelo. Su funcion es relacionar las fbf conalguna interpretacion de la realidad, para establecer cuandouna fbf es falsa y cuando verdadera.
I Si la interpretacion M hace que la expresion α sea verdadera,se dice que M es un modelo de α o que M satisface α, y seescribe M |= α. Una fbf es valida si es verdadera para todomodelo, y se escribe ` α.
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Componentes de un Sistema Formal (2)
I Una teorıa de prueba que hace de cada enunciado matematicouna formula demostrable y rigurosamente deducible.
I Incluye axiomas y reglas de inferencia.
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
El mundo de los bloques [1]
Mesa
B
A
C
D
E
Brazo robótico
I Necesitaremos sımbolospara:
I ObjetosI RelacionesI FuncionesI Variables
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Universo de discurso
Mesa
B
A
C
D
E
Brazo robótico
I Se denota como U y es elconjunto de todos objetos sobrelos cuales queremos expresarnos.
I Para el mundo de los bloques:
U = {a,b,c,d ,e,brazo,mesa}
I Seguire la notacion usada porProlog, las constantes soncadenas que inician conminuscula.
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Funciones
Mesa
B
A
C
D
E
Brazo robótico
I Son relaciones especiales entrelos miembros de U . Mapean unconjunto de objetos de entradaa un objeto unico de salida.
I La funcion parcial sombrero ={(b,a),(c ,d),(d ,e)}:
sombrero(b) 7→ a
I Base funcional es el conjuntode todas las funcionesconsideradas.
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Predicados
I Denotan relaciones entre losmiembros de U . Mapean a falsoo verdadero.
I El predicadosobre = {(a,b),(d ,c),(e,d)}:
sobre(a,b) 7→ true
I El predicado libre = {a,e}:
libre(d) 7→ false
I Base relacional es el conjunto detodos los predicados considerados.
Mesa
B
A
C
D
E
Brazo robótico
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Predicados y Funciones
Mesa
B
A
C
D
E
Brazo robótico
I sobre = base = {(a,b), . . .}I Los predicados pueden verse
como funciones booleanas:
sobre(a,b) 7→ true
I Las funciones en este contexto,tienen su codomino en algunsubconjunto de U :
base(a) 7→ b
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Extension de un predicado
I Para universos de discurso finitos, existe un lımite superior enel numero posible de predicados n-arios.
I Para un universo de discurso de cardinalidad b , existen bn
distintas n-tuplas.
I Cualquier predicado n-ario es un subconjunto de estas bn
tuplas.
I Por lo tanto, un predicado n-ario debe corresponder a uno demaximo 2(bn) conjuntos posibles.
I Caso aplicacion: en programacion logica inductivaesta relacionado con el tamano de mi espacio debusqueda!
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Variables y cuantificadores
I Toman valores de U .
I El cuantificador “para todo” (∀)expresa hechos acerca de todoslos objetos en U , sin necesidadde enumerarlos:
∀X libre(X )⇐ . . .
I El cuantificador “existe” (∃)expresa la existencia de unobjeto en U con ciertapropiedad en partıcular:
∀X ∃Y ocupado(X )⇐ sobre(Y ,X )
Mesa
B
A
C
D
E
Brazo robótico
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Alfabeto de la Logica de Primer Orden
Const El conjunto de sımbolos de constantes;
Var El conjunto de sımbolos de variables;
Pred El conjunto de sımbolos de predicados;
Func El conjunto de sımbolos funcionales (Const ⊂ Func);
¬ El operador monario de negacion;
∨ El operador binario de disyuncion;
∀ El sımbolo de cuantificacion universal;
() Los parentesis.
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Reglas sintacticas (terminos)
1. Si α ∈ Const entonces α ∈ Term;
2. Si α ∈ Var , entonces α ∈ Term;
3. Si α/n ∈ Func , entonces α(φ1, . . . ,φn) ∈ Term si y solo siφ1≤i≤n ∈ Term.
4. Ninguna otra expresion es un termino.
I a,b,c ,mesa, . . .
I X ,Y ,Z ,Cubo1,Cubo2, . . .
I base(b),sombrero(X ), . . .
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Reglas sintacticas (formulas bien formadas)
1. Si α/n ∈ Pred , entonces α(φ0, . . . ,φn) ∈LFOL si y solo siφi ∈ Term, i = 0 . . .n;
2. Si α ∈LFOL, entonces ¬α ∈LFOL;
3. Si α ∈LFOL y β ∈LFOL, entonces (α ∨β ) ∈LFOL
4. Si α ∈LFOL y X ∈ Vars es una variable que ocurreen α, entonces ∀X α ∈LFOL
5. Nada mas es una formula bien formada (fbf).
I sobre(a,b), libre(X ),ama(X ,hijo(X )), . . .
I ¬libre(a),¬libre(Y ), . . .
I sobre(X ,Y )∧¬libre(X ), . . .
I ∀X ama(X ,hijo(X )), . . .
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Definiciones auxiliares
conjuncion (α ∧β ) =def ¬(¬α ∨¬β );
implicacion material (α ⇒ β ) =def (¬α ∨β );
equivalencia material (α ≡ β ) =def ((α ⇒ β )∧ (β ⇒ α));
falso f =def ¬α ∧α;
verdadero t =def ¬fcuantificador existencial ∃X α =def ¬(∀X ¬α)
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Notacion extra
I En una fbf de la forma ∀X α, se dice que la fbf α esta bajo elalcance del cuantificador ∀X .
I En tal caso, se dice que la ocurrencia de X en α esta acotada,en caso contrario se dice que la ocurrencia de la variable eslibre.
I Por ejemplo, en ∃X sobre(X ,Y ) la variable X esta acotada,mientras que Y esta libre.
I Un termino sin variables se conoce como termino de base.
I Por ejemplo, sobre(a,b).
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Interpretacion
I Para expresar que al menos hay un bloque que no tiene nadaencima, escribimos: ∃X bloque(X )∧ libre(X ).
I Cuando usamos cuantificadores siempre tenemos en mente alU , en este caso {a,b,c ,d ,e,brazo,mesa}.
I Una interpretacion de esta expresion es un subconjunto de Utal que los miembros de ese subconjunto satisfacen elsignificado esperado de la expresion. En este caso {a,e}.
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Teorıa del modelo
I Para obtener un modelo para el lenguaje LFOL formamos elpar M = 〈D,V 〉, donde D es el universo de discurso y lainterpretacion V es una funcion, tal que:
I Para cualquier predicado α de aridad n V (α) regresa lasn-tuplas que corresponden a la interpretacion esperada delpredicado.
I Para una constante, la funcion V regresa la misma constante,ej. V (a) = a.
I Algunas veces la expresion V (α) se abrevia αV .
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Interpretacion para el mundo de bloques
aV = a
bV = b
cV = c
dV = d
eV = e
sobreV = {(a,b),(e,d),(d ,c)}enLaMesaV = {b,c}
libreV = {a,e}porEncimaV = {(a,b),(e,d),(e,c),(d ,c)}
Mesa
B
A
C
D
E
Brazo robótico
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Interpretacion y asignacion de variables
I Una interpretacion V , con respecto a un dominio de discursoD, es una funcion que satisface las siguientes propiedades:
I Si α ∈ Const, Entonces V (α) = α;I Si α/n ≥ 1 ∈ Pred , Entonces V (α)⊆ Dn.
I libreV ⊂ {a,b,c ,d ,e,mesa,mano}.I sobreV ⊂ D×D.
I Decimos que U es una asignacion de variables basada en elmodelo M = 〈D,V 〉 si para todo α ∈ Var , U(α) ∈ D.
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Asignacion de terminos
I La asignacion de terminos T dadas la interpretacion V y laasignacion de variables U, es un mapeo de terminos a objetosdel universo de discurso que se define como sigue:
I Si α ∈ Const, entonces TVU(α) = V (α).I Si α ∈ Var , entonces TVU(α) = U(α).I Si α ∈ Term y es de la forma α(φ1, . . . ,φn); y V (α) = g ; y
TVU(φi ) = xi , entonces TVU(α(φ1, . . . ,φn)) = g(x1, . . . ,xn).
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Satisfaccion (I can’t get no)
I El hecho de que el enunciado α sea satisfecho bajo unainterpretacion V y una asignacion U, se escribe:
|=V α[U]
I Entonces podemos escribir M |= VU(α) para expresar que α
es verdadera en el modelo M = 〈D,V 〉 cuando las variables enα toman valores de acuerdo a la asignacion U.
I Por ejemplo, M |= VU(sobre(X ,b)) si X\a ∈ U.
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Satisfaccion (Oh yes! I can)
I Ecuaciones (igualdad) M |=V (α = β )[U], si y solo siTVU(α) = TVU(β ).
I Atomos que no sean ecuaciones M |=V α(τ1, . . . ,τn)[U], si ysolo si (TVU(τ1), . . . ,TVU(τn)) ∈ αV .
I Negacion M |=V ¬(α)[U], si y solo si M 6|=V α[U].
I Disyuncion M |=V (α ∨β )[U], si y solo si, M |=V α[U]o M |= β [U].
I Cuantificador universal M |=V ∀X α[U], si y solo si para todaβ en el universo de discurso, es el caso que M |=V α[U ′],donde U ′(X ) = β y U ′(µ) = U(µ) para µ 6= X .
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Definiciones complementarias
I Si una interpretacion V safisface a un enunciado α para todaasignacion de variables, se dice que V es un modelo de α.
I Un enunciado se dice satisfacible si existe algunainterpretacion y asignacion de variables que lo satisfaga.
I De otra forma, se dice que el enunciado es insatisfacible.
I Una fbf α es valida si y solo si se satisface en todaintepretacion y asignacion de variables.
I Las fbf validas lo son en virtud de su estructura logica, por loque no proveen informacion acerca del dominio descrito.Por ejemplo p(X )∨¬p(X ) es una fbf valida.
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Mi mama me ama
I Retomemos el ejemplo de la introduccion:
1. Toda madre ama a sus hijos.2. Julia es madre y Luis es hijo de Julia.3. Julia ama a Luis.
I Se puede formalizar como:
1. ∀X ∀Y madre(X )∧hijo de(Y ,X )⇒ ama(X ,Y )2. madre(julia)∧hijo de(luis, julia)3. ama(julia, luis)
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Reglas de inferencia
I La inferencia puede verse como un proceso de manipulacion defbf, donde a partir las premisas, se producen las conclusiones.
I Modus Ponens. O de eliminacion de la implicacion:
α α ⇒ β
β(⇒ E )
I Eliminacion de cuantificador universal.:
∀X α(X )
α(t)(∀E )
I Introduccion de conjuncion.:
α β
α ∧β(∧I )
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Ejemplo de derivacion
I Inicio:
1. ∀X∀Ymadre(X )∧hijo de(Y ,X ) =⇒ ama(X ,Y )2. madre(julia)∧hijo de(luis, julia)
I Al aplicar la eliminacion de cuantificador universal (∀E ) a (1)obtenemos:
3. ∀Y (madre(julia)∧hijo de(Y , julia) =⇒ ama(julia,Y )
I Al aplicar nuevamente (∀E ) a (3) obtenemos:
4. madre(julia)∧hijo de(luis, julia) =⇒ ama(julia, luis)
I Finalmente, al aplicar Modus Ponens a (2) y (4):
5. ama(julia, luis)
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Consistencia y completitud
I El hecho de que una formula α sea derivable a partir de unaformula β se escribe β ` α.
I Un conjunto de reglas de inferencia se dice consistente si, paratodo conjunto de fbf cerradas (sin ocurrencia de variableslibres) P y cada fbf cerrada α, siempre que P ` α se tiene queP |= α.
I Las reglas de inferencia se dicen completas si P ` α siempreque P |= α.
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Substituciones y su aplicacion
I Dada una variable X , un termino t y una fbf α, la expresionα[t/X ] denota la fbf resultado de subsistuir cada ocurrencialibre de X en α por t.
I ∀X (p(X )∧q(X ))⇒ p(X )∧q(Y ) [f (X ,Y )/X ]
I ∀X (p(X )∧q(X ))⇒ p(f (X ,Y ))∧q(Y )
Introduccion Lenguaje (informal) Sintaxis Interpretaciones y Modelos Semantica Inferencia
Bibliografıa
M. Genesereth and N. Nilsson.Logical Foundations for Artificial Intelligence.Morgan Kauffman Publishers, Inc., Palo Alto, CA., USA, 1987.
S.-H. Nenhuys-Chen and R. de Wolf.Foundations of Inductive Logic Programming, volume 1228 ofLecture Notes in Artificial Intelligence.Springer-Verlag, Berlin Heidelberg, 1997.
U. Nilsson and J. Maluszynski.Logic, Programming and Prolog.John Wiley & Sons Ltd, 2nd edition, 2000.
S. J. Russell and P. Norvig.Artificial Intelligence, a modern approach.Prentice Hall, New Jersey, USA, 2nd edition, 2003.