hyper resolution automated reasoning
play

Hyper-Resolution AUTOMATED REASONING Hyper-resolution generalises - PowerPoint PPT Presentation

8ai Hyper-Resolution AUTOMATED REASONING Hyper-resolution generalises ``bottom- (electron) up reasoning and combines several Px Qx Rx Qa C SLIDES 8: resolution steps into one big step. (nucleus) Hyper-resolution is the


  1. 8ai Hyper-Resolution AUTOMATED REASONING Hyper-resolution generalises ``bottom- (electron) up’’ reasoning and combines several ¬Px ∨ ¬Qx ∨ Rx Qa ∨ C SLIDES 8: resolution steps into one big step. (nucleus) Hyper-resolution is the strategy employed HYPER-RESOLUTION in the widely used Otter family of provers. Hyper-resolution Refinement ¬Pa ∨ Ra ∨ C (electron) The Otter Theorem Prover Pa ∨ D (intermediate Negative Hyper-resolution Hyper-resolution Strategy: resolvent discarded) Clauses are divided into nucleii (those with ≥ 1 negative literals), electrons (those with no negative literals). KB - AR - 13 Ra ∨ C ∨ D Resolution occurs between 1 or more (hyper-resolvent electrons and 1 nucleus. There is 1 electron another electron) clause used for each negative literal in the A hyper-resolution step nucleus. 8aii Hyper-Resolution Example (ppt) (M(x,y,z) means z=x ∗ y) 8aiii The derivation as a tree .... (N)1. M(x,y,z) ∨ ¬M(y,x,z) Commutativity of times (x ∗ y=z if y+x=z) (E)2. M(x,x,s(x)) x_squared=x ∗ x Note: only electrons are formed as ¬P(x) ∨ ¬D(x,u) ∨ ¬M(y,z,u) ∨ D(x,,y) ∨ D(x,z) (N)3. D(x,y) ∨ ¬M(x,z,y) y=x ∗ z → x divides y final resolvents. In this refutation they (N)4. ¬P(x) ∨ ¬D(x,u) ∨ ¬M(y,z,u) ∨ D(x,y) ∨ D(x,z) happen to be facts, but need not be. M(x,x,s(x)) P(a) (See clause 12 on 8aii.) ( x is prime ∧ x divides u ∧ u=y*z → x divides y ∨ x divides z) D(x,y) ∨ ¬M(x,z,y) (E)5. M(a,s(c),s(b)) (E)6. P(a) (N)7. ¬D(a,b) Tautologies can initially be deleted; they are never derived - WHY? Goal is to show: M(a,s(c),s(b)) ∀ x[x is prime ∧ b_squared=x ∗ c_squared → x divides b] ≡ Nucleii: 1,3,4,7; Although nucleii are never derived, (when negated) ¬ ∀ x[P(x) ∧ M(x,s(c),s(b)) → D(x,b)] Electrons: 2,5,6 D(a,s(b)) given nucleii may be deleted through (which Skolemises to) P(a), M(a,s(c),s(b)), ¬D(a,b) (a is Skolem constant) subsumption by derived electrons. ¬D(a,b) D(a,b) ∨ D(a,b)==>D(a,b) 8. (1,5) M(s(c),a,s(b)) 9. (2,3) D(x,s(x)) 10. (3,5) D(a,s(b)) Safe-factoring of Nucleii can be made ((1+2) gives M(u,u,s(u)) which is subsumed by 2 initially. Electrons can be factored [ ] whenever they are formed. 11. (8,3) D(s(c),s(b)) 12. (4,6,8,10) D(a,s(c)) ∨ D(a,a) 13. (4,6,9,2) D(a,a) ∨ D(a,a) factors to D(a,a) and subsumes 12 Questions : Is the factor of a nucleus still a nucleus? 14. (4,6,10,2) D(a,b) ∨ D(a,b) factors to D(a,b) Is it useful to factor nucleii (other than safe-factoring)? 15. (14,7) [] Exercise : Show that, if a tautology is derived part way into forming a new electron, the final electron will be subsumed.

  2. 8av Hyper-Resolution: Properties of Hyper-Resolution 8aiv Hyper-resolution forms the basis of a family of theorem provers originally from Argonne. Hyper-resolution is Complete: OTTER (which you'll use in the lab) was the first, and is best for beginners; its most recent An inductive proof is considered in the problem sheets so is not given here. descendant is called Prover9. In hyper-resolution each ''step'' is actually one or more Hyper-resolution can be combined with both predicate ordering and locking: resolution steps, made according to a simple syntactic principle: only (final) resolvents with positive literals (called electrons ) are allowed to be derived. To form them, a clause with one or more negative literals (called a nucleus ) is sequentially resolved with electrons, each time Predicate ordering : removing 1 negative literal, until an electron is produced. If the nucleus has 5 negative literals Only need to use ordering in electrons (Why?) there would be 5 intermediate steps. Note that a particular electron may be used in more than Only resolve on minimal atoms from an electron. 1 intermediate step, but for each use a fresh copy is taken. As each hyper-resolution step is eg if R<Q<P then from P(a,x) ∨ Q(x,y) can only use Q(x,y) generally more than one resolution step there are fewer possible steps overall, so the search space is reduced (compared with that for binary resolution). Locking : Initially, the clauses are divided into nucleii and electrons. If the clauses in S are unsatisfiable Lock negative literals lowest of all literals to force their use then there will always be at least one nucleus and at least one electron – why must this be so Locks on positive literals in electrons and nucleii must be > than any negative lock if S are unsatisfiable? eg Given ¬P(a) ∨ ¬Q(x) ∨ R(x) 5, P(a), Q(b) 4 ∨ Q(c) 7 can derive R(b) 5 ∨ Q(c) 7 Generally, a saturation search process can be applied, whereby each nucleus is used to find all Notice that intermediate nucleii can only be used to derive electrons. They cannot hyper-resolvents from the current electrons. At the end of all the processing, and after resolve with each other as the lowest locked literals in two nucleii are both negative. applying subsumption, if there is at least one new electron then the process is repeated. If all positive literals are locked at 1, and all negative literals are locked at 0, then [By the way, the answer to the question above is that if all clauses are electrons, then they locking effectively simulates hyper-resolution. have a model - just assign T to all atoms. If no clause is an electron, then again the given Exercise: Justify the above statement. clauses have a model - assign F to all atoms. For an unsatisfiable set of clauses S neither can happen, so S must contain at least one each of an electron and nucleus. ] Set of Support Strategy 8bi Set of Support Strategy (2) • For a given problem the clauses are divided into two sets, the SOS (set-of- 8bii support) and the rest. • Resolvents may be formed only if at least one clause contributing to the Why is the Set of Support strategy a good one? resolution step is from the SOS, or is derived from such a clause (i.e. it has an SOS clause as an ancestor). • The clauses not in SOS are often satisfiable. e.g. the clauses in a Horn clause program could be the complement of the SOS. Resolving between the satisfiable As a consequence, note that non-SOS clauses may give interesting results, but not results that are useful for two clauses not initially in the problem in hand. √ √ √ √ SOS will never be resolved with each other. Why? (Hint: The aim is to derive a contradiction) • Often, some clauses are known to be required for contradiction and they are Therefore, if C and D are initial put into the SOS. clauses and C is to be resolved In SOS or √ √ √ √ with D, then at least one of them derived from The Set of Support strategy is used by Otter and combined with hyper-resolution must be in SOS. SOS Questions: Such clauses behave a little like (1) What happens in this strategy if SOS is initially empty? the nucleii in Hyper-resolution. (2) Prolog uses the SOS strategy. What is its SOS? Not in SOS and x not derived from SOS

Recommend


More recommend