Program Proofs

ยท MIT Press
แƒ”แƒšแƒฌแƒ˜แƒ’แƒœแƒ˜
496
แƒ’แƒ•แƒ”แƒ แƒ“แƒ˜
แƒ›แƒ˜แƒกแƒแƒฆแƒ”แƒ‘แƒ˜

แƒแƒ› แƒ”แƒšแƒฌแƒ˜แƒ’แƒœแƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘

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 style
  • Builds 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 programs
  • Uses real program text from a real programming language, not psuedo code
  • Features engaging illustrations and hands-on learning exercises

แƒแƒ•แƒขแƒแƒ แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘

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.

แƒจแƒ”แƒแƒคแƒแƒกแƒ”แƒ— แƒ”แƒก แƒ”แƒšแƒฌแƒ˜แƒ’แƒœแƒ˜

แƒ’แƒ•แƒ˜แƒ—แƒฎแƒแƒ แƒ˜แƒ— แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒแƒ–แƒ แƒ˜.

แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ แƒฌแƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒแƒกแƒ—แƒแƒœ แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒ—

แƒกแƒ›แƒแƒ แƒขแƒคแƒแƒœแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒขแƒแƒ‘แƒšแƒ”แƒขแƒ”แƒ‘แƒ˜
แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ— Google Play Books แƒแƒžแƒ˜ Android แƒ“แƒ iPad/iPhone แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ˜แƒก แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒ’แƒแƒœแƒแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒก แƒกแƒ˜แƒœแƒฅแƒ แƒแƒœแƒ˜แƒ–แƒแƒชแƒ˜แƒแƒก แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒแƒœแƒ’แƒแƒ แƒ˜แƒจแƒ—แƒแƒœ แƒ“แƒ แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ›แƒแƒ’แƒชแƒ”แƒ›แƒ—, แƒฌแƒแƒ˜แƒ™แƒ˜แƒ—แƒฎแƒแƒ— แƒกแƒแƒกแƒฃแƒ แƒ•แƒ”แƒšแƒ˜ แƒ™แƒแƒœแƒขแƒ”แƒœแƒขแƒ˜ แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ  แƒแƒ“แƒ’แƒ˜แƒšแƒแƒก, แƒ แƒแƒ’แƒแƒ แƒช แƒแƒœแƒšแƒแƒ˜แƒœ, แƒ˜แƒกแƒ” แƒฎแƒแƒ–แƒ’แƒแƒ แƒ”แƒจแƒ” แƒ แƒ”แƒŸแƒ˜แƒ›แƒจแƒ˜.
แƒšแƒ”แƒžแƒขแƒแƒžแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ™แƒแƒ›แƒžแƒ˜แƒฃแƒขแƒ”แƒ แƒ”แƒ‘แƒ˜
Google Play-แƒจแƒ˜ แƒจแƒ”แƒซแƒ”แƒœแƒ˜แƒšแƒ˜ แƒแƒฃแƒ“แƒ˜แƒแƒฌแƒ˜แƒ’แƒœแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒกแƒ›แƒ”แƒœแƒ แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ™แƒแƒ›แƒžแƒ˜แƒฃแƒขแƒ”แƒ แƒ˜แƒก แƒ•แƒ”แƒ‘-แƒ‘แƒ แƒแƒฃแƒ–แƒ”แƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ—.
แƒ”แƒšแƒฌแƒแƒ›แƒ™แƒ˜แƒ—แƒฎแƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒกแƒฎแƒ•แƒ แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜
แƒ”แƒšแƒ”แƒฅแƒขแƒ แƒแƒœแƒฃแƒšแƒ˜ แƒ›แƒ”แƒšแƒœแƒ˜แƒก แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ”แƒ‘แƒ–แƒ” แƒฌแƒแƒกแƒแƒ™แƒ˜แƒ—แƒฎแƒแƒ“, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ Kobo eReaders, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ— แƒคแƒแƒ˜แƒšแƒ˜ แƒ“แƒ แƒ’แƒแƒ“แƒแƒ˜แƒขแƒแƒœแƒแƒ— แƒ˜แƒ’แƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒแƒจแƒ˜. แƒ“แƒแƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ˜แƒก แƒชแƒ”แƒœแƒขแƒ แƒ˜แƒก แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒ˜ แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ— แƒ’แƒแƒ“แƒแƒ˜แƒขแƒแƒœแƒ”แƒ— แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜ แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ˜แƒš แƒ”แƒšแƒฌแƒแƒ›แƒ™แƒ˜แƒ—แƒฎแƒ•แƒ”แƒšแƒ”แƒ‘แƒ–แƒ”.

แƒ›แƒ”แƒขแƒ˜ แƒแƒ•แƒขแƒแƒ แƒ˜แƒกแƒ’แƒแƒœ K. Rustan M. Leino

แƒ›แƒกแƒ’แƒแƒ•แƒกแƒ˜ แƒ”แƒšแƒฌแƒ˜แƒ’แƒœแƒ”แƒ‘แƒ˜