28
João Alcântara, Carlos Damásio and Luís Moniz Pereira e-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 Programs Paraconsistent Logic Programs JELIA'02 Cosenza, September JELIA'02 Cosenza, September 2002 2002

Paraconsistent Logic Programs

Embed Size (px)

DESCRIPTION

Paraconsistent Logic Programs. João Alcântara, Carlos Damásio and Luís Moniz Pereira e-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. - PowerPoint PPT Presentation

Citation preview

Page 1: 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

Page 2: Paraconsistent Logic Programs

2

OutlineOutline

• Motivation• Bilattices • Paraconsistent Logic Programs • Example• Conclusions

Page 3: Paraconsistent Logic Programs

3

MotivationMotivation

• Uncertain reasoning in Logic Programming– Probability theory

– Fuzzy set theory

– Many-valued logic

– Possibilistic logic

• Monotonic frameworks without default negation

Page 4: Paraconsistent Logic Programs

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.

Page 5: Paraconsistent Logic Programs

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:

Page 6: Paraconsistent 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

Page 7: Paraconsistent Logic Programs

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

Page 8: Paraconsistent Logic Programs

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)

Page 9: Paraconsistent Logic Programs

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)

Page 10: Paraconsistent Logic Programs

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.

Page 11: Paraconsistent Logic Programs

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

Page 12: Paraconsistent Logic Programs

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

Page 13: Paraconsistent Logic Programs

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

Page 14: Paraconsistent Logic Programs

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)

Page 15: Paraconsistent Logic Programs

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)

Page 16: Paraconsistent Logic Programs

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

Page 17: Paraconsistent Logic Programs

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

Page 18: Paraconsistent Logic Programs

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.

Page 19: Paraconsistent Logic Programs

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 (, ) >

Page 20: Paraconsistent Logic Programs

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)

Page 21: Paraconsistent Logic Programs

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.

Page 22: Paraconsistent Logic Programs

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 )

Page 23: Paraconsistent Logic Programs

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) ?

Page 24: Paraconsistent Logic Programs

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>

Page 25: Paraconsistent Logic Programs

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>

Page 26: Paraconsistent Logic Programs

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.

Page 27: Paraconsistent Logic Programs

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.

Page 28: Paraconsistent Logic Programs

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