Planned intervention: On Wednesday April 3rd 05:30 UTC Zenodo will be unavailable for up to 2-10 minutes to perform a storage cluster upgrade.
Published July 13, 2022 | Version C_2021-1
Software Open

The Isabelle_C Bundle

  • 1. Universite Paris-Saclay

Description

Isabelle/C is a framework for C code in C11 syntax deeply integrated into the Isabelle/PIDE development environment. Our framework provides an abstract interface for verification back-ends to be plugged-in independently. Thus, various techniques such as deductive program verification or white-box testing can be applied to the same source, which is part of an integrated Isabelle/PIDE document model. Semantic back-ends are free to choose the supported C fragment and its semantics. In particular, they can differ on the chosen memory model or the specification mechanism for e.g. framing conditions. Isabelle/C is itself an entry in the AFP.

Via this site, we distribute a bundle of Isabelle/C with two semantic backends, together with example suites for Isabelle/C as such. Moreover, each semantic backend comes with its own example suites:

The Isabelle/C framework supports semantic annotations of C sources in the form of comments. Annotations serve to locally control back-end settings, and can express the term focus to which an annotation refers. Both the logical and the syntactic context are available when semantic annotations are evaluated. As a consequence, a formula in an annotation can refer both to HOL or C variables.

The project is linked to general website containing links to videos and papers; developers may be interested in our git-repo (select current branch: C_2021-1).

CAVEAT: The session Isabelle_C_AutoCorres does not work under Windows due to intern restrictions of AutoCorres.

Files

2019-fide-isabelle_c.pdf

Files (102.9 MB)

Name Size Download all
md5:20fcda8d05758900f62ccb6c54cc29c8
996.4 kB Preview Download
md5:5884961c8c9410d877ccb683685dacc9
101.9 MB Preview Download