Exploiting pointer analysis in memory models for deductive verification. (English) Zbl 07157045

Enea, Constantin (ed.) et al., Verification, model checking, and abstract interpretation. 20th international conference, VMCAI 2019, Cascais, Portugal, January 13–15, 2019. Proceedings. Cham: Springer. Lect. Notes Comput. Sci. 11388, 160-182 (2019).
Summary: Cooperation between verification methods is crucial to tackle the challenging problem of software verification. The paper focuses on the verification of C programs using pointers and it formalizes a cooperation between static analyzers doing pointer analysis and a deductive verification tool based on first order logic. We propose a framework based on memory models that captures the partitioning of memory inferred by pointer analyses, and complies with the memory models used to generate verification conditions. The framework guided us to propose a pointer analysis that accommodates to various low-level operations on pointers while providing precise information about memory partitioning to the deductive verification. We implemented this cooperation inside the Frama-C platform and we show its effectiveness in reducing the task of deductive verification on a complex case study.
For the entire collection see [Zbl 1409.68014].


68Q60 Specification and verification (program logics, model checking, etc.)
Full Text: DOI arXiv