• Documents
  • Authors
  • Tables
  • Other Seers ▼
    RefSeer AckSeer CollabSeer SeerSeer
  • Log in
  • Sign up
  • MetaCart

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

Proof Weaving

Cached

  • Download as a PDF

Download Links

  • [www.cs.wisc.edu]
  • [www.cis.upenn.edu]

  • Save to List
  • Add to Collection
  • Correct Errors
  • Monitor Changes
by Anne Mulhern
Citations:2 - 1 self
  • Summary
  • Active Bibliography
  • Co-citation
  • Clustered Documents
  • Version History

BibTeX

@MISC{Mulhern_proofweaving,
    author = {Anne Mulhern},
    title = {Proof Weaving},
    year = {}
}

Bookmark

citeulike Connotea Bibsonomy Del.icio.us Digg Reddit

OpenURL

 

Abstract

Automated proof assistants provide few facilities for incremental development. Generally, if the underlying structures on which a proof is based are modified, the developer must redo much of the proof. Yet incremental development is really the most natural approach for proofs of programming language properties [5, 12]. We propose “proof weaving”, a technique that allows a proof developer to combine small proofs into larger ones by merging proof objects. We automate much of the merging process and thus ease incremental proof development for programming language properties. To make the discussion concrete we take as an example the problem of proving typesoundness by proving progress and preservation [17] in Coq [3, 7]. However we believe that the methods can be generalized to other proof assistants which generate proof objects, and most directly to those proof assistants which exploit the Curry-Howard isomorphism in representing proof terms as λ-terms [16], e.g. Isabelle and Minlog. We rely on the proof developer to initially prove type-soundness for “tiny ” languages. Each of these languages encapsulates a single well-defined programming feature. For example, a tiny language of booleans can be restricted to the terms True, False, and If and their

Citations

579 Types and Programming Languages - Pierce - 2002
490 A syntactic approach to type soundness - Wright, Felleisen - 1994
340 Interactive theorem proving and program development. Coq’Art: The calculus of inductive constructions - Bertot, Castéran - 2004
110 Mechanized metatheory for the masses: the POPLMark Challenge - Aydemir, Bohannon, et al. - 2005
30 Foundations of Object-Oriented Languages: Types and Semantics - Bruce - 2002
15 Tinkertype: A language for playing with formal systems - Levin, Pierce - 2003
13 The seventeen provers of the world - Wiedijk, editor - 2006
12 Generalization and Reuse of Tactic Proofs - Felty, Howe - 1994
9 Type isomorphisms and proof reuse in dependent type theory - Barthe, Pons - 2001
8 Theorem reuse by proof term transformation - Johnsen, Lüth
8 A pragmatic approach to reuse in tactical theorem proving - Schairer, Autexier, et al.
4 A logical framework for software proof reuse - Caplan, Harandi - 1995
4 Developing reuse technology in proof engineering - Luo - 1995
3 Proof generalization and proof reuse - Pons - 2000
2 Proof reuse with extended inductive types - Boite
The National Science Foundation
  • About CiteSeerX
  • Submit Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2010 The Pennsylvania State University