João Alcântara, Carlos Damásio and Luís Pereira e-mail: jfla|cd|lmp@di.fct.unl.pt Centro de...

Post on 17-Dec-2015

217 views 2 download

Transcript of João Alcântara, Carlos Damásio and Luís Pereira e-mail: jfla|cd|lmp@di.fct.unl.pt Centro de...

João Alcântara, Carlos Damásio and Luís Pereirae-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

Paraconsistent Logic ProgramsParaconsistent Logic Programs

WoPaLo 2002 Trento, August 2002WoPaLo 2002 Trento, August 2002

2

OutlineOutline

• Motivation• Bilattices • Paraconsistent Logic Programs • Example• Embedding• Conclusions and Further Work

3

MotivationMotivation

• 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

4

MotivationMotivation

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)

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– 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

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)

– A semantics based on Coherent Answer Sets

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

To 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 >

10

Bilattice (Basic operations)Bilattice (Basic operations)

Negation: A bilattice 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

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

12

Paraconsistent Logic ProgramsParaconsistent 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

13

Paraconsistent Logic ProgramsParaconsistent Logic Programs

• Interpretation: I : C C

• Lattice of intepretations

• Partial intepretations

Î : Form() C C

<I, > is a complete lattice where I1 I2 iff p I1(p) k I2(p)

Valoração

<It, Itu>true true or undefined

14

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 I1tu I2

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)

15

Paraconsistent Logic ProgramsParaconsistent 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

Program Division P/I = {A [A1,..., Am|I(B1),..., I(Bn)}

s.t. A [A1,..., Am|B1,..., Bn] P

16

Paraconsistent Logic ProgramsParaconsistent Logic Programs

Gamma Operator – Let P a paraconsistent program and J an interpretationP(J) = lfp TP/J = TP/J , for some ordinal

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

We have to guarantee the coherence principle: A k not A

17

Paraconsistent Logic Programs Paraconsistent Logic Programs (Semantics)(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

Given M = < M t,M tu > is a partial stable model, we say an atom A is

true with degree wrt. M if k M t(A) and k M tu (A)

undefined with degree wrt. M if k M t(A) and k M tu (A)

false with degree wrt. M if k M t(A) and k M tu (A)

inconsistent with degree wrt. M if k M t(A) and k M tu (A)

18

Paraconsistent Logic Programs Paraconsistent Logic Programs (Semantics)(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

19

ExampleExample

Using a paraconsistent logic program to enconde 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 \otimesk(< , >, < , >) = < 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> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-pain )

flu (<0.99,0.0> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-pain )

flu (<0.0, 0.99> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-pain )

21

ExampleExample

fever cough headache muscle-pain flu

yes no no no no (80%)

Similarly, the second case

flu (<0.0,0.80> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-pain )

fever cough headache muscle-pain flu

no no no no no (99%)The last case

flu (<0.75,0.0> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-pain )

22

ExampleExample

flu (<0.75,0.0> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-pain )

flu (<0.0, 0.99> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-pain )

flu (<0.75,0.99> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-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.

23

ExampleExample

fever cough headache muscle-pain flu

yes yes no no no (30%)

yes yes no no yes (60%)

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> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-pain )

flu (<0.6, 0.0> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-pain )

24

ExampleExample

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.3> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-pain )flu (<0.6, 0.0> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-pain )

flu (<0.0, 0.80> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-pain )flu (<0.75, 0.99> \otimesk fever \otimesk

cough \otimesk headache \otimesk muscle-pain )

25

ExampleExample

We illustrate the behaviour of WFMp in several situations

fever cough headache muscle-pain

flu flu -flu

<1, 0>

<1, 0>

<0, 1>

<0, 1>

<0, 1>

<0, 1>

<0, 1>

<0, 1>

<0, 0.8>

<0, 0.8>

<0.8, 0>

<0.8, 0>

<1, 0.2>

<1, 0.2>

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

26

ExampleExample

fever cough headache muscle-pain

flu flu -flu

<0.4,0.6>

<0.4,0.6>

<0.7,0.3> <0.7,0.3>

<0.1,0.9> <0.1,0.9>

<0.2,0.7>

<0.2,0.7>

<0.4,0.3>

<0.4,0.3>

<0.3, 0.4> <0.3, 0.4>

<0.6, 0.7>

<0.6, 0.7>

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

27

ExampleExample

fever cough headache muscle-pain

flu flu -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>

<0.3, 0.4> <0.3, 0.4>

<0.7, 0.7>

<0.6, 0.7>

It illustrates how paraconsistency is handled by our semantics

flu

<0.4,0.3>

<0.3,0.3>

T

TU

flu is inconsistent

28

EmbeddingEmbedding

Extended Logic Programs are defined as a set of rules of the form A B1,..., Bm, not C1,..., not Cn where A, Bi, and Cj (1 i m, 1 j n) 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 A B1,... Bm, not C1,..., not Cn (m,n 0) belonging to P, we have A [1,0] \otimesk B1 \otimesk ... \otimesk Bm \otimesk - C1 \otimesk ... \otimesk - Cn in Pw;

•For each rule A B1, ... Bm, not C1,..., not Cn (m,n 0) belonging to P, we have A [0,1] \otimesk B1 \otimesk... \otimesk Bm \otimesk - C1 \otimesk ... \otimesk - Cn in Pw.

29

EmbeddingEmbedding

• 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 A I and A I; Iw(A) = < 0,1 > iff A I and A I; Iw(A) = < 0,0 > iff A I and A I.

• Theorem: Let P be an extended logic program with well-founded model T not F , and Pw the corresponding paraconsistent logic program with the model WFMp(Pw) = < M t, Mtu >. Then we have T M t and s T Mtu.

30

ResultsResults

• 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.

31

ResultsResults

• 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

32

Further WorkFurther 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.

33

Questions???Questions???