Beschreibung:
This monograph details several important advances in the direction of a practical proofs-as-programs paradigm, which constitutes a set of approaches to developing programs from proofs in constructive logic with applications to industrial-scale, complex software engineering problems. One of the books central themes is a general, abstract framework for developing new systems of programs synthesis by adapting proofs-as-programs to new contexts.
This monograph details several important advances in the direction of a practical proofs-as-programs paradigm, which constitutes a set of approaches to developing programs from proofs in constructive logic with applications to industrial-scale, complex software engineering problems. One of the book's central themes is a general, abstract framework for developing new systems of program synthesis by adapting proofs-as-programs to new contexts. The authors call this framework the Curry--Howard Protocol and use it to show how proofs-as-programs can be adapted to two novel applications in large-scale, coarse-grain software engineering problems: contractual imperative program synthesis and structured program synthesis. These adaptions constitute an exemplary justification for the applicability of the protocol to different contexts.
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.