João Alcântara, Carlos Damásio and Luís Moniz Pereira Centro de Inteligência Artificial (CENTRIA) Depto. Informática, Faculdade de Ciências e Tecnologia Universidade Nova de Lisboa Caparica, Portugal Paraconsistent Logic Programs JELIA'02 Cosenza, September 2002
2Outline Motivation Bilattices Paraconsistent Logic Programs Example Conclusions
3Motivation Uncertain reasoning in Logic Programming –Probability theory –Fuzzy set theory –Many-valued logic –Possibilistic logic Monotonic frameworks without default negation
4Motivation General frameworks for uncertain reasoning –Monotonic Logic Programs: rules are constituted by arbitrary isotonic body functions and by propositional symbols in the head. A (isotonic function) Note a function is isotonic (antitonic) iff the value of the function increases (decreases) when we increase any argument while the remaining arguments are kept fixed.
5Motivation Because of their arbitrary monotonic and antitonic operators over a complete lattice, these programs pave the way to combine and integrate into a single framework several forms of reasoning, such as fuzzy, probabilistic, uncertain, and paraconsistent ones A 1 (isotonic function) A 2 (antitonic function) Antitonic Logic Programs:
6Motivation Specific treatment for the explicit negation in Antitonic Logic Programs is not provided Our approach –Arbitrary complete bilattice of truth-values, where both belief and doubt are explicitly represented –Framework for Paraconsistent Logic Programs –Based on Fitting's bilattice Lakshmanan and Sadri's work on probabilistic deductive databases
7Motivation Our approach (cont) –Fitting's bilattices They support an elegant framework for logic programming involving belief and doubt. They lead to a precise definition of explicit negation operators We use these results to characterize default negation –Lakshmanan and Sadri's work: convenience of explicitly representing both belief and doubt when dealing with incomplete knowledge, where different evidence may contradict one another
8Motivation A semantics for Paraconsistent Logic Programs –We have to deal with both contradiction and uncertain information –We may have programs with various degrees of contradictory information –Obedience to coherence principle: explicit negation entails default negation –We can introduce any negation operator supported by Fitting's bilattice. –Generalization of paraconsistent well-founded semantics for extended logic programs (WFSXp)
9Bilattice Given two complete lattices and the structure B (C,D) = is a complete bilattice, where the partial orderings are defined as follows: k if c 1 1 c 2 and d 1 2 d 2 t if c 1 1 c 2 and d 2 2 d 1 k – t – We say a bilattice B (C,D) is interlaced if each of the operations k, k, t, t, is monotone w.r.t. both orderings. k (meet), k (join) t (meet), t (join)
10 Bilattice (Basic operations) Negation: B (C,D) has a negation operation if there is a mapping : C D C D such that 1.a k b a k b; 2.a t b b t a; 3. a = a. Conflation: B (C,D) enjoys a conflation operation if there is a mapping - : C D C D such that 1.a k b -b k -a; 2.a t b -a t -b; 3.--a = a.
11Bilattice A k - A Consistent A = - A Exact A k - A Inconsistent Given a complete bilattice B (C,D) and let A C D. If Given the bilattice B ([0,1],[0,1]) where -( ) = A = -A = A is consistent A = -A = A is exact A = -A = A is inconsistent
12 Bilattice (Default negation) Default negation: Let B (C,D) a bilattice. Consider and – respectively a negation and a conflation operator on B (C,D). We define not : C D C D as the default negation operator where not L = - L Conflation operator results as moving to "default evidence" In -L we are to count as "for'' whatever did not count as "against'' before, and "against'' what did not count as "for''. Thus, - L resembles not L
13 Paraconsistent Logic Programs Antecedents –Extended Logic Programs –A framework for precisely characterize explicit negation A Paraconsistent Logic Program P is a set of rules of the form A [A 1,..., A m |B 1,..., B n ] is isotonic w.r.t. A 1,..., A m is antitonic w.r.t. B 1,..., B n
14 Paraconsistent Logic Programs Interpretation: I : C C Lattice of intepretations Partial intepretations Î : Form( ) C C Let I be a set of interpretations with I 1 and I 2 belonging to I. is a complete lattice where I 1 I 2 iff p I 1 (p) k I 2 (p) Valuation truetrue or undefined Given a bilattice B (C,C)
15 Paraconsistent Logic Programs Standard Ordering Fitting Ordering I 1 s I 2 iff I 1 t I 2 t and I 1 tu I 2 tu I 1 f I 2 iff I 1 t I 2 t and I 2 tu I 1 tu Given I 1 = and I 2 = Models I is a model of P iff I satisfies all rules of P Satisfaction A partial interpretation I satisfies a rule A of P iff Î( ) k I(A)
16 Paraconsistent Logic Programs Extending the Classical Immediate Consequences Operator Let P be a monotonic logic program T P (I)(A) = lub {Î( ) such that A P} In Paraconsistent Logic Programs, we have to eliminate the antitonic part Program Division P/I = {A [A 1,..., A m |I(B 1 ),..., I(B n )} s.t. A [A 1,..., A m |B 1,..., B n ] P
17 Paraconsistent Logic Programs Operator – Let P a paraconsistent logic program and J an interpretation P (J) = lfp T P/J = T P/J , for some ordinal Semi-normal program – The semi-normal version of P is the program P s obtained from P replacing every A in P by A k - A We have to guarantee the Coherence Principle: A not A Instance of necessitation principle: if something is known then it is believed In a bilattice: A k not A A k - A A k - A
18 Paraconsistent Logic Programs (Semantics) We say M = is a partial paraconsistent model for P iff M t = P ( Ps (M t )) and M tu = Ps (M t ). We define the Paraconsistent Well-Founded Model (WFMp(P)) as the least partial paraconsistent model under the Fitting ordering Proposition All partial paraconsistent models obey the coherence principle; in particular, the paraconsistent well-founded model for a program P.
19Example Using a paraconsistent logic program to encode a rather complex decision table based on rough relations fevercoughheadachemuscle-painflu no no (in 99% of the cases) yesno no (in 80% of the cases) yes no no (in 30% of the cases) yes no yes (in 60% of the cases) yes yes (in 75% of the cases) We resort to the bilattice B ([0,1],[0,1]) to encode this decision table, where ( ) =, -( ) =, and k (, ) =
20Example fevercoughheadachemuscle-painflu no no (99%) The first case can be represented by flu ( k fever k cough k headache k muscle-pain ) flu ( k fever k cough k headache k muscle-pain ) flu ( k fever k cough k headache k muscle-pain ) (A k B) = ( A k B)
21Example fevercoughheadachemuscle-painflu yes yes (75%) The last case flu ( k fever k cough k headache k muscle-pain ) - If a patient has fever, cough, headache, and muscle-pain, then flu is a correct diagnosis with 0.75 of belief. -If a patient doesn't have fever, doesn't have cough, doesn't have neither headache nor muscle-pain, then he doesn't have flu with 0.99 of belief.
22Example The rules for diagnosing flu are flu ( k fever k cough k headache k muscle-pain ) flu ( k fever k cough k headache k muscle-pain ) flu ( k fever k cough k headache k muscle-pain ) flu ( k fever k cough k headache k muscle-pain )
23Example flu ( k fever k cough k headache k muscle-pain ) flu ( k fever k cough k headache k muscle-pain ) flu ( k fever k cough k headache k muscle-pain ) flu ( k fever k cough k headache k muscle-pain ) fever cough headache muscle-pain Paraconsistency in our semantics P = WFMp(P) ?
24Example T component of WFMp(P) – M t = P Ps (M t ) flu ( k fever k cough k headache k muscle-pain ) flu ( k fever k cough k headache k muscle-pain ) flu ( k fever k cough k headache k muscle-pain ) flu ( k fever k cough k headache k muscle-pain ) fever cough headache muscle-pain lub k flu =
25Example TU component of WFMp(P) – M tu = Ps (M t ) flu ( k fever k cough k headache k muscle-pain ) k -flu flu ( k fever k cough k headache k muscle-pain ) k -flu flu ( k fever k cough k headache k muscle-pain ) k -flu flu ( k fever k cough k headache k muscle-pain ) k -flu fever cough k -cough headache k -headache muscle-pain k -muscle-pain lub k flu = k -fever
26Example fevercoughheadachemuscle- pain flu <0.7,0.3> M t = M tu = WFMp(P) = M tu (headache) k M t (headache) - Inconsistency M tu (flu) k M t (flu) The truth-value assigned to flu is "contaminated" by the inconsistent value verified in headache.
27Conclusion We have combined and integrated several forms of reasoning into a single framework, namely fuzzy, probabilistic, uncertain, and paraconsistent. Introduction into a rather general framework of concepts that cope with explicit negation and default negation. It is certified that default negation complies with the coherence principle. Program rules have bodies corresponding to compositions of arbitrary monotonic and antitonic operators over a complete bilattice, and provide a precise way to present belief and doubt.
28Conclusion A logic programming semantics with corresponding model and fixpoint theory was defined, where a paraconsistent well-found model is guaranteed to exist for each program. We further provide a simple translation of Extended Logic Programs under WFSXp into Paraconsistent Logic Programs