11/7 Are there irrational numbers p and q such that p q is a rational number? Hint: Suppose p=q= Rational Irrational Why is the set that is the set of.
Published byModified over 2 years ago
Presentation on theme: "11/7 Are there irrational numbers p and q such that p q is a rational number? Hint: Suppose p=q= Rational Irrational Why is the set that is the set of."— Presentation transcript:
11/7 Are there irrational numbers p and q such that p q is a rational number? Hint: Suppose p=q= Rational Irrational Why is the set that is the set of all sets jumping up and down excitedly?..it couldn’t contain itself
GMP can be used in the “forward” (aka “bottom-up”) fashion where we start from antecedents, and assert the consequent or in the “backward” (aka “top-down”) fashion where we start from consequent, and subgoal on proving the antecedents.
Apt-pet An apartment pet is a pet that is small Dog is a pet Cat is a pet Elephant is a pet Dogs, cats and skunks are small. Fido is a dog Louie is a skunk Garfield is a cat Clyde is an elephant Is there an apartment pet?
Efficiency can be improved by re-ordering subgoals adaptively e.g., try to prove Pet before Small in Lilliput Island; and Small before Pet in pet-store.
Forward (bottom-up) vs. Backward (top-down) chaining Forward chaining fires rules starting from facts –Using P, derive Q –Using Q & R, derive S – Using S, derive Z – Using Z, Q, derive W –Using Q, derive J –No more inferences. Check if J holds. It does. So proved Backward chaining starts from the theorem to be proved –We want to prove J. –Using Q=>J, we can subgoal on Q –Using P=>Q, we can subgoal on P –P holds. We are done. Suppose we have P => Q Q & R =>S S => Z Z & Q => W Q => J P R We want to prove J Forward chaining allows parallel derivation of many facts together; but it may derive facts that are not relevant for the theorem. Backward chaining concentrates on proving subgoals that are relevant to the theorem. However, it proves theorems one at a time. Some similarity with progression vs. regression…
Datalog and Deductive Databases A deductive database is a generalization of relational database, where in addition to the relational store, we also have a set of “rules”. –The rules are in definite clause form (universally quantified implications, with one non-negated head, and a conjunction of non-negated tails) When a query is asked, the answers are retrieved both from the relational store, and by deriving new facts using the rules. The inference in deductive databases thus involves using GMP rule. Since deductive databases have to derived all answers for a query, top-down evaluation winds up being too inefficient. So, bottom-up (forward chaining) evaluation is used (which tends to derive non-relevant facts A neat idea called magic-sets allows us to temporarily change the rules (given a specific query), such that forward chaining on the modified rules will avoid deriving some of the irrelevant facts. Base facts P(a,b),Q(b) R(c).. Rules P(x,y),Q(y)=>R(y) ?R(z) RDBMS R(c); R(b).. Connection to Progression becoming goal directed w.r.t. P.G. reachability heuristics
Similar to “Integer Programming” or “Constraint Programming”
Generate compilable matchers for each pattern, and use them
Example of FOPC Resolution.. Everyone is loved by someone If x loves y, x will give a valentine card to y Will anyone give Rao a valentine card? y/z;x/Rao ~loves(z,Rao) z/SK(rao);x’/rao
Finding where you left your key.. Atkey(Home) V Atkey(Office) 1 Where is the key? Ex Atkey(x) Negate Forall x ~Atkey(x) CNF ~Atkey(x) 2 Resolve 2 and 1 with x/home You get Atkey(office) 3 Resolve 3 and 2 with x/office You get empty clause So resolution refutation “found” that there does exist a place where the key is… Where is it? what is x bound to? x is bound to office once and home once. so x is either home or office
Existential proofs.. The previous example shows that resolution refutation is powerful enough to model existential proofs. In contrast, generalized modus ponens is only able to model constructive proofs.. (We also discussed a cute example of existential proof—is it possible for an irrational number power another irrational number to be a rational number—we proved it is possible, without actually giving an example).
11/9 The absence of evidence is not the evidence of absence...Simply because you do not have evidence that something does exist does not mean that you have evidence that it doesn't exist. Death has a tendency to encourage a depressing view of war There are known knowns. These are things we know that we know. There are known unknowns. That is to say, there are things that we know we don't know. But there are also unknown unknowns. There are things we don't know we don't know.
GMP vs. Resolution Refutation While resolution refutation is a complete inference for FOPC, it is computationally semi-decidable, which is a far cry from polynomial property of GMP inferences. So, most common uses of FOPC involve doing GMP-style reasoning rather than the full theorem-proving.. There is a controversy in the community as to whether the right way to handle the computational complexity is to – a. Develop “tractable subclasses” of languages and require the expert to write all their knowlede in the procrustean beds of those sub-classes (so we can claim “complete and tractable inference” for that class) OR –Let users write their knowledge in the fully expressive FOPC, but just do incomplete (but sound) inference. –See Doyle & Patil’s “Two Theses of Knowledge Representation”
Situational Calculus: Time & Change in FOPC SitCalc is a special class of FOPC with –Special terms called “situations” Situations can be thought of as referring to snapshots of the universe at various times –Special terms called “actions” Putdown(A); stack(B,x) etc (A,B constants) –Special function called Result which returns a situation Result(action-term,situation-term) Result(putdown(a),S) World properties can be modeled as predicates (with an extra situational argument; or as fluents to a special predicate called Holds Clear(B,S 0 ) [or Holds(clear(B), S 0 ); this is called reified version where “clear(B)” is now a fluent] Actions are modeled in terms of what needs to be true in the situation where the action takes place, and what will be true in the situation that results
..So, is Planning=Theorem Proving?..yes, BUT –Consider the previous problem, except you now have another block B which is already on table and is clear. Your goal is to get A onto table while leaving B clear. –Sounds like a no-brainer, right? –..but the theorem prover won’t budge It has no axiom telling it that B will remain clear in the situation Result(Putdown(A),S 0 ) Big deal.. We will throw in an axiom saying that Clear(x) continues to hold in the situation after Putdown(A) –But WAIT. We are now writing axioms about properties that DO NOT CHANGE There may be too many axioms like this If there are K properties and M actions, we need K*M frame axioms …AND we have to resolve against them –Increasing the depth of the proof (and thus exponentially increasing the complexity..) There are ways to reduce the number of frame axioms from K*M to just K (write, for each property P, the only conditions under which it transitions from True to False between situations) –Called Successor State Axioms But we still have to explicitly prove to ourselves that everything that has not changed has actually not changed –..unless we make additional assumptions E.g. STRIPS assumption…which we made –If a property has not been mentioned in an action’s effects, it is assumed that it remains the same
Temporal (Sequential) Process A temporal process is the evolution of system state over time Often the system state is hidden, and we need to reconstruct the state from the observations Relation to Planning: –When you are observing a temporal process, you are observing the execution trace of someone else’s plan…