Download - Paraconsistent Logic Programs
João Alcântara, Carlos Damásio and Luís Moniz Pereirae-mail: jfla|cd|[email protected]
Centro de Inteligência Artificial (CENTRIA)
Depto. Informática, Faculdade de Ciências e Tecnologia
Universidade Nova de Lisboa
2825-114 Caparica, Portugal
Paraconsistent Logic ProgramsParaconsistent Logic Programs
JELIA'02 Cosenza, September 2002JELIA'02 Cosenza, September 2002
2
OutlineOutline
• Motivation• Bilattices • Paraconsistent Logic Programs • Example• Conclusions
3
MotivationMotivation
• Uncertain reasoning in Logic Programming– Probability theory
– Fuzzy set theory
– Many-valued logic
– Possibilistic logic
• Monotonic frameworks without default negation
4
MotivationMotivation
• 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.
5
MotivationMotivation
• 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:
6
MotivationMotivation
• 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
7
MotivationMotivation
• 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
8
MotivationMotivation
• 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)
9
BilatticeBilattice
Given two complete lattices < C, 1 > and < D, 2 > the structure B(C,D) = < C D, k, t > is a complete bilattice, where the partial orderings are defined as follows:
< c1, d1> k < c2,d2> if c1 1 c2 and d1 2 d2
< c1, d1> t < c2,d2> if c1 1 c2 and d2 2 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.
k (meet),
k (join)
t (meet),
t (join)
10
Bilattice (Basic operations)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.
11
BilatticeBilattice
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 -(< , >) = < 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
12
Bilattice (Default negation)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 ProgramsParaconsistent 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
14
Paraconsistent Logic ProgramsParaconsistent Logic Programs
• Interpretation: I : C C
• Lattice of intepretations
• Partial intepretations
Î : Form() C C
Let I be a set of interpretations with I1 and I2
belonging to I. <I, > is a complete lattice where I1
I2 iff p I1(p) k I2(p)
Valuation
<It, Itu>true true or undefined
Given a bilattice B(C,C)
15
Paraconsistent Logic ProgramsParaconsistent Logic Programs
Standard Ordering
Fitting Ordering
I1 s I2 iff I1t I2
t and I1tu I2
tu
I1 f I2 iff I1t I2
t and I2tu I1
tu
Given I1 = < I1t, I1
tu > and I2 = < I2t, I2
tu >
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 ProgramsParaconsistent Logic Programs
Extending the Classical Immediate Consequences Operator
Let P be a monotonic logic program
TP(I)(A) = lub {Î() such that A P}
In Paraconsistent Logic Programs, we have to eliminate the antitonic part
Program Division P/I = {A [A1,..., Am|I(B1),..., I(Bn)}
s.t. A [A1,..., Am|B1,..., Bn] P
17
Paraconsistent Logic ProgramsParaconsistent Logic Programs
Operator – Let P a paraconsistent logic program and J an interpretationP(J) = lfp TP/J = TP/J , for some ordinal
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
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 Paraconsistent Logic Programs (Semantics)(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
PropositionAll partial paraconsistent models obey the coherence principle; in particular, the paraconsistent well-founded model for a program P.
19
ExampleExample
Using a paraconsistent logic program to encode a rather complex decision table based on rough relations
fever cough headache muscle-pain flu
no no no no no (in 99% of the cases)
yes no no no no (in 80% of the cases)
yes yes no no no (in 30% of the cases)
yes yes no no yes (in 60% of the cases)
yes yes yes yes yes (in 75% of the cases)
We resort to the bilattice B([0,1],[0,1]) to encode this decision table, where
(< , >) = < , >, -(< , >) = < 1 - , 1 - >, and k(<
, >, < , >) = < min(, ), min (, ) >
20
ExampleExample
fever cough headache muscle-pain flu
no no no no no (99%)The first case
can be represented by
flu (<0.99,0.0> k fever k
cough k headache k muscle-pain )
flu (<0.99,0.0> k fever k
cough k headache k muscle-pain )
flu (<0.0, 0.99> k fever k
cough k headache k muscle-pain )(A k B) = (A k B)
21
ExampleExample
fever cough headache muscle-pain flu
yes yes yes yes yes (75%)The last case
flu (<0.75,0.0> k fever k cough k headache k muscle-pain )
flu (<0.0, 0.99> k fever k cough k headache k muscle-pain )
flu (<0.75,0.99> k fever k cough kheadache 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.
22
ExampleExample
The rules for diagnosing flu are
flu (<0.0, 0.3> k fever k
cough k headache k muscle-pain )flu (<0.6, 0.0> k fever k
cough k headache k muscle-pain )
flu (<0.0, 0.80> k fever k
cough k headache k muscle-pain )flu (<0.75, 0.99> k fever k
cough k headache k muscle-pain )
23
ExampleExample
flu (<0.0, 0.3> k fever k cough k headache k muscle-pain )
flu (<0.6, 0.0> k fever k cough k headache k muscle-pain )
flu (<0.0, 0.80> k fever kcough k headache k muscle-pain )
flu (<0.75, 0.99> k fever k cough k headache k muscle-pain )
fever <0.4, 0.6>
cough <0.7, 0.3>
headache <0.7, 0.9>
muscle-pain <0.2, 0.7>
Paraconsistency in our semantics
P =
WFMp(P) ?
24
ExampleExample
T component of WFMp(P) – Mt = PPs(M t)
flu (<0.0, 0.3> k fever k cough k headache k muscle-pain )
flu (<0.6, 0.0> k fever k cough k headache k muscle-pain )
flu (<0.0, 0.80> k fever k cough k headache k muscle-pain )
flu (<0.75, 0.99> k fever k cough k headache k muscle-pain )
fever <0.4, 0.6>
cough <0.7, 0.3>
headache <0.7, 0.9>
muscle-pain <0.2, 0.7>
<0.4, 0.6>
<0.7, 0.9>
<0.7, 0.3>
<0.2, 0.7>
<0.0, 0.3>
<0.0, 0.3>
<0.2, 0.3>
<0.4, 0.0>
lubk flu = <0.4, 0.3>
25
ExampleExample
TU component of WFMp(P) – Mtu = Ps(M t)
flu (<0.0, 0.3> k fever k cough k headache k muscle-pain ) k -flu
flu (<0.6, 0.0> k fever k cough k headache k muscle-pain ) k -flu
flu (<0.0, 0.80> k fever k cough k headache k muscle-pain ) k -flu
flu (<0.75, 0.99> k fever k cough k headache k muscle-pain ) k -flu
fever <0.4,0.6>
cough <0.7, 0.3> k -cough
headache <0.7, 0.9> k -headache
muscle-pain <0.2, 0.7> k -muscle-pain
<0.4, 0.6>
<0.1, 0.3>
<0.7, 0.3>
<0.2, 0.7>
<0.0, 0.3>
<0.0, 0.3>
<0.1, 0.3>
<0.3, 0.0><0.3, 0.3>lubk flu =
k -fever
<0.1, 0.3>
<0.3, 0.8>
<0.7, 0.6>
<0.7, 0.6>
<0.7, 0.6>
<0.7, 0.6>
<0.7, 0.3>
<0.4, 0.6>
26
ExampleExample
fever cough headache muscle-pain
flu
<0.4,0.6>
<0.4,0.6>
<0.7,0.3> <0.7,0.3>
<0.7,0.9> <0.1,0.3>
<0.2,0.7>
<0.2,0.7>
<0.4,0.3>
<0.3,0.3>M t =
M tu =
WFMp(P) = <M t, M tu>
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.
27
ConclusionConclusion
• 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.
28
ConclusionConclusion
• 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