280 likes | 387 Views
Paraconsistent Logic Programs. João Alcântara, Carlos Damásio and Luís Moniz Pereira e-mail: jfla|cd|lmp@di.fct.unl.pt Centro de Inteligência Artificial (CENTRIA) Depto. Informática, Faculdade de Ciências e Tecnologia Universidade Nova de Lisboa 2825-114 Caparica, Portugal.
E N D
Paraconsistent Logic Programs João Alcântara, Carlos Damásio and Luís Moniz Pereira e-mail: jfla|cd|lmp@di.fct.unl.pt Centro de Inteligência Artificial (CENTRIA) Depto. Informática, Faculdade de Ciências e Tecnologia Universidade Nova de Lisboa 2825-114 Caparica, Portugal JELIA'02 Cosenza, September 2002
Outline • Motivation • Bilattices • Paraconsistent Logic Programs • Example • Conclusions
Motivation • Uncertain reasoning in Logic Programming • Probability theory • Fuzzy set theory • Many-valued logic • Possibilistic logic • Monotonic frameworks without default negation
Motivation • 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.
Motivation • 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 A1 (isotonic function) • Antitonic Logic Programs: A2 (antitonic function)
Motivation • 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
Motivation • 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
Motivation • 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)
k (meet), k (join) t (meet), t (join) Bilattice Given two complete lattices < C, 1> and <D, 2> the structure B(C,D) = <CD, k, t> is a complete bilattice, where the partial orderings are defined as follows: < c1, d1>k< c2,d2> if c11 c2 and d12 d2 < c1, d1>t< c2,d2> if c11 c2 and d22 d1 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.
Bilattice (Basic operations) • Negation: B(C,D)has a negation operation if there is a mapping : CDCD such that • akb akb; • atb bta; • a = a. • Conflation: B(C,D) enjoys a conflation operation if there is a mapping - : CDCD such that • akb-bk-a; • atb-at-b; • --a = a.
Bilattice Given a complete bilattice B(C,D) and let A CD. If A k- A Consistent A = - A Exact A k - A Inconsistent Given the bilattice B([0,1],[0,1]) where -(< , >) = < 1 -, 1 - > A = <0.4, 0.5> -A = <0.5,0.6> A is consistent A = <0.4, 0.6> -A = <0.4,0.6> A is exact A = <0.6, 0.7> -A = <0.3,0.4> A is inconsistent
Bilattice (Default negation) 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 notL Default negation: LetB(C,D) a bilattice. Consider and – respectively a negation and a conflation operator on B(C,D) . We define not : C D C Das the default negation operator where not L = - L
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[A1,..., Am|B1,..., Bn] • is isotonic w.r.t. A1,..., Am • is antitonic w.r.t. B1,..., Bn
Paraconsistent Logic Programs Given a bilattice B(C,C) • Interpretation: I : C C • Lattice of intepretations • Partial intepretations Î :Form() C C Valuation Let I be a set of interpretations with I1 and I2 belonging to I. <I, > is acomplete lattice where I1 I2 iff pI1(p) kI2(p) <It, Itu> true true or undefined
Given I1 = < I1t,I1tu> and I2 = < I2t,I2tu> Standard Ordering I1s I2 iff I1t I2t and I1tu I2tu Fitting Ordering I1f I2 iff I1t I2t and I2tu I1tu A partial interpretation I satisfies a rule A of P iff Î() k I(A) Satisfaction I is a model of P iff I satisfies all rules of P Models Paraconsistent Logic Programs
TP(I)(A) = lub{Î() such that A P} Program Division P/I = {A[A1,..., Am|I(B1),..., I(Bn)} s.t. A[A1,..., Am|B1,..., Bn] P Paraconsistent Logic Programs Extending the Classical Immediate Consequences Operator Let P be a monotonic logic program In Paraconsistent Logic Programs, we have to eliminate the antitonic part
Semi-normal program – The semi-normal version of P is the program Ps obtained from P replacing every A in P by A k - A In a bilattice: Aknot A Ak- A Ak- A Paraconsistent Logic Programs Operator – Let P a paraconsistent logic program and J an interpretation P(J) = lfp TP/J = TP/J , for some ordinal We have to guarantee the Coherence Principle:A not A Instance of necessitation principle: if something is known then it is believed
Paraconsistent Logic Programs (Semantics) We say M = <M t,M tu> 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.
Example Using a paraconsistent logic program to encode a rather complex decision table based on rough relations We resort to the bilattice B([0,1],[0,1]) to encode this decision table, where (< , >) = < , >, -(< , >) = < 1 -, 1 - >, and k(< , >, < , >) = < min(, ), min (, ) >
Example The first case can be represented by flu (<0.99,0.0> kfeverk coughkheadachekmuscle-pain ) flu (<0.99,0.0> kfeverk coughkheadachekmuscle-pain ) flu (<0.0, 0.99> kfeverk coughkheadachekmuscle-pain ) (A k B) = (A kB)
Example The last case flu (<0.75,0.0> k feverkcoughkheadachekmuscle-pain ) flu (<0.0, 0.99> k feverkcoughkheadachekmuscle-pain ) flu (<0.75,0.99> kfeverkcoughkheadachekmuscle-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.
Example The rules for diagnosing flu are flu (<0.0, 0.80> kfeverk coughkheadachekmuscle-pain ) flu (<0.75, 0.99> kfeverk coughkheadachekmuscle-pain ) flu (<0.0, 0.3> kfeverk coughkheadachekmuscle-pain ) flu (<0.6, 0.0> kfeverk coughkheadachekmuscle-pain )
Example Paraconsistency in our semantics fever <0.4, 0.6> headache <0.7, 0.9> muscle-pain <0.2, 0.7> cough <0.7, 0.3> flu (<0.0, 0.80> kfeverkcoughkheadachekmuscle-pain ) P = flu (<0.75, 0.99> kfeverk coughkheadachekmuscle-pain ) flu (<0.0, 0.3> kfeverk coughkheadachekmuscle-pain ) flu (<0.6, 0.0> kfeverk coughkheadachekmuscle-pain ) WFMp(P)?
lubkflu = <0.4, 0.3> Example T component of WFMp(P) – Mt= PPs(M t) fever <0.4, 0.6> <0.4, 0.6> cough <0.7, 0.3> <0.7, 0.3> <0.7, 0.9> headache <0.7, 0.9> muscle-pain <0.2, 0.7> <0.2, 0.7> flu (<0.0, 0.80> kfeverk coughkheadachekmuscle-pain ) <0.0, 0.3> flu (<0.75, 0.99> kfeverk coughkheadachekmuscle-pain ) <0.2, 0.3> flu (<0.0, 0.3> kfeverk coughkheadachekmuscle-pain ) <0.0, 0.3> flu (<0.6, 0.0> kfeverkcoughkheadachekmuscle-pain ) <0.4, 0.0>
lubkflu = <0.3, 0.3> Example TU component of WFMp(P) – Mtu = Ps(M t) fever <0.4,0.6> k -fever <0.4, 0.6> <0.4, 0.6> <0.7, 0.3> <0.7, 0.3> cough <0.7, 0.3> k -cough <0.1, 0.3> <0.1, 0.3> headache <0.7, 0.9> k -headache <0.3, 0.8> <0.2, 0.7> muscle-pain <0.2, 0.7> k -muscle-pain flu (<0.0, 0.80> kfeverk coughkheadachekmuscle-pain ) k -flu <0.7, 0.6> <0.0, 0.3> flu (<0.75, 0.99> kfeverk coughkheadachekmuscle-pain ) k -flu <0.7, 0.6> <0.1, 0.3> flu (<0.0, 0.3> kfeverk coughkheadachekmuscle-pain ) k -flu <0.7, 0.6> <0.0, 0.3> <0.7, 0.6> flu (<0.6, 0.0> kfeverkcoughkheadachekmuscle-pain ) k -flu <0.3, 0.0>
Example WFMp(P) = <M t, M tu> M t = M tu = M tu (headache)kM t (headache) - Inconsistency M tu (flu)kM t (flu) The truth-value assigned to flu is "contaminated" by the inconsistent value verified in headache.
Conclusion • 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.
Conclusion • 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