Sep 15, 2003 ------------- - Theme thus far - problem solving by searching - assumes no knowledge - Typically - search compensates for lack of knowledge - knowledge compensates for lack of search - Knowledge representation and reasoning - Given KB (facts), try to derive conclusions (more facts) - General theme - boxy diagram from AIMA - notions of "sentences", "entails", "follows", and "real world stuff" - Three main steps - choose a representation - setup an interpretation - select an inference procedure - Choosing the representation - primarily an issue of syntax - choose symbols, operators - Setting up an interpretation - what it means - "semantics" - defines the truth of every possible sentence in every possible world - "Possible worlds" are also called - "models" - we say: - Sentence s is true in model m, or - m is a model of s - How to think of models - e.g., as rows of the truth table (in propositional logic) - Infernece procedures - have a notion of "entailment" - A entails B iff - for every model in which A is true B is also true - i.e., models of A are also models of B - Just because A entails B, - doesn't mean you can actually derive B from A - How *do* we prove that A entails B - model-checking: enumerate all rows of the truth table - and verify that the models match up - time consuming - but actually how some difficult proofs were made - Model checking - should be exhaustive - story of freshman proving (x+y)^2 = (x^2 + 2xy + y^2) - Inference algorithm - derives new sentences from old sentences - Classifications of inference procedures - Suppose A derives B. Then A entails B. => Sound - Suppose A entails B. Then A derives B. => Complete - Example of sound and incomplete procedure - GSAT - Example of unsound and complete procedure - mathematical howlers (not fallacies) - Many types of logic - propositional logic - first order predicate logic - fuzzy logic - modal logic - non-monotonic logic - commonsense - Example logic: propositional logic - symbols, connectives, and semantics - AND, OR, NOT, ->, and <-> - Implication, e.g., X->Y - leads to strange sentences, but remember they are only sentences (may not be true in all models)