1 / 31 A Zadeh-Norm Fuzzy Description Logic for Handling Uncertainty: Reasoning Algorithms and the Reasoning System Judy Zhao 1, Harold Boley 2, Weichang Du 1 1. Faculty of Computer Science, University of New Brunswick Fredericton, NB, E3B 5AC, Canada 2. Institute for Information Technology, National Research Council of Canada Fredericton, NB, E3B 9W4, Canada 10 November 2010
2 / 31 Outline Introduction Motivation Problems Uncertain Knowledge Representation Logic Properties Inference Services Prototype Conclusions and Future Work
3 / 31 Preliminaries The DL Family Basic Description Logic ALC Concepts constructed using boolean operators (,, ) and restricted quantifiers (, ) Only atomic roles S often used for ALC extended with transitive roles (R + ) H for role hierarchy O for nominals (e.g.,{mary, John}) I for inverse roles (e.g., hasfather ) N for number restrictions (e.g., 2hasChild) Q for qualified number restrictions (e.g., 2hasChild.Doctor) R for limited complex role inclusion axioms, role disjointness F for functional properties ALC+R + +I=SI
3 / 31 Preliminaries The DL Family Basic Description Logic ALC Concepts constructed using boolean operators (,, ) and restricted quantifiers (, ) Only atomic roles S often used for ALC extended with transitive roles (R + ) H for role hierarchy O for nominals (e.g.,{mary, John}) I for inverse roles (e.g., hasfather ) N for number restrictions (e.g., 2hasChild) Q for qualified number restrictions (e.g., 2hasChild.Doctor) R for limited complex role inclusion axioms, role disjointness F for functional properties ALC+R + +I=SI
4 / 31 Fuzzy Set and Fuzzy Logic Fuzzy Sets Fuzzy sets and set membership is the key to decision making when faced with uncertainty (Zadeh, 1965) Generalize crisp sets to Fuzzy Sets (concepts) Fuzzy Logic is particularly good at handling vagueness and imprecision Cheetahs run very fast John is young Hotels near Moncton John is tall
4 / 31 Fuzzy Set and Fuzzy Logic Fuzzy Sets Fuzzy sets and set membership is the key to decision making when faced with uncertainty (Zadeh, 1965) Generalize crisp sets to Fuzzy Sets (concepts) Fuzzy Logic is particularly good at handling vagueness and imprecision Cheetahs run very fast John is young Hotels near Moncton John is tall
5 / 31 Fuzzy Set and Fuzzy Logic Membership Functions
5 / 31 Fuzzy Set and Fuzzy Logic Membership Functions
6 / 31 Fuzzy Set and Fuzzy Logic Fuzzy Operations fuzzy intersection (t-norm): min(u(x), u(y)) fuzzy union (s-norm): max(u(x), u(y)) fuzzy set complement (negation): 1 u(x) fuzzy implication: Kleene-Dienes implication: max(1 u(x), u(y)) R-implications: u(y) = min(u(x), z)
6 / 31 Fuzzy Set and Fuzzy Logic Fuzzy Operations fuzzy intersection (t-norm): min(u(x), u(y)) fuzzy union (s-norm): max(u(x), u(y)) fuzzy set complement (negation): 1 u(x) fuzzy implication: Kleene-Dienes implication: max(1 u(x), u(y)) R-implications: u(y) = min(u(x), z)
6 / 31 Fuzzy Set and Fuzzy Logic Fuzzy Operations fuzzy intersection (t-norm): min(u(x), u(y)) fuzzy union (s-norm): max(u(x), u(y)) fuzzy set complement (negation): 1 u(x) fuzzy implication: Kleene-Dienes implication: max(1 u(x), u(y)) R-implications: u(y) = min(u(x), z)
6 / 31 Fuzzy Set and Fuzzy Logic Fuzzy Operations fuzzy intersection (t-norm): min(u(x), u(y)) fuzzy union (s-norm): max(u(x), u(y)) fuzzy set complement (negation): 1 u(x) fuzzy implication: Kleene-Dienes implication: max(1 u(x), u(y)) R-implications: u(y) = min(u(x), z)
7 / 31 Semantic Web Application Architecture Semantic Web Application Architecture
7 / 31 Semantic Web Application Architecture Semantic Web Application Architecture
7 / 31 Semantic Web Application Architecture Semantic Web Application Architecture
7 / 31 Semantic Web Application Architecture Semantic Web Application Architecture
8 / 31 Semantic Web Application Architecture The World is Imprecise Everything is vague to a degree you do not realize till you have tried to make it precise. Bertrand Russell British author, mathematician, and philosopher (1872-1970) Nobel Prize in Literature,1950 People work and make decisions with imprecise data in an uncertain world However, classical DLs are limited to dealing with crisp, well-defined concepts and roles
8 / 31 Semantic Web Application Architecture The World is Imprecise Everything is vague to a degree you do not realize till you have tried to make it precise. Bertrand Russell British author, mathematician, and philosopher (1872-1970) Nobel Prize in Literature,1950 People work and make decisions with imprecise data in an uncertain world However, classical DLs are limited to dealing with crisp, well-defined concepts and roles
9 / 31 Semantic Web Application Architecture
10 / 31 Problems How to represent uncertain knowledge? Is a knowledge base with uncertainty meaningful or not? Given a knowledge base with uncertainty, what s the certainty value of this assertion? How many individuals belong to this concept description with a confidence greater than 0.5, and which ones are they?
10 / 31 Problems How to represent uncertain knowledge? Is a knowledge base with uncertainty meaningful or not? Given a knowledge base with uncertainty, what s the certainty value of this assertion? How many individuals belong to this concept description with a confidence greater than 0.5, and which ones are they?
10 / 31 Problems How to represent uncertain knowledge? Is a knowledge base with uncertainty meaningful or not? Given a knowledge base with uncertainty, what s the certainty value of this assertion? How many individuals belong to this concept description with a confidence greater than 0.5, and which ones are they?
10 / 31 Problems How to represent uncertain knowledge? Is a knowledge base with uncertainty meaningful or not? Given a knowledge base with uncertainty, what s the certainty value of this assertion? How many individuals belong to this concept description with a confidence greater than 0.5, and which ones are they?
11 / 31 Interval Lower Bound, Upper Bound, Mid-point, and Width of an Interval χ = [l, u] χ = m(χ), w(χ) mid-point m(χ) = 1 2 (l + u), indicates the average membership (truth degree) of the instance to a given concept width w(χ) = 1 2 (u l), implies the certainty of such a membership statement >= n, <= n, = n
11 / 31 Interval Lower Bound, Upper Bound, Mid-point, and Width of an Interval χ = [l, u] χ = m(χ), w(χ) mid-point m(χ) = 1 2 (l + u), indicates the average membership (truth degree) of the instance to a given concept width w(χ) = 1 2 (u l), implies the certainty of such a membership statement >= n, <= n, = n
11 / 31 Interval Lower Bound, Upper Bound, Mid-point, and Width of an Interval χ = [l, u] χ = m(χ), w(χ) mid-point m(χ) = 1 2 (l + u), indicates the average membership (truth degree) of the instance to a given concept width w(χ) = 1 2 (u l), implies the certainty of such a membership statement >= n, <= n, = n
11 / 31 Interval Lower Bound, Upper Bound, Mid-point, and Width of an Interval χ = [l, u] χ = m(χ), w(χ) mid-point m(χ) = 1 2 (l + u), indicates the average membership (truth degree) of the instance to a given concept width w(χ) = 1 2 (u l), implies the certainty of such a membership statement >= n, <= n, = n
12 / 31 f Z SI Syntax Syntax Concept descriptions in f Z SI are formed based on the following syntax: C A A C C D C D R.C R.C Roles in f Z SI has the following forms in syntax: R + R R
12 / 31 f Z SI Syntax Syntax Concept descriptions in f Z SI are formed based on the following syntax: C A A C C D C D R.C R.C Roles in f Z SI has the following forms in syntax: R + R R
13 / 31 f Z SI Syntax f Z SI DL Knowledge Bases A Knowledge Base (KB)=a Tbox (T )+ an Abox (A) A TBox (terminology) is a finite set of concept equivalence axioms C D concept inclusion axiom C D concept implication axiom C D [l, u] (0 l u 1) An ABox (Assertion) is a set of fuzzy assertions about individuals fuzzy concept assertion C(a) [l, u] fuzzy role assertion R(a, b) [l, u] individual inequality a b
13 / 31 f Z SI Syntax f Z SI DL Knowledge Bases A Knowledge Base (KB)=a Tbox (T )+ an Abox (A) A TBox (terminology) is a finite set of concept equivalence axioms C D concept inclusion axiom C D concept implication axiom C D [l, u] (0 l u 1) An ABox (Assertion) is a set of fuzzy assertions about individuals fuzzy concept assertion C(a) [l, u] fuzzy role assertion R(a, b) [l, u] individual inequality a b
13 / 31 f Z SI Syntax f Z SI DL Knowledge Bases A Knowledge Base (KB)=a Tbox (T )+ an Abox (A) A TBox (terminology) is a finite set of concept equivalence axioms C D concept inclusion axiom C D concept implication axiom C D [l, u] (0 l u 1) An ABox (Assertion) is a set of fuzzy assertions about individuals fuzzy concept assertion C(a) [l, u] fuzzy role assertion R(a, b) [l, u] individual inequality a b
f Z SI Semantics Semantics Classic: Standard FO model theory An interpretation I is a tuple ( I, I) I is the domain I is a mapping that maps: Names of individuals to elements of I Names of concept to subsets of I Names of role to subsets of I I Now: Standard FO model theory and Fuzzy Logic A fuzzy interpretation I is a tuple ( I, I) I is the domain I is a mapping that maps: each individual x into an element of I (x I ) each concept C into a partial function C I : I [0, 1] each role R into a partial function R I : I I [0, 1] 14 / 31
f Z SI Semantics Semantics Classic: Standard FO model theory An interpretation I is a tuple ( I, I) I is the domain I is a mapping that maps: Names of individuals to elements of I Names of concept to subsets of I Names of role to subsets of I I Now: Standard FO model theory and Fuzzy Logic A fuzzy interpretation I is a tuple ( I, I) I is the domain I is a mapping that maps: each individual x into an element of I (x I ) each concept C into a partial function C I : I [0, 1] each role R into a partial function R I : I I [0, 1] 14 / 31
15 / 31 f Z SI Semantics Semantics Table: Syntax and Semantics of f Z SI constructors Constructor Syntax Semantics top concept I = 1 bottom concept I = 0 atomic negation A ( A) I (x) = 1 A I (x) concept conjunction C D (C D) I = min(c I (x), D I (x)) concept disjunction C D (C D) I = max(c I (x), D I (x)) exists restriction R.C ( R.C) I (x) = sup y I {min(r I (x, y), C I (y))} value restriction R.C ( R.C) I (x) = inf y I {max(1 R I (x, y), C I (y))} inverse role Inv(R) (Inv(R)) I (y, x) = R I (x, y)
15 / 31 f Z SI Semantics Semantics Table: Syntax and Semantics of f Z SI axioms and assertions Axioms Syntax Semantics concept inclusion C D x I, C I (x) D I (x) axiom concept equivalence C D x I, C I (x) = D I (x) axiom concept implication C x I, D I (x) min(c I (x), [l, u]) axiom D [l, u] transitive role Trans(R) R I (a, c) sup b I min(r I (a, b), R I (b, c)) concept instance C(a) [l, u] l C I (a) u assertion role instance assertion R(a, b) [l, u] l R I (a, b) u individual inequality a b a I b I
Negation Negation equivalence rules Under Zadeh Logic, the following equivalence rules hold. x, y I, C [l, u] C [l, u], (1) (C D) [l, u] C D [l, u], (2) (C D) [l, u] C D [l, u], (3) R.C [l, u] R. C [l, u], (4) R.C [l, u] R. C [l, u], (5) ( nr) [l, u] (n + 1)R [l, u], { (6) (n 1)R [l, u] n > 1 ( nr) [l, u] n = 1, (7) 16 / 31
17 / 31 Transitive Roles Transitive Roles Fuzzy Transitive Role Under Zadeh Logic, a transitive role satisfies: R I (x, z) sup y I min(r I (x, y), R I (y, z)) (8) Role-value-restriction Transitivity If ( R.C) I (x) l (l [0, 1]) and R is transitive, then ( R.( R.C)) I (x) l holds. Role-exists-restriction Transitivity If ( R.C) I (x) u and R is transitive, then ( R.( R.C)) I (x) u holds.
17 / 31 Transitive Roles Transitive Roles Fuzzy Transitive Role Under Zadeh Logic, a transitive role satisfies: R I (x, z) sup y I min(r I (x, y), R I (y, z)) (8) Role-value-restriction Transitivity If ( R.C) I (x) l (l [0, 1]) and R is transitive, then ( R.( R.C)) I (x) l holds. Role-exists-restriction Transitivity If ( R.C) I (x) u and R is transitive, then ( R.( R.C)) I (x) u holds.
17 / 31 Transitive Roles Transitive Roles Fuzzy Transitive Role Under Zadeh Logic, a transitive role satisfies: R I (x, z) sup y I min(r I (x, y), R I (y, z)) (8) Role-value-restriction Transitivity If ( R.C) I (x) l (l [0, 1]) and R is transitive, then ( R.( R.C)) I (x) l holds. Role-exists-restriction Transitivity If ( R.C) I (x) u and R is transitive, then ( R.( R.C)) I (x) u holds.
18 / 31 Inference Services consistency checking Given a knowledge base KB =< T, A >, find an interpretation (model) of KB instance range entailment Given a knowledge base KB and a concept assertion C(a), find 1. the greatest lower bound l min [0, 1] 2. the lowest upper bound u max [0, 1] Such that KB α [l min, u max ] the f-retrieval problem Given a knowledge base KB and a concept description C, find 1. all individuals a such that KB C(a) is greater than 0, or 2. all individuals a with truth degrees above the threshold-θ, or 3. the top-k individuals
18 / 31 Inference Services consistency checking Given a knowledge base KB =< T, A >, find an interpretation (model) of KB instance range entailment Given a knowledge base KB and a concept assertion C(a), find 1. the greatest lower bound l min [0, 1] 2. the lowest upper bound u max [0, 1] Such that KB α [l min, u max ] the f-retrieval problem Given a knowledge base KB and a concept description C, find 1. all individuals a such that KB C(a) is greater than 0, or 2. all individuals a with truth degrees above the threshold-θ, or 3. the top-k individuals
18 / 31 Inference Services consistency checking Given a knowledge base KB =< T, A >, find an interpretation (model) of KB instance range entailment Given a knowledge base KB and a concept assertion C(a), find 1. the greatest lower bound l min [0, 1] 2. the lowest upper bound u max [0, 1] Such that KB α [l min, u max ] the f-retrieval problem Given a knowledge base KB and a concept description C, find 1. all individuals a such that KB C(a) is greater than 0, or 2. all individuals a with truth degrees above the threshold-θ, or 3. the top-k individuals
19 / 31 Consistency Checking Reasoning Procedure
20 / 31 Consistency Checking Fuzzy Completion Rules -rule Condition: {x : ( A) λ} L(x) and {x : A 1 λ} / L(x) Action: L(x) L(x) {{x : A 1 λ}} and C(x) C(x) {x A (1 λ)} -rule Condition: {x : (C 1 C 2 ) λ} L(x), x is not indirectly blocked, and {{x : C 1 λ}, {x : C 2 λ}} L(x) Action: L(x) L(x) {{x : C 1 λ}, {x : C 2 λ}} and C(x) C(x) {x C1 λ, x C2 λ} -rule Condition: {x : (C 1 C 2 ) λ} L(x), x is not indirectly blocked, and {{x : C 1 λ}, {x : C 2 λ}} L(x) = Action: L(x) L(x) {{x : C 1 x 1 }, {x : C 2 x 2 }} and C(x) C(x) {x C1 x 1, x C2 x 2, x 1 + x 2 = λ, x 1 y, x 2 1 y, y {0, 1}, x 1 [0, 1], x 2 [0, 1]}
20 / 31 Consistency Checking Fuzzy Completion Rules -rule Condition: {x : ( A) λ} L(x) and {x : A 1 λ} / L(x) Action: L(x) L(x) {{x : A 1 λ}} and C(x) C(x) {x A (1 λ)} -rule Condition: {x : (C 1 C 2 ) λ} L(x), x is not indirectly blocked, and {{x : C 1 λ}, {x : C 2 λ}} L(x) Action: L(x) L(x) {{x : C 1 λ}, {x : C 2 λ}} and C(x) C(x) {x C1 λ, x C2 λ} -rule Condition: {x : (C 1 C 2 ) λ} L(x), x is not indirectly blocked, and {{x : C 1 λ}, {x : C 2 λ}} L(x) = Action: L(x) L(x) {{x : C 1 x 1 }, {x : C 2 x 2 }} and C(x) C(x) {x C1 x 1, x C2 x 2, x 1 + x 2 = λ, x 1 y, x 2 1 y, y {0, 1}, x 1 [0, 1], x 2 [0, 1]}
20 / 31 Consistency Checking Fuzzy Completion Rules -rule Condition: {x : ( A) λ} L(x) and {x : A 1 λ} / L(x) Action: L(x) L(x) {{x : A 1 λ}} and C(x) C(x) {x A (1 λ)} -rule Condition: {x : (C 1 C 2 ) λ} L(x), x is not indirectly blocked, and {{x : C 1 λ}, {x : C 2 λ}} L(x) Action: L(x) L(x) {{x : C 1 λ}, {x : C 2 λ}} and C(x) C(x) {x C1 λ, x C2 λ} -rule Condition: {x : (C 1 C 2 ) λ} L(x), x is not indirectly blocked, and {{x : C 1 λ}, {x : C 2 λ}} L(x) = Action: L(x) L(x) {{x : C 1 x 1 }, {x : C 2 x 2 }} and C(x) C(x) {x C1 x 1, x C2 x 2, x 1 + x 2 = λ, x 1 y, x 2 1 y, y {0, 1}, x 1 [0, 1], x 2 [0, 1]}
20 / 31 Consistency Checking Fuzzy Completion Rules -rule Condition: {x : ( A) λ} L(x) and {x : A 1 λ} / L(x) Action: L(x) L(x) {{x : A 1 λ}} and C(x) C(x) {x A (1 λ)} -rule Condition: {x : (C 1 C 2 ) λ} L(x), x is not indirectly blocked, and {{x : C 1 λ}, {x : C 2 λ}} L(x) Action: L(x) L(x) {{x : C 1 λ}, {x : C 2 λ}} and C(x) C(x) {x C1 λ, x C2 λ} -rule Condition: {x : (C 1 C 2 ) λ} L(x), x is not indirectly blocked, and {{x : C 1 λ}, {x : C 2 λ}} L(x) = Action: L(x) L(x) {{x : C 1 x 1 }, {x : C 2 x 2 }} and C(x) C(x) {x C1 x 1, x C2 x 2, x 1 + x 2 = λ, x 1 y, x 2 1 y, y {0, 1}, x 1 [0, 1], x 2 [0, 1]}
21 / 31 Consistency Checking Fuzzy Completion Rules -rule Condition: {x : ( R.C) λ} L(x), x is not blocked and has no R λ -neighbor y Action: Create a new node y with L(x, y) = {{< x, y >: R λ}}, L(y) = {{y : C λ}}, C(x, y) = {x R λ}, and C(y) = {x C λ} -rule Condition: {x : ( R.C) λ} L(x), x is not indirectly blocked and x has an R λ1r -neighbor y with {y : C λ} / L(y) Action: L(y) L(y) {{y : C λ}}, if {< x, y >: R oρ λ 1 } conjugates with {< x, y >: R (1 λ)}, then C(y) C(y) {x C λ}, else C(y) C(y) {x C λ, λ 1 > 1 λ} Similarly, we can define the fuzzy completion -rules
21 / 31 Consistency Checking Fuzzy Completion Rules -rule Condition: {x : ( R.C) λ} L(x), x is not blocked and has no R λ -neighbor y Action: Create a new node y with L(x, y) = {{< x, y >: R λ}}, L(y) = {{y : C λ}}, C(x, y) = {x R λ}, and C(y) = {x C λ} -rule Condition: {x : ( R.C) λ} L(x), x is not indirectly blocked and x has an R λ1r -neighbor y with {y : C λ} / L(y) Action: L(y) L(y) {{y : C λ}}, if {< x, y >: R oρ λ 1 } conjugates with {< x, y >: R (1 λ)}, then C(y) C(y) {x C λ}, else C(y) C(y) {x C λ, λ 1 > 1 λ} Similarly, we can define the fuzzy completion -rules
21 / 31 Consistency Checking Fuzzy Completion Rules -rule Condition: {x : ( R.C) λ} L(x), x is not blocked and has no R λ -neighbor y Action: Create a new node y with L(x, y) = {{< x, y >: R λ}}, L(y) = {{y : C λ}}, C(x, y) = {x R λ}, and C(y) = {x C λ} -rule Condition: {x : ( R.C) λ} L(x), x is not indirectly blocked and x has an R λ1r -neighbor y with {y : C λ} / L(y) Action: L(y) L(y) {{y : C λ}}, if {< x, y >: R oρ λ 1 } conjugates with {< x, y >: R (1 λ)}, then C(y) C(y) {x C λ}, else C(y) C(y) {x C λ, λ 1 > 1 λ} Similarly, we can define the fuzzy completion -rules
22 / 31 Consistency Checking Fuzzy Completion Rules,+ -rule Condition: {x : ( R.C) λ} L(x), Trans(R), x is not indirectly blocked, and x has an R λ1r -neighbor y with {y : ( R.C) λ} / L(y) Action: L(y) L(y) {{y : ( R.C) λ}}, if {< x, y >: R oρ λ 1 } conjugates with {< x, y >: R λ}, then C(y) C(y) {x R.C λ}, else C(y) C(y) {x R.C λ, λ 1 > λ},+ -rule Condition: {x : ( R.C) λ} L(x), Trans(R), x is not indirectly blocked, and x has an R λ1r -neighbor y with {y : ( R.C) λ} / L(y) Action: L(y) L(y) {{y : ( R.C) λ}}, if {< x, y >: R oρ λ 1 } conjugates with {< x, y >: R (1 λ)}, then C(y) C(y) {x R.C λ}, else C(y) C(y) {x R.C λ, λ 1 > 1 λ}
22 / 31 Consistency Checking Fuzzy Completion Rules,+ -rule Condition: {x : ( R.C) λ} L(x), Trans(R), x is not indirectly blocked, and x has an R λ1r -neighbor y with {y : ( R.C) λ} / L(y) Action: L(y) L(y) {{y : ( R.C) λ}}, if {< x, y >: R oρ λ 1 } conjugates with {< x, y >: R λ}, then C(y) C(y) {x R.C λ}, else C(y) C(y) {x R.C λ, λ 1 > λ},+ -rule Condition: {x : ( R.C) λ} L(x), Trans(R), x is not indirectly blocked, and x has an R λ1r -neighbor y with {y : ( R.C) λ} / L(y) Action: L(y) L(y) {{y : ( R.C) λ}}, if {< x, y >: R oρ λ 1 } conjugates with {< x, y >: R (1 λ)}, then C(y) C(y) {x R.C λ}, else C(y) C(y) {x R.C λ, λ 1 > 1 λ}
23 / 31 Consistency Checking Fuzzy Completion Rules -rule Condition: {C D λ} T, {x : C λ 1 } L(x) Action: L(x) L(x) {{x : D x 1 + x 2 1}, {x : D x 1 + x 2 1}} and C(x) C(x) {x 1 λ, x 2 λ 1, x D = x 1 + x 2 1, x 1 y, x 2 1 y, y {0, 1}, x 1 [0, 1], x 2 [0, 1]} -rule Condition: {C D λ} T, {x : C λ 1 } L(x) Action: L(x) L(x) {{x : D λ}, {x : D λ 1 }} and C(x) C(x) {x D λ, x D λ 1 }
23 / 31 Consistency Checking Fuzzy Completion Rules -rule Condition: {C D λ} T, {x : C λ 1 } L(x) Action: L(x) L(x) {{x : D x 1 + x 2 1}, {x : D x 1 + x 2 1}} and C(x) C(x) {x 1 λ, x 2 λ 1, x D = x 1 + x 2 1, x 1 y, x 2 1 y, y {0, 1}, x 1 [0, 1], x 2 [0, 1]} -rule Condition: {C D λ} T, {x : C λ 1 } L(x) Action: L(x) L(x) {{x : D λ}, {x : D λ 1 }} and C(x) C(x) {x D λ, x D λ 1 }
24 / 31 Consistency Checking Example1: -rule Consider there are two assertions in a fuzzy knowledge base: ( hasfriend.student)(john) [0.75, 1] and hasfriend(john, Mary) [0.7, 1] where hasfriend is a transitive role. Following the preprocessing steps, we have {John : ( hasfriend.student) 0.75} L(John) and {[John, Mary] : hasfriend 0.7}. Since {[John, Mary] : hasfriend 0.7} conjugates with {[John, Mary] : hasfriend 0.25}, the,+ -rule is applicable, thus {Mary : ( hasfriend.student) 0.75} is added to L(Mary).
24 / 31 Consistency Checking Example1: -rule Consider there are two assertions in a fuzzy knowledge base: ( hasfriend.student)(john) [0.75, 1] and hasfriend(john, Mary) [0.7, 1] where hasfriend is a transitive role. Following the preprocessing steps, we have {John : ( hasfriend.student) 0.75} L(John) and {[John, Mary] : hasfriend 0.7}. Since {[John, Mary] : hasfriend 0.7} conjugates with {[John, Mary] : hasfriend 0.25}, the,+ -rule is applicable, thus {Mary : ( hasfriend.student) 0.75} is added to L(Mary).
25 / 31 Consistency Checking Example2: Consistency Checking KB = {Trans(R), C(a) [0.7, 1], D(b) [0.8, 1], R(a, b) [0.6, 1], R(b, c) [0.7, 1], ( Inv(R).C Inv(R).D)(c) [0, 0.5]}
25 / 31 Consistency Checking Example2: Consistency Checking
25 / 31 Consistency Checking Example2: Consistency Checking
26 / 31 Instance Range Entailment The Instance Range Entailment Problem rangeent(kb, α) Input: a fuzzy knowledge base KB, an assertion α Output: the greatest lower degree l min and the lowest upper degree u max l min =0, u max =1; N=findMemDeg(KB); ascend numbers in N; for each m N if KB α m l min =m; else break; next m; descend numbers in N; for each n N if KB α n u max =n; else break; next n; return [l min, u max ]
26 / 31 Instance Range Entailment The Instance Range Entailment Problem rangeent2(kb, α) Input: a fuzzy knowledge base KB, an assertion α Output: the greatest lower degree l min and the lowest upper degree u max l min =0, u max =1; KB =KB { α [1 x max, 1 x min ]}; If consistency(kb )=true { l min =minimize(constaintset, x min ); u max =maximize(constaintset, x max )}; return [l min, u max ]
27 / 31 f-retrieval The f-retrieval Problem
28 / 31 f-retrieval The f-retrieval Problem fretrieval(kb, C, Value, Mode) Input: KB, concept description C, Mode, and Value Output: a set of individuals along with their truth degrees IndSet=findNamedIndividuals(KB); CandiSet = RetSet = ; for each Ind IndSet [l min, u max ]=rangeent2(kb, C(Ind)); CandiSet CandiSet {Ind [l min, u max ]}; next Ind; If Mode is threshold-θ Value=[MidPoint, Width] for each Ind [l min, u max ] in CandiSet If 1 2 (l min + u max ) MidPoint and 1 2 (umax l min) Width RetSet RetSet {Ind [l min, u max ]}; next; else Sorting the elements in CandiSet (Call preferedinterval(χ 1, χ 2 ) to rank any two intervals) {Idx = min(value, CandiSet ); RetSet=subSet(CandiSet, Idx)} return RetSet
29 / 31 Architecture of the falcas System
30 / 31 Conclusions and Future Work Conclusions A fuzzy Description Logic formalism Decidable reasoning algorithms for several inference services Future Work other inference services, e.g., role assertions retrieval optimization techniques
30 / 31 Conclusions and Future Work Conclusions A fuzzy Description Logic formalism Decidable reasoning algorithms for several inference services Future Work other inference services, e.g., role assertions retrieval optimization techniques
31 / 31 Questions? Ask Dr. Know...