Skip to Content.
Sympa Menu

coq-club - [Coq-Club] Alpha release of a book on program proof in Coq

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

[Coq-Club] Alpha release of a book on program proof in Coq


Chronological Thread 
  • From: Adam Chlipala <adamc AT csail.mit.edu>
  • To: types-announce AT lists.seas.upenn.edu, coq-club AT inria.fr
  • Subject: [Coq-Club] Alpha release of a book on program proof in Coq
  • Date: Fri, 2 Sep 2016 16:46:51 -0400
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=adamc AT csail.mit.edu; spf=Pass smtp.mailfrom=adamc AT csail.mit.edu; spf=None smtp.helo=postmaster AT outgoing-stata.csail.mit.edu
  • Ironport-phdr: 9a23:2P8vIxMXYajGSfJy2JIl6mtUPXoX/o7sNwtQ0KIMzox0KPzyrarrMEGX3/hxlliBBdydsKMdzbeN+Pm8ByRAuc/H6y9SNsQUFlcssoY/oU8JOIa9E0r1LfrnPWQRPf9pcxtbxUy9KlVfA83kZlff8TWY5D8WHQjjZ0IufrymUt2as8Piy/Gq9oaWagNOgye7ar5aKBStsR6XrcQfms1/Mqs3zF3ErmYMM+9R3CZjIU+Ztxf6/Ma5upB5oApKvPd03sJJVO3Rf6A5VbVcBXxyOmw84cbDvgLKTA/J43oAFGgaj0wbUED+8BjmU8Kp4WPBve1n1XzCMA==

I'm writing to make an official announcement of a draft book that I've had online for a few months:
http://adam.chlipala.net/frap/
I developed it this past spring in the context of a graduate course. There are a number of nontrivial improvement plans that I have queued up mentally, for the next few times I offer the course, but someone may find it useful in the mean time.

It's called "FRAP," for "Formal Reasoning About Programs." Like Software Foundations, it tries to introduce both the Coq proof assistant and some classic techniques in semantics and program proof. The pace is faster than in Software Foundations, so there's time to cover a broader range of topics, like model checking with abstraction, automated proofs in separation logic, reasoning about concurrent programs with shared memory or message passing, etc. (Actually, that pace still needs some adjustment to properly serve an audience jumping in without much formal-methods experience!) One distinguishing characteristic of the book is phrasing (almost) everything in terms of transition systems and their invariants, to expose commonalities across approaches.

The book runs in parallel with a PDF using classic math notation and with Coq source files mechanizing all the results. It's released under a Creative Commons license. I have exercises that I assigned in the first related course offering, though some of them deserve significant reconfiguration for difficulty level and so on.

Brave souls might consider using (parts of) the book already, and I'm glad to receive suggestions.



Archive powered by MHonArc 2.6.18.

Top of Page