slide 1 logic: domain modeling /proofs + top-down proofs jim little ubc cs 322 – csp october 22,...
TRANSCRIPT
![Page 1: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/1.jpg)
Slide 1
Logic: Domain Modeling /Proofs +
Top-Down ProofsJim Little
UBC CS 322 – CSP October 22, 2014
![Page 2: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/2.jpg)
Slide 2
Lecture Overview
• Recap• Using Logic to Model a Domain
(Electrical System)• Reasoning/Proofs (in the
Electrical Domain)• Top-Down Proof Procedure
![Page 3: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/3.jpg)
Slide 3
Soundness & completeness of proof procedures
• A proof procedure X is sound …
• A proof procedure X is complete….
• BottomUp for PDCL is sound and complete.
• We proved this in general even for domains represented by thousands of propositions and corresponding KB with millions of definite clauses !
(KB ⊦P g) → (KB ⊧ g)
(KB ⊧ g) ← (KB ⊦P g)
![Page 4: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/4.jpg)
Slide 4
Lecture Overview
• Recap• Using PDCL Logic to Model a
Domain (Electrical System)• Reasoning/Proofs (in the
Electrical Domain)• Top-Down Proof Procedure
![Page 5: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/5.jpg)
Slide 5
Electrical Environment
/ up
/down
![Page 6: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/6.jpg)
Slide 6
Let’s define relevant propositions
/ up
/down
• For each wire w • For each circuit breaker cb• For each switch s• For each light l• For each outlet p
• 7 • 2• 3 x 2• 2• 2
How many interpretations?
![Page 7: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/7.jpg)
Slide 7
Let’s now tell system knowledge about how the
domain works
/ up
/down
live_l1 ←live_w0 ← live_w0 ←live_w1 ←
live_w_0live_w_1 up_s_2.∧live_w_2 down_s_2.∧live_w_3 up_s_1.∧
![Page 8: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/8.jpg)
Slide 8
More on how the domain works….
/ up
/down
live_w2 ← live_w3 ∧ down_s1.live_l2 ← live_w4.live_w4 ← live_w3 ∧ up_s3.live_p1 ← live_w3..
![Page 9: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/9.jpg)
Slide 9
More on how the domain works….
/ up
/down
live_w3 ← live_w5 ∧ ok_cb1.live_p2 ← live_w6.live_w6 ← live_w5 ∧ ok_cb2.live_w5 ← live_outside.
![Page 10: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/10.jpg)
Slide 10
What else we may know about this domain?
• That some simple propositions are true
/ up
/down
![Page 11: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/11.jpg)
Slide 11
What else we may know about this domain?
• That some additional simple propositions are true
down_s1. up_s2. up_s3. ok_cb1. ok_cb2. live_outside.
/ up
/down
![Page 12: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/12.jpg)
Slide 12
All our knowledge…..
down_s1. up_s2. up_s3. ok_cb1. ok_cb2. live_outside
/ up
/down
live_l1 ← live_w0 live_w0 ← live_w1 ∧ up_s2.live_w0 ← live_w2 ∧ down_s2.live_w1 ← live_w3 ∧ up_s1.live_w2 ← live_w3 ∧ down_s1.live_l2 ← live_w4.live_w4 ← live_w3 ∧ up_s3.live_p1 ← live_w3.live_w3 ← live_w5 ∧ ok_cb1.live_p2 ← live_w6.live_w6 ← live_w5 ∧ ok_cb2.live_w5 ← live_outside.
![Page 13: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/13.jpg)
Slide 13
Lecture Overview
• Recap• Using Logic to Model a Domain
(Electrical System)• Reasoning/Proofs (in the
Electrical Domain)• Top-Down Proof Procedure
![Page 14: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/14.jpg)
Slide 14
What Semantics is telling us
• Our KB (all we know about this domain) is going to be true only in a subset of all possible 2^19 interpretations
• What is logically entailed by our KB are all the propositions that are true in all those models
• This is what we should be able to derive given a sound and complete proof procedure
![Page 15: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/15.jpg)
Slide 15
If we apply the bottom-up (BU) proof proceduredown_s1.
up_s2. up_s3. ok_cb1. ok_cb2. live_outside
live_l1 ← live_w0 live_w0 ← live_w1 ∧ up_s2.live_w0 ← live_w2 ∧ down_s2.live_w1 ← live_w3 ∧ up_s1.live_w2 ← live_w3 ∧
down_s1. live_l2 ← live_w4.live_w4 ← live_w3 ∧ up_s3.live_p1 ← live_w3..live_w3 ← live_w5 ∧ ok_cb1.live_p2 ← live_w6.live_w6 ← live_w5 ∧ ok_cb2.live_w5 ← live_outside.
Green are in C
![Page 16: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/16.jpg)
Slide 16
Lecture Overview
• Recap• Using Logic to Model a Domain
(Electrical System)• Reasoning/Proofs (in the
Electrical Domain)• Top-Down Proof Procedure
![Page 17: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/17.jpg)
Bottom-up vs. Top-down
KB
G is proved if G C
When does BU look at the query G ?
Bottom-up
D. Only at the beginning
A. In every loop iteration B. Never
C. Only at the end
C
Slide 17
![Page 18: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/18.jpg)
Bottom-up vs. Top-down
• Key Idea of top-down: search backward from a query G to determine if it can be derived from KB.
KB C
G is proved if G C
When does BU look at the query G?
• At the end
Bottom-up Top-down
TD performs a backward search starting at G
KB answer
Query G
Slide 18
![Page 19: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/19.jpg)
Slide 19
Top-down Ground Proof Procedure
Key Idea: search backward from a query G to determine if it can be derived from KB.
![Page 20: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/20.jpg)
Slide 20
Top-down Proof Procedure: Basic elements
Notation: An answer clause is of the form: yes ← a1 ∧ a2 ∧ … ∧ am
Rule of inference (called SLD Resolution)Given an answer clause of the form:
yes ← a1 ∧ a2 ∧ … ∧ am
and the clause: ai ← b1 ∧ b2 ∧ … ∧ bp
You can generate the answer clauseyes ← a1 ∧ … ∧ ai-1 ∧ b1 ∧ b2 ∧ … ∧ bp ∧ ai+1 ∧ … ∧ am
i.e., resolving ai with ai ← b1 ∧ b2 ∧ … ∧ bp
Express query as an answer clause (e.g., query a1 ∧ a2 ∧ … ∧ am ) yes ← a1 ∧ a2 ∧ … ∧ am
![Page 21: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/21.jpg)
Slide 21
Rule of inference: ExamplesRule of inference (called SLD Resolution)Given an answer clause of the form:
yes ← a1 ∧ a2 ∧ … ∧ am
and the KB clause: ai ← b1 ∧ b2 ∧ … ∧ bp
You can generate the answer clauseyes ← a1 ∧ … ∧ ai-1 ∧ b1 ∧ b2 ∧ … ∧ bp ∧ ai+1 ∧ … ∧ am
yes ← b ∧ c. b ← k ∧ f.
yes ← e ∧ f. e.
KB clause
-> yes ← k ∧ f ∧ c.
-> yes ← f.
![Page 22: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/22.jpg)
Slide 22
(successful) Derivations• An answer is an answer clause with m = 0. That is,
it is the answer clause yes ← .
• A (successful) derivation of query “?q1 ∧ … ∧ qk “ from KB is a sequence of answer clauses γ0 , γ1 ,…,γn
such that• γ0 is the answer clause yes ← q1 ∧ … ∧ qk
• γi is obtained by resolving γi-1 with a clause in KB, and
• γn is an answer.• An unsuccessful derivation…..
yes ← .
yes ← a b∧ .
![Page 23: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/23.jpg)
Slide 23
Example: derivationsa ← e ∧ f. a ← b ∧ c. b ← k ∧ f.c ← e. d ← k. e. f ← j ∧ e. f ← c. j ← c.
Query: a (two ways)
a ← b c. a ← e f. ∧ ∧ a ← k f c. a ← f. ∧ ∧ FAIL since a ← c. k cannot be eliminated a ← e.
yes ← .
yes ← a.
yes ← a.
KB
![Page 24: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/24.jpg)
Slide 24
Example: derivationsk ← e. a ← b ∧ c. b ← k ∧ f.
c ← e. d ← k. e. f ← j ∧ e. f ← c. j ← c.
Query: b ∧ e
A. Provable by TD B. It depends
C. Not Provable by TD
KB
![Page 25: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/25.jpg)
Slide 25
Course Big PictureEnvironme
ntProblem
Inference
Planning
Deterministic
Stochastic
SearchArc Consistency
Search
Search Value Iteration
Var. Elimination
Constraint Satisfactio
n
Logics
STRIPS
Belief Nets
Vars + Constraint
s
Decision Nets
Markov Processes
Var. Elimination
Static
Sequential
RepresentationReasoningTechnique
SLS
![Page 26: Slide 1 Logic: Domain Modeling /Proofs + Top-Down Proofs Jim Little UBC CS 322 – CSP October 22, 2014](https://reader036.vdocuments.us/reader036/viewer/2022062314/56649e755503460f94b76773/html5/thumbnails/26.jpg)
Slide 26
Learning Goals for today’s class
You can:
• Model a relatively simple domain with propositional definite clause logic (PDCL)
• Trace query derivation using SLD resolution rule of inference