 8K - views

# Relational Proofs Logical Entailment

A set of premises . Δ. logically entails a conclusion . ϕ. (. Δ. |= . ϕ. ) if and only if every interpretation that satisfies . Δ. also satisfies . ϕ. .. Propositional Truth Assignments. With .

Embed :

Download Presentation - The PPT/PDF document "Relational Proofs Logical Entailment" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.

## Presentation on theme: "Relational Proofs Logical Entailment"— Presentation transcript:

Slide1

Relational ProofsSlide2

A set of premises

Δ

logically entails a conclusion ϕ (Δ |= ϕ) if and only if every interpretation that satisfies Δ also satisfies ϕ.

Logical EntailmentSlide3

With

n

constants, there are 2n truth assignments.

Propositional Truth AssignmentsSlide4

p

(

a,a) p(a,b) p(b,a) p(b,a) 1 1 1 1

1 1 1 0

1 1 0 1

1 1 0 0

1 0 1 1

1 0 1 0 1 0 0 1 1 o 0 0 … … … …Many interpretations!

Truth AssignmentsSlide5

Given a few restrictions (described later), we have good news.

Good News: If

Δ logically entails

ϕ

, then there is a finite proof of

ϕ

from

Δ. And vice versa.More Good News: If Δ logically entails ϕ, it is possible to find such a proof in finite time.Good NewsSlide6

More rules of inference

Examples

Soundness and completeness and decidability

ProgrammeSlide7

Relational ProofsSlide8

Logical Rules of Inference

Negation Introduction

Negation Elimination

And Introduction

And Elimination

Or Introduction

Or Elimination

AssumptionImplication EliminationBiconditional IntroductionBiconditional EliminationSlide9

Universal Introduction

Universal Elimination

Existential Introduction

Existential Elimination

Domain Closure

New Rules of InferenceSlide10

Condition:

ν

does not occur free in

ϕ

and an active assumption

Universal Introduction (UI)

ϕ

∀ν.ϕSlide11

Examples

Premise:

hates(jane,x)Conclusion: ∀

x

.

hates(jane,x)

Premise:

hates(jane,jill)Conclusion: ∀x.hates(jane,jill)Premise: hates(jane,y)Conclusion: ∀x.hates(jane,y)ExamplesSlide12

p

(

x

)

Assumption

q

(

x

)

x

.

q

(

x

)

UI

Disallowed CaseSlide13

p

(

x

)

Assumption

q

(

x

)

p

(

x

)

q

(

x

)

II

y

.(

p

(

x

)

q(x))UI

Allowed CaseSlide14

Condition:

τ

is substitutable for

ν

in

ϕ

Universal Elimination (UE)

∀ν.ϕ[ν]

ϕ[τ]Slide15

Premise:

∀x.hates(jane,x)

Conclusions:

hates

(

jane,jill) x←jill hates(jane,jane) x←jane hates(jane,x) x←x hates(jane,y) x←yExamplesSlide16

Premise:

∀x.∃y.hates(x,y)

Conclusions:

y

.hates(jane,y) x←jane ∃y.hates(y,y) x←y Wrong!!More ExamplesSlide17

An occurrence of a variable

ν

in ϕ captures a term τ if and only if τ contains a variable μ and the occurrence of ν

lies in the scope of a quantifier of

μ

.

The occurrence of

y in ∃x.hates(x,y) captures x.Why? The occurrence of y lies in scope of quantifier of x.CaptureSlide18

A term

τ

is substitutable for ν in ϕ if and only if no free occurrence of ν captures τ.

Some texts say “

τ

is

free

for ν in ϕ” instead of “τ is substitutable for ν in ϕ”.mother(jane) is free for y in hates(jane,y).mother(x) is free for y in hates(jane,y).mother(x) is free for y in

∃z.hates(z,y).

mother

(

x

) is

not

free for

y

in

x

.

hates

(

x

,

y

).

mother

(

x) is free for y in (∀x.∃y.l(x,y) ∧ ∃z.h(z,y)).

SubstitutabilitySlide19

Condition:

τ

is substitutable for

ν

in

ϕ

Universal Elimination (UE)

∀ν.ϕ[ν]

ϕ[τ]Slide20

Condition:

τ

does

not

contain quantified variables

Existential Introduction (EI)

ϕ[

τ

]

∃ν.ϕ

[

ν

]Slide21

Examples

Premise:

hates(jill,jill)

Conclusions:

x

.hates(x,x) ∃x.hates(jill,x) ∃x.hates(x,jill) ∃x.∃y.hates(x,y)

ExamplesSlide22

Conditions:

ϕ

is a

closed

sentence

τ is not an existing constant - Skolem constant Closed Existential Elimination (EE)

ν

.

ϕ

[

ν

]

ϕ

[ [

τ

] ]Slide23

Premise:

y.hates(jane,y)

Conclusion:

hates

(

jane

,[c]) OkayPremise: ∃y.hates(y,y)Conclusion: hates([c],[c]) OkayPremise: ∃y.hates(x,y)Conclusion: hates(x,[c]) No!!!

ExampleSlide24

Conditions:

ϕ

is an

open

sentence

τ is not an existing constant - Skolem function Open Existential Elimination (EE)

ν

.

ϕ

[

ν

1

,…,ν

n

]

ϕ[ [

π(

ν

1

,…,ν

n

)] ]Slide25

Premise:

y

.

hates

(

x

,y)Conclusion: hates(x, [f(x)] ) OkayExampleSlide26

φ

[

σ1]

φ

[

σ

n]∀υ.φ[υ]Domain ClosureSlide27

Premise:

y.hates(jane,y)

Conclusion:

hates

(

jane

,[c]) OkayPremise: ∃y.hates(y,y)Conclusion: hates([c],[c]) OkayPremise: ∃y.hates(x,y)Conclusion: hates(x,[c]) No!!!

ExampleSlide28

φ

[

a]

φ

[

b

]

φ[c]φ[d]∀x.φ[x]ExampleSlide29

Everybody loves somebody. Everybody loves a lover. Show that Jack loves Jill.

Everybody loves somebody. Everybody loves a lover. Show that Jack loves Jill.

Premises:

y

.

Everybody loves somebody. Everybody loves a lover. Show that Jack loves Jill.

1.

y

.

z

.loves(y,z)Premise2.∀x.∀y.(∃z.loves(y,z) ⇒ loves(x,y)) Premise

3.

z

.

loves

(

jill

,

z

)

UE: 1

4.

y

.(

z

.

loves

(

y,z) ⇒ loves(jack,y))

UE: 2

5.∃z.loves(jill,z

)

loves

(

jack

,

jill

)

UE: 4

6.

loves

(

jack

,

jill

)

IE: 5, 3

ProofSlide33

General Lovers

Everybody loves somebody. Everybody loves a lover. Show that everybody loves everybody.

Premises:

y

.

∃z.loves(y,z) ∀x.∀y.(∃z.loves(y,z) ⇒ loves(x,y))Conclusion: ∀x.∀y.loves(x,y)General LoversSlide34

Everybody loves somebody. Everybody loves a lover. Show that everybody loves evrrybody.

1.

y

.

z

.loves(y,z)Premise2.∀x.∀y.(∃z.loves(y,z) ⇒ loves(x,y)) Premise

3.

z

.

loves

(

y

,

z

)

UE: 1

4.

y

.(

z

.

loves

(

y,z) ⇒ loves(x,y))

UE: 2

5.∃z.loves(y,z

)

loves

(

x

,

y

)

UE: 4

6.

loves

(

x

,

y

)

IE: 5, 3

7.

y

.

loves

(

x

,

y

)

UI: 6

8.

x

.

y

.

loves

(

x

,

y

)

UI: 7

ProofSlide35

Example - Harry and RalphSlide36

Harry and Ralph

Every horse can outrun every dog. Some greyhounds can outrun every rabbit. Harry is a horse. Ralph is a rabbit. Prove that Harry can outrun Ralph.

Harry and RalphSlide37

Harry and Ralph

Every horse can outrun every dog. Some greyhounds can outrun every rabbit. Harry is a horse. Ralph is a rabbit. Prove that Harry can outrun Ralph.

Premises:

x

.

∀y.(h(x) ∧ d(x) ⇒ f(x,y)) ∃y.(g(y) ∧ ∀z.(r(z) ⇒ f(y,z))) ∀x.(g(x) ⇒ d(x)) ∀x.∀y.∀z.(f(y,z

) ∧ f(y,z)

f

(

x

,

z

))

h

(

harry

)

r

(

ralph

)

Conclusion:

f(harry,ralph)Harry and RalphSlide38

Harry and Ralph

Every horse can outrun every dog. Some greyhound can outrun every rabbit. Harry is a horse. Ralph is a rabbit. Prove that Harry can outrun Ralph.

1.

x

.

y.(h(x) ∧ d(x) ⇒ f(x,y))Premise2.∃y.(g(y) ∧ ∀z.(r(z) ⇒ f(

y,z)))

Premise

3.

x

.(

g

(

x

)

d

(

x

))

Premise

4.

x

.

y.∀z.(f(y,z) ∧ f(y,z) ⇒ f(x

,

z

))

Premise

5.

h

(

harry

)

Premise

6.

r

(

ralph

)

Premise

Harry and RalphSlide39

Harry and Ralph (continued)

7.

g

(

[

c

]

) ∧ ∀z.(r(z) ⇒ f([c],z))EE: 2 8.g([c])AE: 7

9.

z

.(

r

(

z

)

f

(

[

c

]

,

z

))

AE: 7

Harry and Ralph (continued)Slide40

7.

g

([c])

z

.(r(z) ⇒ f([c],z))EE: 28.g([c])AE: 79.

z

.(

r

(

z

)

f

(

[

c

]

,

z

))

AE: 7

10.

r

(ralph)

f([c],ralph)UE: 911.

f

(

[

c

]

,

ralph

)

IE: 10, 6

Harry and Ralph (continued)Slide41

7.

g

([c])

z

.(r(z) ⇒ f([c],z))EE: 28.g([c])AE: 79.

z

.(

r

(

z

)

f

(

[

c

]

,

z

))

AE: 7

10.

r

(ralph)

f([c],ralph)UE: 911.

f

(

[

c

]

,

ralph

)

IE: 10, 6

12.

g

(

[

c

]

)

d

(

[

c

]

)

UE: 3

13.

d

(

[

c

]

)

IE: 12, 8

Harry and Ralph (continued)Slide42

7.

g

([c])

z

.(r(z) ⇒ f([c],z))EE: 28.g([c])AE: 79.

z

.(

r

(

z

)

f

(

[

c

]

,

z

))

AE: 7

10.

r

(ralph)

f([c],ralph)UE: 911.

f

(

[

c

]

,

ralph

)

IE: 10, 6

12.

g

(

[

c

]

)

d

(

[

c

]

)

UE: 3

13.

d

(

[

c

]

)

IE: 12, 8

14.

y

.(

h

(

harry

)

d

(

[

c

]

)

f

(

harry,

[

c

]

))

UE: 1

15.

h

(

harry

)

d

(

[

c

]

)

f

(

harry

,

[

c

]

)

UE: 14

16.

h

(

harry) ∧ d([c])AI: 5, 1317.f(harry,[c])IE: 15, 16

Harry and Ralph (continued)Slide43

18.

y.

z

.(

f

(harry,y) ∧ f(y,z) ⇒ f(harry,z))UI: 419.∀z.(f(harry,[c]) ∧ f([c],z) ⇒ f(harry

,z))

UI: 18

20.

f

(

harry

,

[

c

]

)

f

(

[

c

]

,

z

) ⇒ f(harry,z)

UI: 19

Harry and Ralph (continued)Slide44

18.

y.

z

.(

f

(harry,y) ∧ f(y,z) ⇒ f(harry,z))UI: 419.∀z.(f(harry,[c]) ∧ f([c],z) ⇒ f(harry

,z))

UI: 18

20.

f

(

harry

,

[

c

]

)

f

(

[

c

]

,

z

) ⇒ f(harry,z)

UI: 19

21.f(harry,[c]

)

f

(

[

c

]

,ralph

)

AI: 17, 11

22.

f

(

harry

,

ralph

)

IE: 20, 21

Harry and Ralph (continued)Slide45

Soundness and CompletenessSlide46

A set of premises

Δ

logically entails a conclusion ϕ (Δ |= ϕ) if and only if every interpretation that satisfies

Δ

also satisfies

ϕ

.

If there exists a proof of a sentence φ from a set Δ of premises using the rules of inference in R, we say that φ is provable from Δ using R (written Δ ⊢R φ).Logical Entailment and Provability CompletenessSlide47

A proof system is

sound

if and only if every provable conclusion is logically entailed.If Δ ⊢ φ, then Δ ⊨ φ.

A proof system is

complete

if and only if every logical conclusion is provable.

If Δ ⊨ φ, then Δ ⊢ φ.

Soundness and CompletenessSlide48

Theorem: Fitch is sound and complete for

Relational

Logic.

Δ

|=

ϕ

if and only if

Δ ⊢Fitch φ.Upshot: The truth table method and the proof method succeed in exactly the same cases!FitchSlide49