Tema 7 Lógicas de descripciones Año académico 2014/15 Profesores: Sascha Ossowski, Alberto Fernández y Holger Billhardt 1
Referencias Reasoning in Description Logics: Basics, Extensions, and Relatives. Ulrike Sattler. Reasoning Web 2007, LNCS 4636 Basic Description Logics. Franz Baader, Werner Nutt. Cap. 2 en The Description Logic Handbook: Theory, Implementation, and Applications. Cambridge University Press, 2003. Semantic Web: Concepts, Technologies and Applications. K. Breitman, M. A. Casanova, W. Truszkowski. Springer. 2007 (Cap. 3) Foundations of Semantic Web Technologies. P. Hitzler, M. Krötzsch, S. Rudolph. CRC Press. 2009. (Cap. 5) 2
Índice Representación del conocimiento Sintaxis y semántica ALC Bases de conocimientos Inferencia Mecanismos básicos Otros mecanismos ALC como Lógica de primer orden 3
Índice Representación del conocimiento Sintaxis y semántica ALC Bases de conocimientos Inferencia Mecanismos básicos Otros mecanismos ALC como Lógica de primer orden 4
Introducción Familia de formalismos de representación del conocimiento basados en lógica Describe el dominio en términos de: Conceptos (clases): curso, profesor, universidad, Roles (relaciones): imparte-curso, asiste-a-curso, Individuos: Luis, Ana, Alberto, Los lenguajes particulares se caracterizan por: El conjunto de constructores disponibles para construir conceptos y roles complejos a partir de otros más simples El conjunto de axiomas para añadir hechos sobre conceptos, roles e individuos Base lógica de OWL (Web Ontology Language) 5
Una lógica descriptiva (DL) básica: ALC ALC (Attributive Language with Complements) Sintaxis: descripción de conceptos ALC Sea C un conjunto de nombres de conceptos y R un conjunto de nombres de roles (relaciones o propiedades) disjunto de C Cada nombre de concepto es concepto ALC > y? son conceptos ALC Si C y D son conceptos ALC y r es un nombre de rol, entonces también son conceptos ALC: C u D (conjunción) C t D (disyunción) C (negación) 9r.C (restricción existencial) 8r.C (restricción de valores) Se usan paréntesis para clarificar la estructura de los conceptos Orden precedencia de operadores como en lógica de primer orden 6
Una lógica descriptiva básica: ALC Ejemplos (asumiendo nombres de conceptos empiezan por mayúscula, nombres de roles empiezan por minúscula) Bien formados Persona u Femenino Persona u 9asiste.Curso A u 9r.8s.(E u F) Persona u 9imparte.(Curso u 8matriculado-por.(Inteligente u Vago)) Hombre u tienehijo.femenino u tienehijo.masculino u tienehijo. (Rico t Feliz) Mal formados 8s.s Persona Femenino Persona u 9Curso 7
ALC: Semántica Interpretación I = (4 I, I) 4 I es un conjunto no vacío (llamado dominio) I es una función que asocia Cada nombre de concepto A C a un conjunto A I 4 I Cada nombre de rol r R a una relación binaria r I 4 I x 4 I I se extiende a conceptos complejos de la siguiente manera: > I = 4 I? I = (C u D) I = C I \Å D I (C t D) I = C I [ D I ( C) I = 4 I \ C I (9r.C) I = {d 4 I e 4 I con <d,e> r I y e C I } (8r.C) I = {d 4 I 8e 4 I, si <d,e> r I entonces e C I } 8
ALC: Ejemplo 1 Interpretación I: 4 I = {a, b, c, d} trabajapara Empleado I a = {a} d Persona I = {a, b} trabajapara Empresa I ={c, d, b} c b trabajapara SociedadAnónima I = {d} trabajapara I = {<a,c>, <a,d>, <b,b>} Algunas observaciones sobre I: Todos los elementos son instancia de > y ninguno es de? a es una instancia de Persona u Empleado c es una instancia de Empresa u Persona a y b son instancias de 9trabajaPara.Empresa, pero sólo a es instancia de 9trabajaPara. Persona Todos los elementos son instancia de 8trabajaPara.Empresa a no es instancia de 8trabajaPara.(Empresa u SociedadAnónima) c y d son instancias de 8trabajaPara.? 9
Bases de Conocimientos ALC Normalmente, una BC se divide en dos partes <T,A>: Tbox (Terminological KB): un conjunto de axiomas que describen la estructura de un dominio, de la forma: Inclusiones: C v D, siendo C y D conceptos ALC C v D sii C I µ D I Equivalencias: C D (si C es atómico se llama Definición) C D sii C v D y D v C (es decir, C I D I ) I es un modelo de T si y sólo si satisface todos los axiomas de T Abox (Assertional KB): un conjunto de axiomas que describen una situación concreta, de la forma: Aserción de conceptos: C(a) C(a) si a I C I Aserción de roles: r(a,b) r(a,b) si <a,b> r I 10
Bases de Conocimientos: Ejemplo 2 T = { Empresa v Persona, TBox EmpresaPrivada v Empresa, Empleado Persona u 9trabajaPara.Empresa SociedadAnónima v Empresa, Empleado v Persona u 9trabajaPara.Empresa, Persona u 9trabajaPara.Empresa v Empleado, 9trabajaPara.> v Persona, Empresario v Persona u 9posee.Empresa, Persona u 9posee.Empresa v Empresario, 9posee.> v Persona } Empresario Persona u 9posee.Empresa 11
Bases de Conocimientos: Ejemplo 2 K=<T,A> T = { Empresa v Persona, EmpresaPrivada v Empresa, SociedadAnónima v Empresa, Empleado Persona u 9trabajaPara.Empresa, 9trabajaPara.> v Persona, Empresario Persona u 9posee.Empresa, 9posee.> v Persona } A = {Persona(Ana), Empresa (IBM), (Empresa u SociedadAnónima)(Telefónica), Persona(Luis) (Persona u Empleado)(Marta), trabajapara(ana,ibm), trabajapara(luis,telefónica), posee(marta,telefónica), posee(ana,telefónica)} TBox ABox 12
Índice Representación del conocimiento Sintaxis y semántica ALC Bases de conocimientos Inferencia Mecanismos básicos Otros mecanismos ALC como Lógica de primer orden 13
Inferencia Mecanismos básicos de razonamiento: dada una BC K=<T,A>, los conceptos C y D, y un individuo a: Satisfacibilidad: C es satisfacible sii existe un modelo I de T y un b 4 I con b I C I (C I ) Subsunción: C es subsumido por D (C v T D o T C v D) sii C I µ D I para cada modelo I de T Equivalencia: C y D son equivalentes (C T D) sii C I D I para cada modelo I de T Disjunto: C y D son disjuntos (C u T D? o C v T D) sii para cada modelo I de T C I \Å D I = Consistencia: K es consistente sii existe algún modelo de K Instancia: a es una instancia de C sii a I C I para cada modelo I de T 14
Inferencia Propiedades de relación de subsunción Sean C, D, y E conceptos, a un nombre de individuo, y <T,A> una BC C v T C (reflexiva) Si C v T D y D v T E, entonces C v T E (transitiva) Si a es una instancia de C y C v T D, entonces a es una instancia de D 15
Inferencia Ejemplos: A u A es insatisfacible? y A u A son equivalentes 9r.A u 8r. A es insatisfacible A u B es subsumido por A (A u B v T A) Del ejemplo 2 se deduce, entre otras cosas: SociedadAnónima v T Persona 9trabajaPara.Empresa v T Empresa Ana y Luis son instancias de Empleado Empresa u 9trabajaPara.Empresa es insatisfacible 16
Inferencia Otros mecanismos de razonamiento más sofisticados Clasificación de una TBox T Computar la jerarquía de subsunción entre todos los nombres de conceptos en T. Es decir, para cada par de conceptos C, D comprobar si C es subsumido por D y si D es subsumido por C Comprobar la satisfacibilidad de conceptos en T. Para cada concepto C en T, comprobar si C es satisfacible (de lo contrario hay un error de modelado) Recuperación de instancias Dado un concepto C y una base de conocimiento K, devolver todos los nombres de individuos a que sean instancia de C. Realización de un nombre de individuo Dado un individuo a y una base de conocimiento K, comprobar, para cada nombre de concepto C de T, si a es instancia de C, y devolver todos los C que a es instancia 17
Índice Representación del conocimiento Sintaxis y semántica ALC Bases de conocimientos Inferencia Mecanismos básicos Otros mecanismos ALC como Lógica de primer orden 18
ALC como Lógica de primer orden Se interpreta: Nombres de conceptos Predicados unarios Nombres de roles Predicados binarios Conceptos Fórmulas con una variable libre Definición de conceptos ALC: π x (A) = A(x) (π x (>) = Cierto, π x (?) = Falso) π x ( C) = π x (C) π x (C u D) = π x (C) ^Æ π x (D) π x (C t D) = π x (C) _Ç π x (D) π x (9r.C) = 9y(r(x,y) ^Æ π y (C)) π x (8r.C) = 8y(r(x,y)! π y (C)) 19
ALC como Lógica de primer orden TBoxes π(t ) = ^ÆC v D 2T 8x(π x (C)! π x (D)) ABoxes Nombres de individuos a constantes Sea ψ[x/a] la fórmula obtenida al reemplazar en ψ todas las apariciones libres de x por a. π(a ) = ^ÆC(a) 2A π x (C)[x/a] ^Æ ^Ær(a,b)2A r(a,b) 20