1 / 12

Automated Proof Generation for EG

Automated Proof Generation for EG. Bram van Heuveln Spring 2003 AI & Reasoning Lab, RPI. Automated Proof Generation. Automated Proof Generation (APG) tries to come with routines that systematically generate formal derivations (formal proofs).

vesta
Download Presentation

Automated Proof Generation for EG

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Automated Proof Generation for EG Bram van Heuveln Spring 2003 AI & Reasoning Lab, RPI

  2. Automated Proof Generation • Automated Proof Generation (APG) tries to come with routines that systematically generate formal derivations (formal proofs). • APG is a subdivision of ATP, in that in ATP one is not restricted to formal proofs to decide whether something does or does not follow. That is, Proof Generation is one way to do Theorem Proving, but there are other ways as well, such as truth-tables, truth-trees, Davis-Putnam, etc.

  3. APG for EG • I will present an APG routine that systematically derives a conclusion from a set of premises in the EG system, assuming that the conclusion is logically entailed by the premises. • If the conclusion does not follow from the premises, then the procedure produces counterexamples. • Like most ATP routines, this APG routine is based on a consistency checking mechanism, and adds a few routines to make that into a formal proof. • First, we need to define the notion of a satisfaction graph (or model graph).

  4. Satisfaction Graph • A model is a list of literals where for each literal in the list, its complement is not in the list. • A satisfaction graph is a graph of the following form: M1  Mn for n = 1: M for n = 0:

  5. Routine for Transforming any Graph into a Satisfaction Graph graph Transform(G) // when applicable, remove DC’s and duplicates begin if G = or return G; L  return Paste(L, Transform(L); if G = return if G = 1  n  ) Transform( 1  Transform( n  )  end

  6. Paste Routine graph Paste(L, G) //L is a literal, G is a satisfaction graph begin if G = return if G = M return L M if G = M1  Mn return L M1  L Mn end

  7. The Trans Routine and Model Graphs • Basically, for any graph G, the Transform routine (Trans) transforms G into satisfaction graph S, where S is a DNF equivalent to G. • The Trans routine also makes sure that all disjuncts (which are conjunctions of literals) are consistent. • Hence, S represents various truth-value assignments (models) that can be used to satisfy G. • If G is unsatisfiable, then there are no models for G, and hence S will be a disjunction of 0 disjuncts, i.e. the empty cut. • Example on next slide.

  8. U W Trans( U V W V ) = W U Trans( U V W U W W U V ) = V Trans( U W U ) Trans( W W U ) = V U W U W = U V W U V W

  9. Final Routine for APG in EG • Given any graphs  and , if  |= , the following routine systematically transforms  into , using the inference rules from EG: Trans         DC DC IT(2x) E        IN DC

  10. Why the Routine Works • The routine works because: • 1. The Trans routine finds all models that satisfy G. So, if  |= , then the graph for  and ~  will be unsatisfiable, and hence the Trans routine will output an empty cut. • 2. The Trans(form) and Paste routines can be simulated by following EG rules. That is, reducing a graph with regard to some literal amounts to deiteration, and pasting a literal back to possible models amounts to iteration, and other than that you use Double Cut rules. • It is interesting to note that the Trans routine follows very much the same path as the EGTT satisfiability routine (illustrated on next 2 slides).

  11. X Y X Y Sat( ) = X Y X Y X X X Y Y X Y Sat( ) | | Sat( ) = X Y X Y X Y X Y = Sat( Y Y ) | | Sat( X X ) ) Sat( | | Sat( ) = False | | False = False

  12. X Y X Y ) = Trans( X Y X Y X X X Y Y X Y Trans( ) Trans( ) = X Y X Y X Y X Y = X X Trans( Y Y ) Y Trans( X X ) =

More Related