Chapter 2 Flashcards
Thinking
Can be understood as drawing conclusions from a large collection of sentences called a knowledge base (KB)
Sentences
Uninterpreted symbolic structures
Symbolic manipulation
Computational procedure that involves the manipulation of symbolic structures (sentences) representing propositions.
Back-chaining
One example of symbolic manipulation
Knowledge base
Collection of sentences
Atomic sentences
Simple basic sentences
Conditional sentences
Sentences of the form : if P1 and …. and Pn then Q, where Pi and Q are atomic sentences
What do atomic and conditional sentences contain?
Variables, constants and special keywords (such as “if”, “and”, “then”..)
Logical entailment concept
A sentence cannot not be true if all sentences in the knowledge base are true.
Steps to check for logical entailment:
- Try to locate Q itself in the KB. If you can, return success.
- Otherwise, try to locate a conditional sentence of the form: if P1 and … and Pn, then Q, in the KB. If you cannot, return fail.
- Otherwise, use back-chaining to try to establish P1 and P2 and … Pn. If these are all successful, then return success.
- Otherwise, go back to step 2 and look for another conditional.
Back-chaining
Receives an atomic sentence (the query) as input and its job is to determine if the query is logically entailed by the KB
Even if a query Q can be successfully established, will it be added to the KB?
No, because back-chaining always leaves the KB unchanged
Think of an example of a sentence in a KB that includes variables.
If X is a child of Y, then Y is a parent of X.
Tracing
Simulation fo the execution of the back-chaining procedure
In Prolog, is it important to know what the symbols mean?
No, it isn’t.