Explaining Answer Sets in Argumentative Terms Claudia Schulz - - PowerPoint PPT Presentation

explaining answer sets in argumentative terms
SMART_READER_LITE
LIVE PREVIEW

Explaining Answer Sets in Argumentative Terms Claudia Schulz - - PowerPoint PPT Presentation

Explaining Answer Sets in Argumentative Terms Claudia Schulz Imperial College London, UK 24th February, 2015 patient is shortsighted patient is shortsighted glasses? laser surgery? contact lenses? intraocular lenses? patient is


slide-1
SLIDE 1

Explaining Answer Sets in Argumentative Terms

Claudia Schulz Imperial College London, UK 24th February, 2015

slide-2
SLIDE 2
slide-3
SLIDE 3

patient is shortsighted

slide-4
SLIDE 4

patient is shortsighted glasses? laser surgery? contact lenses? intraocular lenses?

slide-5
SLIDE 5

patient is shortsighted glasses? laser surgery? contact lenses? intraocular lenses? further patient info:

slide-6
SLIDE 6

patient is shortsighted glasses? laser surgery? contact lenses? intraocular lenses? further patient info:

◮ likes sports ◮ afraid to touch

eyes

◮ student

slide-7
SLIDE 7

laser surgery!

slide-8
SLIDE 8

laser surgery! Answer Set Programming (ASP)

slide-9
SLIDE 9

A logic program

tightOnMoney ← student, not richParents caresAboutPracticality ← likesSports

slide-10
SLIDE 10

A logic program

tightOnMoney ← student, not richParents caresAboutPracticality ← likesSports correctiveLens ← shortSighted, not laserSurgery laserSurgery ← shortSighted, not tightOnMoney, not correctiveLens

slide-11
SLIDE 11

A logic program

tightOnMoney ← student, not richParents caresAboutPracticality ← likesSports correctiveLens ← shortSighted, not laserSurgery laserSurgery ← shortSighted, not tightOnMoney, not correctiveLens glasses ← correctiveLens, not caresAboutPracticality, not contactLens contactLens ← correctiveLens, not afraidToTouchEyes, not longSighted, not glasses intraocularLens ← correctiveLens, not glasses, not contactLens

slide-12
SLIDE 12

A logic program

tightOnMoney ← student, not richParents caresAboutPracticality ← likesSports correctiveLens ← shortSighted, not laserSurgery laserSurgery ← shortSighted, not tightOnMoney, not correctiveLens glasses ← correctiveLens, not caresAboutPracticality, not contactLens contactLens ← correctiveLens, not afraidToTouchEyes, not longSighted, not glasses intraocularLens ← correctiveLens, not glasses, not contactLens shortSighted ← afraidToTouchEyes ← student ← likesSports ←

slide-13
SLIDE 13

A logic program

tightOnMoney ← student, not richParents caresAboutPracticality ← likesSports correctiveLens ← shortSighted, not laserSurgery laserSurgery ← shortSighted, not tightOnMoney, not correctiveLens glasses ← correctiveLens, not caresAboutPracticality, not contactLens contactLens ← correctiveLens, not afraidToTouchEyes, not longSighted, not glasses intraocularLens ← correctiveLens, not glasses, not contactLens shortSighted ← afraidToTouchEyes ← student ← likesSports ←

Answer Set:

{shortSighted, afraidToTouchEyes, student, likesSports, tightOnMoney, correctiveLens, caresAboutPracticality, intraocularLens}

slide-14
SLIDE 14

A logic program

tightOnMoney ← student, not richParents caresAboutPracticality ← likesSports correctiveLens ← shortSighted, not laserSurgery laserSurgery ← shortSighted, not tightOnMoney, not correctiveLens glasses ← correctiveLens, not caresAboutPracticality, not contactLens contactLens ← correctiveLens, not afraidToTouchEyes, not longSighted, not glasses intraocularLens ← correctiveLens, not glasses, not contactLens shortSighted ← afraidToTouchEyes ← student ← likesSports ←

Answer Set:

{shortSighted, afraidToTouchEyes, student, likesSports, tightOnMoney, correctiveLens, caresAboutPracticality, intraocularLens}

slide-15
SLIDE 15

laser surgery! Answer Set Programming (ASP) intraocular lenses! Why is “intraocular lenses” a solution?

slide-16
SLIDE 16

laser surgery! Answer Set Programming (ASP) intraocular lenses! Why is “intraocular lenses” a solution? ⇒ Explain why something is (not) in an answer set

slide-17
SLIDE 17

ASP and Argumentation

Example (Answer Set Programming)

a ← not ¬a a ← ¬a, not c, not e ¬a ← not c, not d c ← not e d ← not ¬a e ←

slide-18
SLIDE 18

ASP and Argumentation

Example (Answer Set Programming)

a ← not ¬a a ← ¬a, not c, not e ¬a ← not c, not d c ← not e d ← not ¬a e ← e ∈ S

slide-19
SLIDE 19

ASP and Argumentation

Example (Answer Set Programming)

a ← not ¬a a ← ¬a, not c, not e ¬a ← not c, not d c ← not e d ← not ¬a e ← e ∈ S

slide-20
SLIDE 20

ASP and Argumentation

Example (Answer Set Programming)

a ← not ¬a ¬a ← not c, not d d ← not ¬a e ← e ∈ S

slide-21
SLIDE 21

ASP and Argumentation

Example (Answer Set Programming)

a ← not ¬a ¬a ← not c, not d d ← not ¬a e ← e ∈ S d ∈ S?

slide-22
SLIDE 22

ASP and Argumentation

Example (Answer Set Programming)

a ← not ¬a ¬a ← not c, not d d ← not ¬a e ← e ∈ S d ∈ S?

slide-23
SLIDE 23

ASP and Argumentation

Example (Answer Set Programming)

a ← not ¬a d ← not ¬a e ← e ∈ S d ∈ S?

slide-24
SLIDE 24

ASP and Argumentation

Example (Answer Set Programming)

a ← not ¬a d ← not ¬a e ← e ∈ S d ∈ S? S = {e, d, a}

slide-25
SLIDE 25

ASP and Argumentation

Example (Answer Set Programming)

a ← not ¬a d ← not ¬a e ← e ∈ S d ∈ S? S = {e, d, a} Interaction between classical literals and NAF literals!

slide-26
SLIDE 26

ASP and Argumentation

Example (Answer Set Programming)

a ← not ¬a d ← not ¬a e ← e ∈ S d ∈ S? S = {e, d, a} Interaction from classical literals to NAF literals!

slide-27
SLIDE 27

ASP and Argumentation

Example (Answer Set Programming)

a ← not ¬a d ← not ¬a e ← e ∈ S d ∈ S? S = {e, d, a} Interaction from classical literals to NAF literals!

Example (Assumption-Based Argumentation (ABA))

◮ rules = Answer Set Program

slide-28
SLIDE 28

ASP and Argumentation

Example (Answer Set Programming)

a ← not ¬a d ← not ¬a e ← e ∈ S d ∈ S? S = {e, d, a} Interaction from classical literals to NAF literals!

Example (Assumption-Based Argumentation (ABA))

◮ rules = Answer Set Program ◮ assumptions = NAF literals: {not a, not ¬a, not c, not ¬c,

not d, not ¬d, not e, not ¬e}

slide-29
SLIDE 29

ASP and Argumentation

Example (Answer Set Programming)

a ← not ¬a d ← not ¬a e ← e ∈ S d ∈ S? S = {e, d, a} Interaction from classical literals to NAF literals!

Example (Assumption-Based Argumentation (ABA))

◮ rules = Answer Set Program ◮ assumptions = NAF literals: {not a, not ¬a, not c, not ¬c,

not d, not ¬d, not e, not ¬e}

◮ contraries: not a = a; not ¬a = ¬a; not c = c; . . .

slide-30
SLIDE 30

ASP and Argumentation

Example (Assumption-Based Argumentation (ABA))

◮ rules = Answer Set Program ◮ assumptions = NAF literals: {not a, not ¬a, not c, not ¬c,

not d, not ¬d, not e, not ¬e}

◮ contraries: not a = a; not ¬a = ¬a; not c = c; . . .

semantics:

slide-31
SLIDE 31

ASP and Argumentation

Example (Assumption-Based Argumentation (ABA))

◮ rules = Answer Set Program ◮ assumptions = NAF literals: {not a, not ¬a, not c, not ¬c,

not d, not ¬d, not e, not ¬e}

◮ contraries: not a = a; not ¬a = ¬a; not c = c; . . .

semantics:

◮ construct arguments

slide-32
SLIDE 32

ASP and Argumentation

Example (Assumption-Based Argumentation (ABA))

◮ rules = Answer Set Program ◮ assumptions = NAF literals: {not a, not ¬a, not c, not ¬c,

not d, not ¬d, not e, not ¬e}

◮ contraries: not a = a; not ¬a = ¬a; not c = c; . . .

semantics:

◮ construct arguments ◮ attacks between arguments

slide-33
SLIDE 33

ASP and Argumentation

Example (Assumption-Based Argumentation (ABA))

◮ rules = Answer Set Program ◮ assumptions = NAF literals: {not a, not ¬a, not c, not ¬c,

not d, not ¬d, not e, not ¬e}

◮ contraries: not a = a; not ¬a = ¬a; not c = c; . . .

semantics:

◮ construct arguments ◮ attacks between arguments ◮ extensions = arguments “winning” together

slide-34
SLIDE 34

ASP and Argumentation

Example (Assumption-Based Argumentation (ABA))

◮ rules = Answer Set Program ◮ assumptions = NAF literals: {not a, not ¬a, not c, not ¬c,

not d, not ¬d, not e, not ¬e}

◮ contraries: not a = a; not ¬a = ¬a; not c = c; . . .

semantics:

◮ construct arguments ◮ attacks between arguments ◮ extensions = arguments “winning” together

⇒ human-like reasoning

slide-35
SLIDE 35

ABA semantics

slide-36
SLIDE 36

ABA semantics

slide-37
SLIDE 37

ABA semantics

slide-38
SLIDE 38

ASP and Argumentation

Example (Assumption-Based Argumentation (ABA))

◮ rules = Answer Set Program ◮ assumptions = NAF literals: {not a, not ¬a, not c, not ¬c,

not d, not ¬d, not e, not ¬e}

◮ contraries: not a = a; not ¬a = ¬a; not c = c; . . .

semantics:

◮ construct arguments ◮ attacks between arguments ◮ extensions = arguments “winning” together

⇒ human-like reasoning

slide-39
SLIDE 39

ASP and Argumentation

Example (Assumption-Based Argumentation (ABA))

◮ rules = Answer Set Program ◮ assumptions = NAF literals: {not a, not ¬a, not c, not ¬c,

not d, not ¬d, not e, not ¬e}

◮ contraries: not a = a; not ¬a = ¬a; not c = c; . . .

semantics:

◮ construct arguments ◮ attacks between arguments ◮ extensions = arguments “winning” together

⇒ human-like reasoning extensions and answer sets correspond!

slide-40
SLIDE 40

ABA-Based Answer Set Justifications - an overview

Logic Program

slide-41
SLIDE 41

ABA-Based Answer Set Justifications - an overview

Logic Program answer sets 𝑇

compute

slide-42
SLIDE 42

ABA-Based Answer Set Justifications - an overview

Logic Program answer sets 𝑇 𝑚 ∈ 𝑇

compute

slide-43
SLIDE 43

ABA-Based Answer Set Justifications - an overview

Logic Program ABA framework

translate

answer sets 𝑇 𝑚 ∈ 𝑇

compute

slide-44
SLIDE 44

ABA-Based Answer Set Justifications - an overview

Logic Program ABA framework

translate

answer sets 𝑇 stable extensions 𝐹

derive

𝑚 ∈ 𝑇

compute

slide-45
SLIDE 45

ABA-Based Answer Set Justifications - an overview

Logic Program ABA framework answer sets 𝑇 stable extensions 𝐹 𝑚 ∈ 𝑇 … ⊢ 𝑚 ∈ 𝐹

compute construct translate derive

slide-46
SLIDE 46

ABA-Based Answer Set Justifications - an overview

Logic Program ABA framework answer sets 𝑇 stable extensions 𝐹 𝑚 ∈ 𝑇 … ⊢ 𝑚 ∈ 𝐹 Attack Tree

compute construct explains construct translate derive

slide-47
SLIDE 47

ABA-Based Answer Set Justifications - an overview

Logic Program ABA framework answer sets 𝑇 stable extensions 𝐹 𝑚 ∈ 𝑇 … ⊢ 𝑚 ∈ 𝐹 Attack Tree LABAS Justification

compute construct construct explains construct translate derive

slide-48
SLIDE 48

ABA-Based Answer Set Justifications - an overview

Logic Program ABA framework answer sets 𝑇 stable extensions 𝐹 𝑚 ∉ 𝑇 … ⊢ 𝑚 ∉ 𝐹 Attack Tree LABAS Justification

compute construct construct explains construct translate derive

slide-49
SLIDE 49

Attack Trees

slide-50
SLIDE 50

Attack Trees

A−

9 : ({not ¬a}, ∅) ⊢ a

slide-51
SLIDE 51

Attack Trees

slide-52
SLIDE 52

Attack Trees

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

slide-53
SLIDE 53

Attack Trees

slide-54
SLIDE 54

Attack Trees

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

slide-55
SLIDE 55

Attack Trees

slide-56
SLIDE 56

Attack Trees

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

slide-57
SLIDE 57

Attack Trees

slide-58
SLIDE 58

Attack Trees

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

slide-59
SLIDE 59

Attack Trees

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

. . .

slide-60
SLIDE 60

laser surgery! Answer Set Programming (ASP) intraocular lenses!

slide-61
SLIDE 61

Why is laser surgery not part of the solution?

Answer Set:

{shortSighted, afraidToTouchEyes, student, likesSports, tightOnMoney, correctiveLens, caresAboutPracticality, intraocularLens}

slide-62
SLIDE 62

Why is laser surgery not part of the solution?

Answer Set:

{shortSighted, afraidToTouchEyes, student, likesSports, tightOnMoney, correctiveLens, caresAboutPracticality, intraocularLens} A1− : ({shortSighted}, {not tightOnMoney, not correctiveLens}) ⊢ laserSurgery A2+ : ({student}, {not richParents}) ⊢ tightOnMoney

slide-63
SLIDE 63

Why is intraocular lens part of the solution?

Answer Set:

{shortSighted, afraidToTouchEyes, student, likesSports, tightOnMoney, correctiveLens, caresAboutPracticality, intraocularLens}

slide-64
SLIDE 64

Why is intraocular lens part of the solution?

Answer Set:

{shortSighted, afraidToTouchEyes, student, likesSports, tightOnMoney, correctiveLens, caresAboutPracticality, intraocularLens}

A3+ : ({shortSighted}, {not laserSurgery, not glasses, not contactLens}) ⊢ intraocularLens A1− : (. . .) ⊢ laserSurgery A2+ : (. . .) ⊢ tightOnMoney A−

6 : (. . . , not caresAboutPracticality, . . .) ⊢ glasses

A+

7 : ({likesSports}, ∅) ⊢ caresAboutPracticality

A−

4 : (. . . , not afraidToTouchEyes, . . .) ⊢ contactLens

A+

5 : ({afraidToTouchEyes}, ∅) ⊢ afraidToTouchEyes

slide-65
SLIDE 65

Labelled ABA-Based Answer Set (LABAS) Justifications

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

. . .

slide-66
SLIDE 66

Labelled ABA-Based Answer Set (LABAS) Justifications

a−

A9

slide-67
SLIDE 67

Labelled ABA-Based Answer Set (LABAS) Justifications

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

. . .

slide-68
SLIDE 68

Labelled ABA-Based Answer Set (LABAS) Justifications

a−

A9

not ¬a−

asm

slide-69
SLIDE 69

Labelled ABA-Based Answer Set (LABAS) Justifications

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

. . .

slide-70
SLIDE 70

Labelled ABA-Based Answer Set (LABAS) Justifications

a−

A9

not ¬a−

asm

− ¬a+

A11

+

slide-71
SLIDE 71

Labelled ABA-Based Answer Set (LABAS) Justifications

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

. . .

slide-72
SLIDE 72

Labelled ABA-Based Answer Set (LABAS) Justifications

a−

A9

not ¬a−

asm

− ¬a+

A11

+ not c+

asm

+ not d+

asm

+

slide-73
SLIDE 73

Labelled ABA-Based Answer Set (LABAS) Justifications

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

. . .

slide-74
SLIDE 74

Labelled ABA-Based Answer Set (LABAS) Justifications

a−

A9

not ¬a−

asm

− ¬a+

A11

+ not c+

asm

+ not d+

asm

+ c−

A12

slide-75
SLIDE 75

Labelled ABA-Based Answer Set (LABAS) Justifications

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

. . .

slide-76
SLIDE 76

Labelled ABA-Based Answer Set (LABAS) Justifications

a−

A9

not ¬a−

asm

− ¬a+

A11

+ not c+

asm

+ not d+

asm

+ c−

A12

− not e−

asm

slide-77
SLIDE 77

Labelled ABA-Based Answer Set (LABAS) Justifications

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

. . .

slide-78
SLIDE 78

Labelled ABA-Based Answer Set (LABAS) Justifications

a−

A9

not ¬a−

asm

− ¬a+

A11

+ not c+

asm

+ not d+

asm

+ c−

A12

− not e−

asm

− e+

fact

+

slide-79
SLIDE 79

Labelled ABA-Based Answer Set (LABAS) Justifications

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

. . .

slide-80
SLIDE 80

Labelled ABA-Based Answer Set (LABAS) Justifications

a−

A9

not ¬a−

asm

− ¬a+

A11

+ not c+

asm

+ not d+

asm

+ c−

A12

− not e−

asm

− e+

fact

+ d−

A13

slide-81
SLIDE 81

Labelled ABA-Based Answer Set (LABAS) Justifications

A−

9 : ({not ¬a}, ∅) ⊢ a

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

A+

11 : ({not c, not d}, ∅) ⊢ ¬a

A−

12 : ({not e}, ∅) ⊢ c

A−

13 : ({not ¬a}, ∅) ⊢ d

A+

14 : (∅, {e}) ⊢ e

. . .

slide-82
SLIDE 82

Labelled ABA-Based Answer Set (LABAS) Justifications

a−

A9

not ¬a−

asm

− ¬a+

A11

+ not c+

asm

+ not d+

asm

+ c−

A12

− not e−

asm

− e+

fact

+ d−

A13

− −

slide-83
SLIDE 83

laser surgery! Answer Set Programming (ASP) intraocular lenses!

slide-84
SLIDE 84

Why is laser surgery not part of the solution?

Attack Tree

A1− : ({shortSighted}, {not tightOnMoney, not correctiveLens}) ⊢ laserSurgery A2+ : ({student}, {not richParents}) ⊢ tightOnMoney

slide-85
SLIDE 85

Why is laser surgery not part of the solution?

Attack Tree

A1− : ({shortSighted}, {not tightOnMoney, not correctiveLens}) ⊢ laserSurgery A2+ : ({student}, {not richParents}) ⊢ tightOnMoney

ABA-Based Answer Set (ABAS) Justification

laserSurgery−

A1

not tightOnMoney−

asm

− tightOnMoney+

A2

+ student+

fact

not richParents+

asm

+ +

slide-86
SLIDE 86

Why is intraocular lens part of the solution?

Attack Tree

A3+ : ({shortSighted}, {not laserSurgery, not glasses, not contactLens}) ⊢ intraocularLens A1− : (. . .) ⊢ laserSurgery A2+ : (. . .) ⊢ tightOnMoney A−

6 : (. . . , not caresAboutPracticality, . . .) ⊢ glasses

A+

7 : ({likesSports}, ∅) ⊢ caresAboutPracticality

A−

4 : (. . . , not afraidToTouchEyes, . . .) ⊢ contactLens

A+

5 : ({afraidToTouchEyes}, ∅) ⊢ afraidToTouchEyes

slide-87
SLIDE 87

Why is intraocular lens part of the solution?

ABA-Based Answer Set (ABAS) Justification

intraocularLens+

A3

shortSighted+

fact

not laserSurgery+

asm

not glasses+

asm

not contactLens+

asm

+ + + + laserSurgery−

A1

− not tightOnMoney−

asm

− tightOnMoney+

A2

+ student+

fact

not richParents+

asm

+ + glasses−

A6

− not caresAboutPracticality−

asm

− caresAboutPracticality+

A7

+ likesSports+

fact

+ contactLens−

A4

− not afraidToTouchEyes−

asm

− afraidToTouchEyes+

fact

+

slide-88
SLIDE 88

Other justificiation approaches

LABAS Justification b+

A1

not a+

asm

e+

fact

+ + a−

A2

− not b−

asm

− + Off-line Justification (Pontelli, Son, Elkhatib)

slide-89
SLIDE 89

Other justificiation approaches

LABAS Justification a−

A2

not b−

asm

− b+

A1

+ not a+

asm

e+

fact

+ + − Off-line Justification (Pontelli, Son, Elkhatib)

slide-90
SLIDE 90

Conclusion

Answer Set Programming (ASP)

+

ABA-Based Answer Set Justification

=

slide-91
SLIDE 91

Conclusion

Answer Set Programming (ASP)

+

ABA-Based Answer Set Justification

=

laser surgery! intraocular lenses!

slide-92
SLIDE 92

Future Work

So far: restricted do consistent logic programs

slide-93
SLIDE 93

Future Work

So far: restricted do consistent logic programs

◮ find source of inconsistency in a logic program ◮ debug the logic program

⇒ more existing literature

slide-94
SLIDE 94

IMPERIAL COLLEGE COMPUTER STUDENT WORKSHOP 2015

The fth Imperial College Computing Student Workshop (ICCSW) aims to provide an international forum for doctoral students in computing. While most conferences and workshops in academia solely cater for specic research areas, we encourage doctoral students from all disciplines in computer science to submit, review papers and take part in the event. It is a workshop organised by students for students. The workshop will be hosted by the Department of Computing at Imperial College London. The workshop offers:

  • A traditional track featuring
  • Technical papers focused on current topics in computer science
  • Tool papers describing the design, functionality and applicability of a software tool
  • A survey track featuring
  • Papers that synthesise the state of the art in a particular topic of computer science

Areas of interest cover all elds of research in computer science, including (but not limited to) the following: 24-25 September 2015 London, United Kingdom

iccsw@imperial.ac.uk

To contact workshop

  • rganisers

with any questions, please email:

Have something interesting in development? Show us, and everybody else. ICCSW is an international forum for doctoral students in computing.

  • Computer

Systems

  • Networks

and Communications

  • Logic

and Articial Intelligence

  • Software

Engineering

  • Theory
  • f

Computational Systems

  • Verication

and Model Checking

  • Machine

Learning

  • Programming

Languages

  • Computer

Graphics

  • Databases

To nd

  • ut

more about the workshop, visit iccsw.doc.ac.uk

In associaon with:

slide-95
SLIDE 95

Explaining Answer Sets in Argumentative Terms Questions?!

slide-96
SLIDE 96

ASP Semantics

Why not simply display the derivation? The answer set of P (AS(P)), is the smallest set S ⊆ LitP s.t.:

  • 1. for any clause l0 ← l1, . . . , lm in P:

if l1, . . . , lm ∈ S then l0 ∈ S

  • 2. S = LitP if S contains complementary literals a and ¬a.

⇒ For P without NAF literals

For P with NAF literals

S is an answer set of P if it is the answer set of the reduct PS, i.e. if S = AS(PS).

slide-97
SLIDE 97

ASP Semantics

It all depends on the reduct...

For P possibly with NAF literals and for any S ⊆ LitP

The reduct PS is obtained from P by deleting:

  • 1. all clauses with not l in their bodies where l ∈ S
  • 2. all NAF literals in the remaining clauses.
slide-98
SLIDE 98

ASP Semantics

It all depends on the reduct...

For P possibly with NAF literals and for any S ⊆ LitP

The reduct PS is obtained from P by deleting:

  • 1. all clauses with not l in their bodies where l ∈ S
  • 2. all NAF literals in the remaining clauses.

Example

a ← not ¬a a ← ¬a, not c, not e ¬a ← not c, not d c ← not e d ← not ¬a e ←

slide-99
SLIDE 99

ASP Semantics

It all depends on the reduct...

For P possibly with NAF literals and for any S ⊆ LitP

The reduct PS is obtained from P by deleting:

  • 1. all clauses with not l in their bodies where l ∈ S
  • 2. all NAF literals in the remaining clauses.

Example

a ← not ¬a a ← ¬a, not c, not e ¬a ← not c, not d c ← not e d ← not ¬a e ← e ∈ S

slide-100
SLIDE 100

ASP Semantics

It all depends on the reduct...

For P possibly with NAF literals and for any S ⊆ LitP

The reduct PS is obtained from P by deleting:

  • 1. all clauses with not l in their bodies where l ∈ S
  • 2. all NAF literals in the remaining clauses.

Example

a ← not ¬a a ← ¬a, not c, not e ¬a ← not c, not d c ← not e d ← not ¬a e ← e ∈ S

slide-101
SLIDE 101

ASP Semantics

It all depends on the reduct...

For P possibly with NAF literals and for any S ⊆ LitP

The reduct PS is obtained from P by deleting:

  • 1. all clauses with not l in their bodies where l ∈ S
  • 2. all NAF literals in the remaining clauses.

Example

a ← not ¬a ¬a ← not c, not d d ← not ¬a e ← e ∈ S

slide-102
SLIDE 102

ASP Semantics

It all depends on the reduct...

For P possibly with NAF literals and for any S ⊆ LitP

The reduct PS is obtained from P by deleting:

  • 1. all clauses with not l in their bodies where l ∈ S
  • 2. all NAF literals in the remaining clauses.

Example

a ← not ¬a ¬a ← not c, not d d ← not ¬a e ← e ∈ S d ∈ S?

slide-103
SLIDE 103

ASP Semantics

It all depends on the reduct...

For P possibly with NAF literals and for any S ⊆ LitP

The reduct PS is obtained from P by deleting:

  • 1. all clauses with not l in their bodies where l ∈ S
  • 2. all NAF literals in the remaining clauses.

Example

a ← not ¬a ¬a ← not c, not d d ← not ¬a e ← e ∈ S d ∈ S?

slide-104
SLIDE 104

ASP Semantics

It all depends on the reduct...

For P possibly with NAF literals and for any S ⊆ LitP

The reduct PS is obtained from P by deleting:

  • 1. all clauses with not l in their bodies where l ∈ S
  • 2. all NAF literals in the remaining clauses.

Example

a ← not ¬a d ← not ¬a e ← e ∈ S d ∈ S?

slide-105
SLIDE 105

ASP Semantics

It all depends on the reduct...

For P possibly with NAF literals and for any S ⊆ LitP

The reduct PS is obtained from P by deleting:

  • 1. all clauses with not l in their bodies where l ∈ S
  • 2. all NAF literals in the remaining clauses.

Example

a ← not ¬a d ← not ¬a e ← e ∈ S d ∈ S? S = {e, d, a}

slide-106
SLIDE 106

ABA - formally

Example

P: a ← not ¬a a ← ¬a, not c, not e ¬a ← not c, not d c ← not e d ← not ¬a e ← ABAP = LP, RP, AP, ¯:

◮ language: LP = LitP ∪ NAFP ◮ rules: RP = P ◮ assumptions: AP = NAFP =

{not a, not ¬a, not c, not ¬c, not d, not ¬d, not e, not ¬e}

slide-107
SLIDE 107

ABA - formally

Example

P: a ← not ¬a a ← ¬a, not c, not e ¬a ← not c, not d c ← not e d ← not ¬a e ← ABAP = LP, RP, AP, ¯:

◮ language: LP = LitP ∪ NAFP ◮ rules: RP = P ◮ assumptions: AP = NAFP =

{not a, not ¬a, not c, not ¬c, not d, not ¬d, not e, not ¬e}

◮ contraries:

not a = a; not ¬a = ¬a; not c = c; not ¬c = ¬c; not d = d; not ¬d = ¬d; not e = e; not ¬e = ¬e argument: derivation (modus ponens) from assumptions and rules ({assumptions}, {facts}) ⊢ conclusion

slide-108
SLIDE 108

ABA - formally

Example

P: a ← not ¬a a ← ¬a, not c, not e ¬a ← not c, not d c ← not e d ← not ¬a e ← ABAP = LP, RP, AP, ¯:

◮ language: LP = LitP ∪ NAFP ◮ rules: RP = P ◮ assumptions: AP = NAFP =

{not a, not ¬a, not c, not ¬c, not d, not ¬d, not e, not ¬e}

◮ contraries:

not a = a; not ¬a = ¬a; not c = c; not ¬c = ¬c; not d = d; not ¬d = ¬d; not e = e; not ¬e = ¬e argument: derivation (modus ponens) from assumptions and rules A1 : ({not a}, ∅) ⊢ not a

slide-109
SLIDE 109

ABA - formally

Example

P: a ← not ¬a a ← ¬a, not c, not e ¬a ← not c, not d c ← not e d ← not ¬a e ← ABAP = LP, RP, AP, ¯:

◮ language: LP = LitP ∪ NAFP ◮ rules: RP = P ◮ assumptions: AP = NAFP =

{not a, not ¬a, not c, not ¬c, not d, not ¬d, not e, not ¬e}

◮ contraries:

not a = a; not ¬a = ¬a; not c = c; not ¬c = ¬c; not d = d; not ¬d = ¬d; not e = e; not ¬e = ¬e argument: derivation (modus ponens) from assumptions and rules A14 : (∅, {e}) ⊢ e

slide-110
SLIDE 110

ABA - formally

Example

P: a ← not ¬a a ← ¬a, not c, not e ¬a ← not c, not d c ← not e d ← not ¬a e ← ABAP = LP, RP, AP, ¯:

◮ language: LP = LitP ∪ NAFP ◮ rules: RP = P ◮ assumptions: AP = NAFP =

{not a, not ¬a, not c, not ¬c, not d, not ¬d, not e, not ¬e}

◮ contraries:

not a = a; not ¬a = ¬a; not c = c; not ¬c = ¬c; not d = d; not ¬d = ¬d; not e = e; not ¬e = ¬e argument: derivation (modus ponens) from assumptions and rules A13 : ({not ¬a}, ∅) ⊢ d

slide-111
SLIDE 111

ABA - formally

Example

P: a ← not ¬a a ← ¬a, not c, not e ¬a ← not c, not d c ← not e d ← not ¬a e ← ABAP = LP, RP, AP, ¯:

◮ language: LP = LitP ∪ NAFP ◮ rules: RP = P ◮ assumptions: AP = NAFP =

{not a, not ¬a, not c, not ¬c, not d, not ¬d, not e, not ¬e}

◮ contraries:

not a = a; not ¬a = ¬a; not c = c; not ¬c = ¬c; not d = d; not ¬d = ¬d; not e = e; not ¬e = ¬e argument: derivation (modus ponens) from assumptions and rules A10 : ({not c, not d, not e}, ∅) ⊢ a

slide-112
SLIDE 112

ASP vs ABA

Correspondence between answer sets S and stable extensions E:

◮ if an argument with conclusion l is in E, then l ∈ S ◮ if l ∈ S then an argument with conclusion l is in E ◮ if for all assumptions not l of an argument A, l /

∈ S, then A ∈ E ⇒ at least one corresponding argument for every literal in S ⇒ one with all assumptions “in” S

slide-113
SLIDE 113

Attack Trees

For l ∈ / / ∈ S and E the corresponding stable extension:

◮ start with a (corresponding) argument A with conclusion l

◮ A+ if A ∈ E ◮ A− if A /

∈ E

◮ for any A+: all attacking arguments are child nodes

⇒ labelled −

◮ for any A−: exactly one attacking argument ∈ E is a child

node ⇒ labelled + ⇒ an argument can have various Attack Trees!

slide-114
SLIDE 114

Labelled ABA-Based Answer Set (LABAS) Justifications

For l ∈ S, E the corresponding stable extension, A a corresponding argument of l, Υ an Attack Tree of A :

◮ start with l+ ◮ add for every + argument node in Υ:

◮ support relations between all assumptions/facts and the

conclusion ⇒ literals and relation +

◮ attack relations between the conclusion of child nodes and

the attacked assumption ⇒ assumption +, conclusion and relation −

◮ add for every − argument node in Υ:

◮ support relations between attacked assumptions and

conclusion ⇒ literals and relation −

◮ attack relations between conclusion of child nodes and the

attacked assumption ⇒ assumption −, conclusion and relation +

slide-115
SLIDE 115

Labelled ABA-Based Answer Set (LABAS) Justifications

For l / ∈ S, E the corresponding stable extension, A1, . . . , An all arguments with conclusion l, Υ11, . . . , Υ1m1, . . . , Υnmn all Attack Trees of Ai :

◮ start with l− ◮ construct the LABAS Justifications for all Attack Trees as in

the positive case

slide-116
SLIDE 116

ABA-Based Answer Set Justifications - some properties

explanation in terms of admissible fragment of the stable extension E / the answer set S Attack Tree for an argument in E:

◮ set of all A+ is an admissible extension

⇒ subset of E

◮ set of all assumptions in all A+ is an admissible scenario

⇒ subset of NAF literals “in” S LABAS Justification for a literal in S

◮ set of all NAF labelled + is an admissible scenario

⇒ subset of NAF literals “in” S

slide-117
SLIDE 117

ABA-Based Answer Set Justifications - some properties

explanation in terms of admissible fragment of the stable extension E / the answer set S Attack Tree for an argument not in E:

◮ set of all A+ is an admissible extension

⇒ subset of E

◮ set of all assumptions in all A+ is an admissible scenario

⇒ subset of NAF literals “in” S ⇒ admissible fragment attacks argument in question LABAS Justification for a literal not in S

◮ set of all NAF labelled + in one of the explanations is an

admissible scenario ⇒ subset of NAF literals “in” S ⇒ admissible fragment attacks literal in question