Download PDFOpen PDF in browser

Abstractions Before Proofs

1 pagesPublished: May 15, 2012

Abstract

Proving that programs satisfy their specifications can benefit enormously from tool support but theorem proving tools can also constrain a user's thinking. This talk argues that, for large or complex programs, it is layers of abstraction that make or break the comprehensibility of developments.

However powerful a theorem proving tool is, it will make little long-term contribution to the understanding of programs if the user is forced to bend their steps of development to fit the tool. Abstraction is essential to achieve separation of issues and to help in the understanding of complex systems. The formalism chosen governs the difficulty of completing detailed proofs that can be verified with mechanically checkable rules.

This talk will emphasize abstractions and techniques for reasoning about the development of concurrent programs. In conclusion, the argument will turn to positive recommendations for tool developers.

In: Markus Aderhold, Serge Autexier and Heiko Mantel (editors). VERIFY-2010. 6th International Verification Workshop, vol 3, pages 2.

BibTeX entry
@inproceedings{VERIFY-2010:Abstractions_Before_Proofs,
  author    = {Cliff Jones},
  title     = {Abstractions Before Proofs},
  booktitle = {VERIFY-2010. 6th International Verification Workshop},
  editor    = {Markus Aderhold and Serge Autexier and Heiko Mantel},
  series    = {EPiC Series in Computing},
  volume    = {3},
  publisher = {EasyChair},
  bibsource = {EasyChair, https://easychair.org},
  issn      = {2398-7340},
  url       = {/publications/paper/kN3},
  doi       = {10.29007/v7vx},
  pages     = {2},
  year      = {2012}}
Download PDFOpen PDF in browser