Deeply Integrating C11 Code Support into Isabelle/PIDE

12/23/2019
by   Frédéric Tuong, et al.
0

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.

READ FULL TEXT

page 3

page 5

research
04/12/2021

Joint Universal Syntactic and Semantic Parsing

While numerous attempts have been made to jointly parse syntax and seman...
research
03/13/2019

CoaCor: Code Annotation for Code Retrieval with Reinforcement Learning

To accelerate software development, much research has been performed to ...
research
04/02/2019

Verification and Validation of Semantic Annotations

In this paper, we propose a framework to perform verification and valida...
research
11/27/2018

AsmetaF: A Flattener for the ASMETA Framework

Abstract State Machines (ASMs) have shown to be a suitable high-level sp...
research
09/19/2019

Made for Each Other: Broad-coverage Semantic Structures Meet Preposition Supersenses

Universal Conceptual Cognitive Annotation (UCCA; Abend and Rappoport, 20...
research
02/25/2023

A Bottom-Up Approach to a Unified Semantic Interface for Verified Compositional Compilation

Verified compositional compilation (VCC) is a notion of modular verifica...
research
08/06/2021

Deductive Verification via the Debug Adapter Protocol

We propose a conceptual integration of deductive program verification in...

Please sign up or login with your details

Forgot password? Click here to reset