coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Andrew McCreight <continuation AT gmail.com>
- To: Coq-Club <coq-club AT pauillac.inria.fr>
- Subject: [Coq-Club] separation logic tactics library
- Date: Mon, 16 Mar 2009 10:15:28 -0700
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=xTOeWr0MPHxjvJywTKDUOv5BGQYBTyk/TEBSAoEfX/MDn80xsdPWU4MXa0rMsk1g9V Q9whUxYAjEYc0OpFjrmqWZxB0Ejw6RuBVWRHLl6Ew+J3oPfWiAa5h/NHC13FCHkS1geR +PplxWyMMyFzeIBFwdxdXJQW52FHS/YU5bCoQ=
- List-archive: <http://pauillac.inria.fr/pipermail/coq-club/>
Hello all,
I've just put up a draft paper and accompanying Coq 8.2 implementation for a comprehensive set of tactics for separation logic for a simplified variant of Cminor. The goal is to make verifying programs with separation logic as easy as proving things involving Coq's standard logic. There are two sets of tactics, one for proofs involving separation logic assertions and one for proving verification conditions using a separation logic description of the state. The separation logic assertion tactics include simplification, rearranging, splitting, matching and rewriting.
It should be fairly portable to other memory implementations. The tactics are implemented entirely in the Ltac tactic language, some reflectively, some directly. I've also implemented a tactic womega (not described in the paper) that seems to do a reasonable job at solving goals involving basic 32-bit address arithmetic that I've come across while doing verification. The implementation also includes a few small examples.
The draft and implementation are available at http://web.cecs.pdx.edu/~mccreigh/ptsl/
Andrew McCreight
HASP Project
Portland State University
http://hasp.cs.pdx.edu/
- [Coq-Club] separation logic tactics library, Andrew McCreight
- Re: [Coq-Club] separation logic tactics library, Adam Chlipala
Archive powered by MhonArc 2.6.16.