Program Proofs:
70.00 JOD
Please allow 2 – 5 weeks for delivery of this item
Description
This comprehensive and highly readable textbook teaches how to formally reason about computer programs using an incremental approach and the verification-aware programming language Dafny.Program Proofs shows students what it means to write specifications for programs, what it means for programs to satisfy those specifications, and how to write proofs that connect specifications and programs. Writing with clarity and humor, K. Rustan M. Leino first provides an overview of the basic theory behind reasoning about programs. He then gradually builds up to complex concepts and applications, until students are facing real programs using objects, data structures, and non-trivial recursion. To emphasize the practical nature of program proofs, all material and examples use the verification-aware programming language Dafny, but no previous knowledge of Dafny is assumed.Written in a highly readable and student-friendly styleBuilds up to complex concepts in an incremental manner Comprehensively covers how to write proofs and how to specify and verify both functional programs and imperative programsUses real program text from a real programming language, not psuedo codeFeatures engaging illustrations and hands-on learning exercises
Additional information
Weight | 0.77 kg |
---|---|
Dimensions | 2.16 × 17.63 × 4.09 cm |
by | |
Format | Paperback |
Language | |
Pages | 496 |
Publisher | |
Year Published | 2023-3-7 |
Imprint | |
Publication City/Country | USA |
ISBN 10 | 026254623X |
About The Author | K. Rustan M. Leino is a Senior Principal Applied Scientist in the Automated Reasoning Group at Amazon Web Services, an ACM Fellow, an IFIP Fellow, and a recipient of the CAV Award. |
Table Of Content | Preface ixNotes for Teachers xv0. Introduction 1Part 0. Learning the Ropes1. Basics 92. Making It Formal 253. Recursion and Termination 634. Inductive Datatypes 835. Lemmas and Proofs 95Part 1. Functional Programs6. Lists 1377. Unary Numbers 1618. Sorting 1759. Abstraction 18910. Data-Structure Invariants 207Part 2. Imperative Programs11. Loops 23512. Recursive Specifications, Iterative Programs 25713. Arrays and Searching 27514. Modifying Arrays 32115. In-situ Sorting 33716. Objects 35117. Dynamic Heap Data Structures 387A. Dafny Syntax Cheat Sheet 427B. Boolean Algebra 433C. Answers to Select Exercises 445References 459Index 467 |
Only logged in customers who have purchased this product may leave a review.
Reviews
There are no reviews yet.