Symbolic abstract contract synthesis in a rewriting framework

From MaRDI portal
Publication:2409736

DOI10.1007/978-3-319-63139-4_11zbMATH Open1485.68051arXiv1608.05619OpenAlexW2512021169MaRDI QIDQ2409736FDOQ2409736


Authors: María Alpuente, D. Pardo, A. Villanueva Edit this on Wikidata


Publication date: 13 October 2017

Abstract: We propose an automated technique for inferring software contracts from programs that are written in a non-trivial fragment of C, called KernelC, that supports pointer-based structures and heap manipulation. Starting from the semantic definition of KernelC in the K framework, we enrich the symbolic execution facilities recently provided by K with novel capabilities for assertion synthesis that are based on abstract subsumption. Roughly speaking, we define an abstract symbolic technique that explains the execution of a (modifier) C function by using other (observer) routines in the same program. We implemented our technique in the automated tool KindSpec 2.0, which generates logical axioms that express pre- and post-condition assertions by defining the precise input/output behaviour of the C routines.


Full work available at URL: https://arxiv.org/abs/1608.05619




Recommendations




Cited In (5)

Uses Software





This page was built for publication: Symbolic abstract contract synthesis in a rewriting framework

Report a bug (only for logged in users!)Click here to report a bug for this page (MaRDI item Q2409736)