Deeply Integrating C11 Code Support into Isabelle/PIDE - Archive ouverte HAL Accéder directement au contenu
Communication Dans Un Congrès Année : 2019

Deeply Integrating C11 Code Support into Isabelle/PIDE

Résumé

We present 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 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 framing conditions. Our 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. Our approach demonstrates the degree of maturity and expressive power the Isabelle/PIDE subsystem has achieved in recent years. Our integration technique employs Lex and Yacc style grammars to ensure efficient deterministic parsing. We present two case studies for the integration of (known) semantic back-ends in order to validate the design decisions for our back-end interface.
Fichier non déposé

Dates et versions

hal-04500151 , version 1 (11-03-2024)

Identifiants

Citer

Frédéric Tuong, Burkhart Wolff. Deeply Integrating C11 Code Support into Isabelle/PIDE. Fifth Workshop on Formal Integrated Development Environment, Oct 2019, Porto, Portugal. pp.13-28, ⟨10.48550/arXiv.1912.10630⟩. ⟨hal-04500151⟩
4 Consultations
0 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More