Verification of Programs with Pointers in SPARK - Archive ouverte HAL Access content directly
Conference Papers Year : 2020

Verification of Programs with Pointers in SPARK

(1) , (2) , (2) , (2) , (3, 4)
1
2
3
4

Abstract

In the field of deductive software verification, programs with pointers present a major challenge due to pointer aliasing. In this paper, we introduce pointers to SPARK, a well-defined subset of the Ada language, intended for formal verification of mission-critical software. Our solution uses a permission-based static alias analysis method inspired by Rust's borrow-checker and affine types. To validate our approach, we have implemented it in the SPARK GNATprove formal verification toolset for Ada. In the paper, we give a formal presentation of the analysis rules for a core version of SPARK and discuss their implementation and scope.
Fichier principal
Vignette du fichier
ICFEM20_paper_5.pdf (494.1 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-03094566 , version 1 (04-01-2021)

Identifiers

Cite

Georges-Axel Jaloyan, Claire Dross, Maroua Maalej, Yannick Moy, Andrei Paskevich. Verification of Programs with Pointers in SPARK. ICFEM 2020 - 22nd International Conference on Formal Engineering Methods, Mar 2020, Singapore / Virtual, Singapore. pp.55-72, ⟨10.1007/978-3-030-63406-3_4⟩. ⟨hal-03094566⟩
182 View
340 Download

Altmetric

Share

Gmail Facebook Twitter LinkedIn More