Adapting Proofs-as-Programs The Curry--Howard Protocol

This book ?nds new things to do with an old idea. The proofs-as-programs paradigm constitutes a set of approaches to developing programs from proofs in constructive logic. It has been over thirty years since the paradigm was ?rst conceived. At that time, there was a belief that proofs-as-programs ha...

Full description

Bibliographic Details
Main Authors: Poernomo, Iman, Crossley, John N. (Author), Wirsing, Martin (Author)
Format: eBook
Language:English
Published: New York, NY Springer New York 2005, 2005
Edition:1st ed. 2005
Series:Monographs in Computer Science
Subjects:
Online Access:
Collection: Springer eBooks 2005- - Collection details see MPG.ReNa
LEADER 03745nmm a2200409 u 4500
001 EB000354430
003 EBX01000000000000000207482
005 00000000000000.0
007 cr|||||||||||||||||||||
008 130626 ||| eng
020 |a 9780387281834 
100 1 |a Poernomo, Iman 
245 0 0 |a Adapting Proofs-as-Programs  |h Elektronische Ressource  |b The Curry--Howard Protocol  |c by Iman Poernomo, John N. Crossley, Martin Wirsing 
250 |a 1st ed. 2005 
260 |a New York, NY  |b Springer New York  |c 2005, 2005 
300 |a XII, 420 p. 54 illus  |b online resource 
505 0 |a Prologue -- Generalizing Proofs-as-Programs -- Functional Program Synthesis -- The Curry-Howard Protocol -- Imperative Proofs-as-Programs -- Intuitionistic Hoare Logic -- Properties of Intuitionistic Hoare Logic -- Proofs-as-Imperative-Programs -- Structured Proofs-as-Programs -- Reasoning about Structured Specifications -- Proof-theoretic Properties of SSL -- Structured Proofs-as-Programs -- Generic Specifications -- Structured Program Synthesis -- Epilogue -- Conclusions: Toward Constructive Logic as a Practical 4GL. 
653 |a Computer Science Logic and Foundations of Programming 
653 |a Models of Computation 
653 |a Software engineering 
653 |a Programming Techniques 
653 |a Computer science 
653 |a Computer programming 
653 |a Mathematical logic 
653 |a Software Engineering 
653 |a Logic design 
653 |a Logic Design 
653 |a Mathematical Logic and Foundations 
700 1 |a Crossley, John N.  |e [author] 
700 1 |a Wirsing, Martin  |e [author] 
041 0 7 |a eng  |2 ISO 639-2 
989 |b Springer  |a Springer eBooks 2005- 
490 0 |a Monographs in Computer Science 
028 5 0 |a 10.1007/0-387-28183-5 
856 4 0 |u https://doi.org/10.1007/0-387-28183-5?nosfx=y  |x Verlag  |3 Volltext 
082 0 |a 004.0151 
520 |a This book ?nds new things to do with an old idea. The proofs-as-programs paradigm constitutes a set of approaches to developing programs from proofs in constructive logic. It has been over thirty years since the paradigm was ?rst conceived. At that time, there was a belief that proofs-as-programs had the - tential for practical application to semi-automated software development. I- tial applications were mostly concerned with ?ne-grain, mathematical program synthesis. For various reasons, research interest in the area eventually tended toward more theoretic issues of constructive logic and type theory. However, in recent years, the situation has become more balanced, and there is increasingly active research in applying constructive techniques to industrial-scale, complex software engineering problems. Thismonographdetailsseveralimportantadvancesinthisdirectionofpr- tical proofs-as-programs. One of the central themes of the book is a general, abstract framework for developing new systems of program synthesis by adapting proofs-as-programs to new contexts. Framework-oriented approaches that facilitate analogous - proaches to building systems for solving particular problems have been popular and successful. Thesemethodsarehelpful asthey providea formal toolbox that enablesa“roll-your-own”approachtodevelopingsolutions.Itishopedthatour framework will have a similar impact. The framework is demonstrated by example. We will give two novel - plications of proofs-as-programs to large-scale, coarse-grain software engine- ing problems: contractual imperative program synthesis and structured p- gram synthesis. These applications constitute an exemplary justi?cation of the framework. Also, in and of themselves, these approaches to synthesis should be interesting forresearchers working in the target problem domains