330 likes | 486 Views
Paraconsistent Logic Programs. João Alcântara, Carlos Damásio and Luís 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 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 WoPaLo 2002 Trento, August 2002
Outline • Motivation • Bilattices • Paraconsistent Logic Programs • Example • Embedding • Conclusions and Further Work
Motivation • Uncertain reasoning in Logic Programming • Probability theory • Fuzzy set theory • Many-valued logic • Possibilistic logic • Different ways of dealing with uncertainty • Monotonic frameworks without default negation
Motivation 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. • 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)
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 • Framework for Paraconsistent Logic Programs • Arbitrary complete bilattice of truth-values, where both belief and doubt are explicitly represented • 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) • A semantics based on Coherent Answer Sets
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 d1To each ordering are associated join (\oplus) and meet (\otimes) operations according to the following equations: Knowledge ordering (k)< c1, d1>\otimesk< c2, d2> = < c1\sqcap1 c2, d1\sqcap2 d2>< c1, d1>\oplusk< c2, d2> = < c1\sqcup1 c2, d1\sqcup2 d2> Truth ordering (t)< c1, d1>\otimest< c2, d2> = < c1\sqcap1 c2, d1\sqcup2 d2>< c1, d1>\oplust< c2, d2> = < c1\sqcup1 c2, d1\sqcap2 d2>
Bilattice (Basic operations) • Negation: A bilattice B(C,D)has a negation operation if there is a mapping : C D C D such that • a k b a kb; • a t b b ta; • a = a. • Conflation: B(C,D) enjoys a conflation operation if there is a mapping - : C D C D such that • a k b -b k-a; • a t b -a t -b; • --a = a.
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 A Paraconsistent Logic Program P is a set of the form A[A1,..., Am|B1,..., Bn] • is isotonic w.r.t. A1,..., Am • is antitonic w.r.t. B1,..., Bn can be isotonic w.r.t. some occurrence of a propositional symbol A and antitonic w.r.t. other occurrence of the same propositional symbol. = -C \oplust - C monotonic antitonic
Paraconsistent Logic Programs • Interpretation: I : C C • Lattice of intepretations • Partial intepretations Î :Form() C C Valoração <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 I1tu I2tu 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
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 TP(I)(A) = lubk {Î() such that A P} In Paraconsistent Logic Programs, we have to eliminate the antitonic part
We have to guarantee the coherence principle: A k not A Semi-normal program (PS) – The semi-normal version of P is the program obtained from P replacing every A in P by A \oplusk -A Paraconsistent Logic Programs Gamma Operator – Let P a paraconsistent program and J an interpretation P(J) = lfp TP/J = TP/J , for some ordinal
Given M = < M t,M tu > is a partial stable model, we say an atomA is truewith degree wrt. M if k M t(A) and k M tu(A) undefinedwith degree wrt. M if k M t(A) and k M tu(A) falsewith degree wrt. M if k M t(A) and k M tu(A) inconsistentwith degree wrt. M if k M t(A) and k M tu(A) Paraconsistent Logic Programs (Semantics) We say M = <M t,M tu> is a partial stable model for P iff M t = P (Ps(M t)) and M tu = Ps(M tu). We define the Paraconsistent Well-Founded Model (WFMp(P)) as the least partial paraconsistent model under the Fitting ordering
Paraconsistent Logic Programs (Semantics) • A Coherent Answer Set is a partial paraconsistent model of the form <M, M> • All partial paraconsistent models obey the coherence principle; consequently, all coherent answer set and the paraconsistent well-founded model for a program P observe the coherence principle
Example Using a paraconsistent logic program to enconde 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 \otimesk(< , >, < , >) = < min(, ), min (, ) >
Example The first case can be represented by flu (<0.99,0.0> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain ) flu (<0.99,0.0> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain ) flu (<0.0, 0.99> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain )
Example Similarly, the second case flu (<0.0,0.80> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain ) The last case flu (<0.75,0.0> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain )
Example flu (<0.0, 0.99> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain ) flu (<0.75,0.0> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain ) flu (<0.75,0.99> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain ) -If a patient has fever, cough, headache, and muscle-pain, then flu is a correct diagnosis in 75% of the cases. -If a patient doesn't have fever, doesn't cough, doesn't have neither headache nor muscle-pain, then he doesn't have flu in 99% of the situations.
Example For the remaining situation in the decision table two distinct rules are required for concluding both the patient might have or not have a flu flu (<0.0, 0.3> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain ) flu (<0.6, 0.0> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain )
Example Assume antibiotics are prescribed when flu is not concluded. We will compare two possible translations of this statement: antibiotics flu antibiotics -flu The rules for diagnosing flu are flu (<0.0, 0.80> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain ) flu (<0.75, 0.99> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain ) flu (<0.0, 0.3> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain ) flu (<0.6, 0.0> \otimeskfever \otimesk cough \otimeskheadache \otimeskmuscle-pain )
Example We illustrate the behaviour of WFMp in several situations fever <0, 1> cough <0, 1> headache <0, 1> muscle-pain <0, 1> By the coherence principle, Î(flu) kÎ(-flu) <0.8, 0> k <1, 0.2> Antibiotics should be prescribed according to antibiotics -flu
Example The physician is not certain regarding all symptoms The degree of confidence for flu is obtained by combining the degrees of confidence of several rules
Example It illustrates how paraconsistency is handled by our semantics <0.4,0.3> T flu flu is inconsistent TU <0.3,0.3>
Embedding • Extended Logic Programs are defined as a set of rules of the form AB1,..., Bm, not C1,..., not Cn where A, Bi, and Cj (1 im, 1 jn) are atoms or the explicit negation of atoms. • Let P be an extended logic program. Consider the bilattice B({0,1},{0,1}) with the operators – and , where (< a,b >) = < b,a > and -( < a, b > ) = < 1 - b, 1 - a >. Define Pw as a paraconsistent logic program such that • For each rule AB1,... Bm, not C1,..., not Cn (m,n 0) belonging to P, we have A [1,0] \otimeskB1 \otimesk ... \otimeskBm \otimesk - C1 \otimesk ... \otimesk - Cn in Pw; • For each rule AB1, ... Bm, notC1,..., notCn (m,n 0) belonging to P, we have A [0,1] \otimeskB1 \otimesk... \otimeskBm \otimesk - C1 \otimesk ... \otimesk - Cn in Pw.
Embedding • Moreover, let I and Iw be respectively interpretations in WFSXp and WFMp senses. We say I is a translation of Iw (and vice-versa), denoted by I Iw, iff for each atom A, Iw(A) = < 1,1 > iff {A, A} I; Iw(A) = < 1,0 > iff AI and AI; Iw(A) = < 0,1 > iff AI and AI; Iw(A) = < 0,0 > iff AI and AI. • Theorem: Let P be an extended logic program with well-founded model TnotF , and Pw the corresponding paraconsistent logic program with the model WFMp(Pw) = < M t, Mtu >. Then we have T M t and sTMtu.
Results • 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 an appropriate kind, of the 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 an elegant way to present belief and doubt.
Results • 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
Further Work • Generalize our structure to consider rules with more complex heads, where we can have, for instance, disjunctions of atoms. • Study particular instances of our framework to improve the understanding of properties of the concrete instances, and to compare these instances to existing work. • Study the generalized class of logic programs, extending the Residuated one, where rule bodies can be anti-monotonic functions. • Study of the various types of negation in our framework, specially if we allow for weak negation operators as well. • The definition of derivation procedures is also envisaged.