raciocínio em lógica de descrições
DESCRIPTION
Raciocínio em Lógica de Descrições. Menandro Ribeiro Santana. Roteiro. Introdução Raciocínio em DL Otimizações em Sistemas de Raciocínio. Introdução. Lógicas de Descrições. Família de formalismos de representação do conhecimento baseados na Lógica Matemática. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/1.jpg)
Raciocínio em Lógica de Descrições
Menandro Ribeiro Santana
![Page 2: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/2.jpg)
Roteiro
Introdução
Raciocínio em DL
Otimizações em Sistemas de Raciocínio
![Page 3: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/3.jpg)
INTRODUÇÃO
![Page 4: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/4.jpg)
Lógicas de Descrições
Família de formalismos de representação do conhecimento baseados na Lógica Matemática.
– Descrevem o domínio em termos de conceitos, propriedades e indivíduos.
– Possuem semântica formal– Provêem serviços de inferência.
![Page 5: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/5.jpg)
Sintaxe e Semântica das DL’sUma interpretação é um par <I, I>, onde:
I é o universo de discurso (não-vazio)– I é uma função de interpretação, que mapeia:
• Conceitos para subconjuntos de I• Papéis para subconjuntos de II• Instâncias para elementos de I
![Page 6: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/6.jpg)
Sintaxe e Semântica das DL’s
![Page 7: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/7.jpg)
Sintaxe e Semântica das DL’s
![Page 8: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/8.jpg)
S = FL- +AL*+papéis transitivos– SHIQ
Famílias de DL’s
![Page 9: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/9.jpg)
Base de Conhecimento em DL
Par <TBox, ABox> onde:
– TBox (Terminological Box)• Conhecimento Intensional: conhecimento geral sobre o
domínio do problema.
– ABox (Assertional Box)• Conhecimento Extensional: especifica um problema
particular.
![Page 10: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/10.jpg)
TBox
Conhecimento intensional na forma de terminologia.
Construído através de declarações que descrevem as propriedades gerais dos conceitos.
– Conceito primitivo (base)PessoaFêmea
– Conceito complexoMulher ≡ Pessoa ┌┐ Fêmea
![Page 11: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/11.jpg)
As declarações do TBox são representadas como: – Equivalências lógicas (condições necessárias e
suficientes) : ≡ – Inclusão (condições necessárias) :
Características das declarações:– Somente é permitida uma definição para cada nome de
conceito.– É recomendado que as definições sejam acíclicas, isto é,
não podem ser definidas em termos de:• Elas mesmas• Outros conceitos que indiretamente se referem a elas.
TBox
![Page 12: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/12.jpg)
TBox - Exemplo
![Page 13: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/13.jpg)
ABox
Conhecimento extensional, que especifica os indivíduos do domínio.
Instanciação da estrutura de conceitos.
![Page 14: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/14.jpg)
Tipos de Declarações no ABox
Declaração de Conceitos : C(a)– Declara que “a” é um indivíduo do conceito C.– Ex : Pessoa(Ana)
Declaração de Papel : R(a,b)– Declara que o indivíduo “a” está relacionado
com o indivíduo “b” através da propriedade R.– Ex : temFilho(Ana,João)
![Page 15: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/15.jpg)
ABox - Exemplo
![Page 16: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/16.jpg)
RACIOCÍNIO EM DL
![Page 17: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/17.jpg)
Raciocínio em DL
SatisfatibilidadeSubsunçãoConseqüência LógicaChecagem de EquivalênciaChecagem de ConsistênciaChecagem de InstânciaConsulta a Ontologia
![Page 18: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/18.jpg)
Um conceito é satisfatível com respeito a um TBox T se existe uma interpretação I de T tal que CI é não vazio. Neste caso dizemos que I é um modelo de T.
Satisfatibilidade
![Page 19: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/19.jpg)
Satisfatibilidade - Exemplo
TBox Mulher ≡ Pessoa ┌┐ Fêmea Mãe ≡ Mulher ┌┐ temFilho. Pessoa
Teste de Satisfatibilidade Mãe(a) ≡ Mulher(a) ┌┐ temFilho(a,b) Mãe(a) ≡ (Pessoa(a) ┌┐ Fêmea(a)) ┌┐ temFilho(a,b)
![Page 20: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/20.jpg)
Insatisfatibilidade - ExemploTBox
Mulher ≡ Pessoa ┌┐ FêmeaHomem ≡ Pessoa ┌┐ ¬MulherHermafrodita ≡ Homem ┌┐ Mulher
Teste de SatisfatibilidadeHermafrodita(a) ≡ Homem(a) ┌┐ Mulher(a)Hermafrodita(a) ≡ Pessoa(a) ┌┐ ¬Mulher(a) ┌┐
Mulher(a)
![Page 21: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/21.jpg)
Subsunção
Um conceito C é classificado por um conceito D com respeito a um TBox T se CI DI para toda interpretação I de T. Neste caso escrevemos C T D ou T ╞ C D . – O conceito D é chamado classificador– O conceito C é chamado classificado.
![Page 22: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/22.jpg)
Subsunção - Exemplo
TBox Mulher ≡ Pessoa ┌┐ Fêmea Mãe ≡ Mulher ┌┐ temFilho. Pessoa
Relacionamento entre os conceitos Mãe Mulher Classificador : Mulher Classificado : Mãe
![Page 23: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/23.jpg)
Conseqüência LógicaSe todo modelo da BC A é também modelo da
BC B, então B é Conseqüência Lógica de A
– TBox:teaches.Course Undergrad └┘ Professor
– ABox:• teaches ( john , cs415 ) ; Course ( cs415 ) ;• Undergrad ( john )
– Professor ( john )?
![Page 24: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/24.jpg)
Dois conceitos C e D são equivalentes com respeito a um TBox T se CI = DI para toda interpretação I de T. Neste caso escrevemos C ≡T D ou T ╞ C ≡ D .
Checagem de Equivalência
![Page 25: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/25.jpg)
Checagem de Equivalência - Exemplo
TBox Mulher ≡ Pessoa ┌┐ Fêmea Homem ≡ Pessoa ┌┐ ¬Mulher Masculino ≡ Pessoa ┌┐ ¬Fêmea
Expansão do TBox e Simplificação Homem ≡ Pessoa ┌┐ ¬ Mulher Homem ≡ Pessoa ┌┐ ¬(Pessoa ┌┐ Fêmea) Homem ≡ Pessoa ┌┐ (¬Pessoa └┘ ¬Fêmea) Homem ≡ (Pessoa ┌┐ ¬Pessoa) └┘ (Pessoa ┌┐ ¬Fêmea) Homem ≡ Pessoa ┌┐ ¬Fêmea
Relacionamento entre os conceitos HomemI = MasculinoI
![Page 26: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/26.jpg)
Checagem de Consistência
Um ABox A é consistente com relação a um TBox T se existe uma interpretação que é modelo de ambos, A e T.
![Page 27: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/27.jpg)
Checagem de Consistência - Exemplo
TBox Mulher ≡ Pessoa ┌┐ Fêmea Homem ≡ Pessoa ┌┐ ¬Mulher Pai ≡ Homem ┌┐ temFilho. Pessoa
ABox Mulher(Jaguaraci) Pai(Jaguaraci) temFilho(Jaguaraci, Ana) Mulher(Jaguaraci) ≡ Pessoa(Jaguaraci) ┌┐ Fêmea(Jaguaraci) Pai(Jaguaraci) ≡ Homem(Jaguaraci) ┌┐ temFilho(Jaguaraci, Ana) Homem(Jaguaraci) ≡ Pessoa(Jaguaraci) ┌┐ ¬Mulher(Jaguaraci)
![Page 28: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/28.jpg)
Checagem de Instância
Verifica se um dado indivíduo é uma instância de um conceito específico.
Exemplo:TBox
Mulher ≡ Pessoa ┌┐ FêmeaMãe ≡ Mulher ┌┐ temFilho. Pessoa
ABoxMulher(Maria)temFilho(Maria,Pedro)
Checagem de InstânciaMãe(Maria)Mãe(Maria) ≡ Mulher(Maria) ┌┐ temFilho. Pessoa
![Page 29: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/29.jpg)
Consulta a Ontologia
Encontra os indivíduos na base de conhecimento que são instâncias de um dado conceito.
Exemplo: ABoxMulher(Maria)Homem(João)Homem(Pedro)
Resposta da ConsultaHomem → João, PedroMulher → Maria
![Page 30: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/30.jpg)
Redução
É possível implementar os serviços de raciocínio para o TBox a partir da satisfatibilidade ou da subsunção dependendo da lógica de descrições utilizada.– Interseção (┌┐) e conceito de insatisfatibilidade
(┴) : Redução a Subsunção.
– Interseção (┌┐) e negação (¬) : Redução a Satisfatibilidade.
![Page 31: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/31.jpg)
Redução a Subsunção
Proposição (Redução a Subsunção)
Para conceitos C e D temos:
(i) C é INSAT C ┴ ;(ii) C = D (C D) ┌┐ (D C);(iii) C e D disjuntos (C ┌┐ D) ┴ .;
![Page 32: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/32.jpg)
Redução a Satisfatibilidade
Proposição ( Redução a Satisfatibilidade )
Para conceitos C e D temos:
(i) C D (C ┌┐ ¬D) ┴ .
(ii) C = D (( C ┌┐ ¬D) ┴) ┌┐ ((¬C ┌┐ D ) ┴);
(iii) C e D disjuntos (C ┌┐ D) ┴
![Page 33: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/33.jpg)
Algoritmo Tableau
Ao invés de testar diretamente a subsunção dos conceitos, este algoritmo usa a negação para reduzir a subsunção a (in)satisfatibilidade dos conceitos.
C D se somente se C ┌┐ ¬D é INSAT
![Page 34: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/34.jpg)
C D se somente se (C ┌┐ ¬D) ┴
C D ≡ C → DC → D ≡ ¬C└┘DPara realizar o algoritmo tableau é
necessário negar a expressão (¬C └┘ D) e chegar a insatisfatibilidade.
¬(¬C └┘ D) ≡ C ┌┐ ¬DC ┌┐ ¬D é insatisfatível
Algoritmo Tableau
![Page 35: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/35.jpg)
Exemplo
Sejam A e B nomes de conceitos e R o nome de um papel. Analisar se (R.A) ┌┐ (R.B) é subclasse de R.(A ┌┐ B).
C = (R.A) ┌┐ (R.B) ┌┐ (¬ R.(A ┌┐ B))
Forma normal de negação:C0 = (R.A) ┌┐ (R.B) ┌┐ R.(¬A └┘ ¬B))
![Page 36: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/36.jpg)
Construir uma interpretação finita I tal que C0
I .– Gerar um indivíduo b tal que b C0
I .– b (R.A)I, b (R.B)I , b R.(¬A └┘ ¬B)I.– b (R.A)I deve existir um indivíduo c tal
que (b,c) RI e c AI .– b (R.B)I deve existir um indivíduo d tal
que (b,d) RI e d BI .
![Page 37: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/37.jpg)
– b R.(¬A └┘ ¬B)I.– c (¬A └┘ ¬B)I e d (¬A └┘ ¬B)I .– c (¬A └┘ ¬B)I c (¬A)I ou c (¬B)I .– d (¬A └┘ ¬B)I d (¬A)I ou d (¬B)I .
Conclusão: (R.A) ┌┐ (R.B) não é subclasse de R.(A ┌┐ B)
![Page 38: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/38.jpg)
As restrições são expressadas como declarações do ABox.
Seja C0 um conceito ALCN na forma de negação normal.
O algoritmo inicia com o ABox A0 = {C0(x0)}.Utilizar as Regras de transformação do algoritmo de
satisfatibilidade, até que nenhuma delas possa ser usada.
ABox Completo – ABox onde todos os ramos possíveis foram expandidos.
Algoritmo Tableau
![Page 39: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/39.jpg)
R1=H ┌┐ G R2=H └┘ G R3=HG
H G H G H G
R4=HG R5=H R6=(H ┌┐ G)H
H┌┐G H┌┐G H G
R7=(H └┘ G) R8=(HG) R9=(HG)
H HG G H┌┐G H┌┐G
Regras – Lógica Proposicional
![Page 40: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/40.jpg)
R1=(H ┌┐ G)(x) R2=(H └┘ G)(x)
H(x) G(x) H(x) G(x)
R3= (R.C)(x) C(y)
R(x,y)
R4= (R.C)(x) e R(x,y) C(y)
Regras – DL (ALC)
onde y é um nome de indivíduo que não ocorre em A
![Page 41: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/41.jpg)
R6= (nR)(x) R7= (nR)(x)R(x,z1) R(x,z1) R(x,z2) R(x,z2) : :R(x,zn) R(x, zn)
R(x, zn+1)zi≠zj não está em KB (com i≠j)
zi=zj
Regras – DL (N)
![Page 42: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/42.jpg)
R8= (R.C)(x) e R+
C(y) (R.C)(x) onde C não é atômico
Problema- Regra gera recursividade
Solução- Bloqueio, após perceber que nada de novo está sendo gerado
Regras – DL (R+)
![Page 43: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/43.jpg)
Regras – DL (R+)
![Page 44: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/44.jpg)
Regras – DL (R+)
![Page 45: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/45.jpg)
Regras – DL (R+)
![Page 46: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/46.jpg)
Algoritmo Tableau
Um conceito C é insatisfatível sse KB ┌┐ C = ┴ em todas as interpretações
– Cada ramo do Abox contém uma contradição (clash) de um dos seguintes tipos:
1. {┴ (x)} KB para algum nome de indivíduo x;2. {A(x), ¬A(x)} KB para algum nome de indivíduo x e
algum nome de conceito A;3. (nR)(x) R(x,yi) | 1 i n+1} {yi yj | 1 i j
n+1} KB para nomes de indivíduos x, y1,..., yn+1 , um inteiro não negativo n e um nome de papel R.
![Page 47: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/47.jpg)
Aplicação do Tableau : Exemplo 1
Sejam A e B nomes de conceitos e R o nome de um papel. Analisar se (R.A) ┌┐ (R.B) é subclasse de R.(A ┌┐ B).
– C = (R.A) ┌┐ (R.B) ┌┐ (¬ R.(A ┌┐ B))
Forma normal de negação:
– C0 = (R.A) ┌┐ (R.B) ┌┐ R.(¬A └┘ ¬B))
![Page 48: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/48.jpg)
![Page 49: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/49.jpg)
Aplicação do Tableau : Exemplo 2
Sejam A e B nomes de conceitos e R o nome de um papel. Analisar se (R.A) ┌┐ (R.B) ┌┐ 1 R é subclasse de R.(A ┌┐ B).
– C = (R.A)┌┐(R.B)┌┐( 1 R)┌┐(¬ R.(A┌┐ B))
Forma normal de negação:
– C0 = (R.A)┌┐(R.B)┌┐( 1 R)┌┐R.(¬A└┘ ¬B))
![Page 50: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/50.jpg)
![Page 51: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/51.jpg)
Aplicação do Tableau : Exemplo 3
Seja a BC– Conference progChair.Person progChair.T Event– Conference (eswc)
Provar – Event(eswc)– Verificar se Conference (eswc) ┌┐ ¬Event(eswc) é
insatisfatível
![Page 52: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/52.jpg)
Aplicação do Tableau : Exemplo 3
![Page 53: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/53.jpg)
OTIMIZAÇÕES EM SISTEMAS DE RACIOCÍNIO
![Page 54: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/54.jpg)
Expansão do TBox - Unfold
Pode-se reduzir os problemas de raciocínio com relação a um TBox acíclico T para problemas com respeito ao TBox vazio.– TBox vazio: TBox no qual todos os conceitos
complexos são definidos apenas com a utilização de conceitos primitivos.
– Necessário expandir as definições de conceitos armazenados no TBox.
– Permite encontrar mais facilmente as semelhanças entre conceitos, contradições, etc.
![Page 55: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/55.jpg)
Cada definição está na forma A ≡ D onde D contém somente símbolos base.– OBS: A D pode ser substituído por A ≡ Ā ┌┐ D ,
sendo que Ā é um novo símbolo base.Para cada conceito C, definimos a expansão de C
com respeito a T como o conceito C’ que é obtido de C pela substituição de cada ocorrência de um nome de símbolo A em C pelo conceito D.
Expansão do TBox
![Page 56: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/56.jpg)
Expansão do TBox - Exemplo
Mulher ≡ Pessoa ┌┐ FêmeaHomem ≡ Pessoa ┌┐ ¬MulherMãe ≡ Mulher ┌┐ temFilho. PessoaPai ≡ Homem ┌┐ temFilho. PessoaPais ≡ Pai └┘ Mãe
![Page 57: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/57.jpg)
Expansão do TBox - Exemplo
Mulher ≡ Pessoa ┌┐ FêmeaHomem ≡ Pessoa ┌┐ ¬ (Pessoa ┌┐ Fêmea)Mãe ≡ (Pessoa ┌┐ Fêmea) ┌┐ temFilho.
PessoaPai ≡ (Pessoa ┌┐ ¬ (Pessoa ┌┐ Fêmea)) ┌┐
temFilho. PessoaPais ≡ ((Pessoa ┌┐ ¬ (Pessoa ┌┐ Fêmea)) ┌┐
temFilho. Pessoa) └┘ ((Pessoa ┌┐ Fêmea) ┌┐ temFilho. Pessoa)
![Page 58: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/58.jpg)
Otimizações de pré-processamento
Normalização
Absorção
![Page 59: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/59.jpg)
NormalizaçãoSimplificação da BC identificando :
– Equivalências sintáticas– Contradições e – Tautologias
Todos os conceitos devem ser modificados para se adequar a um formato padrão– Utiliza apenas o conjunto completo de
conectivos ¬ e ┌┐.
![Page 60: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/60.jpg)
Normalização
Exemplos:(¬D └┘ ¬C) é transformado em ¬(D ┌┐ C).
∃ R. é simplificado para .⊥ ⊥
![Page 61: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/61.jpg)
Absorção
Eliminação de axiomas gerais aumentando a definição destes axiomas.– Axiomas gerais na forma C D,⊆
• C é um conceito não atômico• São manipulados até chegar em A D’, onde A é ⊆
atômico.– Este axioma pode então ser fundido dentro de
uma definição primitiva existente A C’, para ⊆resultar em A C’ ⊆ ┌┐ D’.
![Page 62: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/62.jpg)
Regras de Absorção
A ┌┐ B D, A atômico ⊆A D ⊆ └┘ ¬ B.
A └┘ B D, A atômico ⊆
A D ⊆ ┌┐ ¬ B.
![Page 63: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/63.jpg)
Absorção
Exemplo:(Homem ┌┐ temFilho.Pessoa Pai) resulta em∃ ⊆(Homem Pai ⊆ └┘ ¬ temFilho.Pessoa)∃
Homem ¬ Mulher⊆Absorção:Homem ¬ Mulher ⊆ ┌┐ (Pai └┘ ¬ temFilho.Pessoa)∃
![Page 64: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/64.jpg)
Otimizações de Classificação
Hierarquia de conceitos representada por um grafo acíclico direto– Nós são rotulados com os nomes dos conceitos– Arcos correspondem a relações de classificação
Um conceito A classifica um conceito B se:– Ambos A e B estão no rótulo do mesmo nó x– A está no rótulo de algum nó x, e existe um
arco (x,y) no grafo e um conceito (s) no rótulo do nó y, que classifica B.
![Page 65: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/65.jpg)
Otimizações de Classificação
Hierarquia de conceitos representada por um grafo acíclico direto– Nós são rotulados com os nomes dos conceitos– Arcos correspondem a relações de classificação
Um conceito A classifica um conceito B se:– Ambos A e B estão no rótulo do mesmo nó x– A está no rótulo de algum nó x, e existe um arco (x,y)
no grafo e um conceito (s) no rótulo do nó y, que classifica B.
![Page 66: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/66.jpg)
Otimizações de Classificação
Minimização do número de testes de classificação através de algoritmos de busca que percorrem o grafo:– Da base para o topo: encontra conceitos
classificados– Do topo para a base: encontra conceitos
classificadores.São encontradas as classificações óbvias,
diminuindo o custo de processamento causado pelo teste de classificação.
![Page 67: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/67.jpg)
Otimizações de Classificação
Transitividade da relação de subsunção: – Se A não é subclasse de B, então ele não pode
ser subclasse de nenhum outro conceito que seja subclasse de B.
• Busca do topo: testa se A classifica B somente quando se sabe que B é subclasse de todos os conceitos que classificam A.
• Busca da base: testa se A classifica B somente quando se sabe que A classifica todos os conceitos que são subclasse de B.
![Page 68: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/68.jpg)
Otimizações do Teste de Subsunção
Detecta não-classificações óbvias.Baseia-se no armazenamento das árvores de
expansão construídas anteriormente para evitar repetições futuras.
Exemplo:A ≡ C ┌┐ R1C1 ┌┐ R2C2
B ≡ ¬D └┘ R3C3.
Provar que A não é subclasse de BA┌┐¬B é satisfatível
![Page 69: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/69.jpg)
Otimizações do Teste de Subsunção
![Page 70: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/70.jpg)
Otimizações do Teste de Satisfatibilidade
Teste realizado após a execução de todas as otimizações.– Diminuição de custo computacional.
Algoritmo Tableau– Padrão: Ramos Sintáticos– Otimizado: Ramos Semânticos
![Page 71: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/71.jpg)
Ramos Semânticos
Ramos sintáticos– Ao expandir um nó do grafo (árvore), escolhe-se uma
disjunção não expandida e inicia-se a busca pelos diferentes modelos gerados pela adição de cada um dos membros da disjunção.
– Não há uma prevenção de recorrência de um conceito insatisfatível em ramos diferentes.
– Alto custo dependendo da dificuldade encontrada para provar a insatisfatibilidade deste conceito disjunto.
![Page 72: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/72.jpg)
Ramos Semânticos
Ramos semânticos:– Ao expandir um nó do grafo (árvore), escolhe-se
um dos membros isolados da disjunção não expandida e gerasse dois novos ramos, adicionando em um ramo o conceito escolhido e no outro a sua negação.
– Não ocorrem buscas desnecessárias como na busca por ramos sintáticos, pois os ramos são estritamente disjuntos.
![Page 73: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/73.jpg)
Ramos SemânticosBusca Sintática de Ramos
Busca Semântica de Ramos
![Page 74: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/74.jpg)
Bibliografia NARDI, D.; BRACHMAN, R. “An Introduction to Description
Logics”. In: The Description Logic Handbook – Theory, Implementation and Applications. Editedy by Franz Baader, Diego Calvanese, Deborah McGuinness, Daniele Nardi and Peter Patel-Schneider, 2003.
BAADER, F.; NUTT, W. “Basic Description Logics”. In: The Description Logic Handbook – Theory, Implementation and Applications. Editedy by Franz Baader, Diego Calvanese, Deborah McGuinness, Daniele Nardi and Peter Patel-Schneider, 2003.
BAADER, F. “Description Logic Terminology”. In: The Description Logic Handbook – Theory, Implementation and Applications. Editedy by Franz Baader, Diego Calvanese, Deborah McGuinness, Daniele Nardi and Peter Patel-Schneider, 2003.
![Page 75: Raciocínio em Lógica de Descrições](https://reader036.vdocuments.net/reader036/viewer/2022062816/56814d90550346895dbae960/html5/thumbnails/75.jpg)
Bibliografia HORROCKS, I. “Implementation and Optimisation Techniques”. In:
The Description Logic Handbook – Theory, Implementation and Applications. Editedy by Franz Baader, Diego Calvanese, Deborah McGuinness, Daniele Nardi and Peter Patel-Schneider, 2003a.
VIEIRA, R.; ABDALLA, D.; SILVA, D. M.; SANTANA, M. R. “Web Semântica: Ontologias, Lógicas de Descrições e Inferências”. In: Web e Multimídia: Desafios e Soluções. PUC Minas, 2005.