A set of premises Δ logically entails a conclusion ϕ Δ ϕ if and only if every interpretation that satisfies Δ also satisfies ϕ Propositional Truth Assignments With ID: 695192
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.
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
Example - LoversSlide30
Everybody loves somebody. Everybody loves a lover. Show that Jack loves Jill.
LoversSlide31
Everybody loves somebody. Everybody loves a lover. Show that Jack loves Jill.
Premises:
∀
y
.
∃
z.loves(y,z) ∀x.∀y.(∃z.loves(y,z) ⇒ loves(x,y))Conclusion: loves(jack,jill)LoversSlide32
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