Conference paper Open Access

MetACSL : Specification and Verification of High-Level Properties

Robles, Virgile; Kosmatov, Virgile; Prevosto, Virgile; Rilling, Louis; Le Gall, Pascale

Modular deductive verification is a powerful technique capable to show that each function in a program satisfies its contract. However, function contracts do not provide a global view of which high-level (e.g. security-related) properties of a whole software module are actually established, making it very difficult to assess them. To address this issue, this paper proposes a new specification mechanism, called meta-properties. A meta-property can be seen as an enhanced global invariant specified for a set of functions, and capable to express predicates on values of variables, as well as memory related conditions (such as separation) and read or write access constraints. We also propose an automatic transformation technique translating meta-properties into usual contracts and assertions, that can be proved by traditional deductive verification tools. This technique has been implemented as a Frama-C plugin called MetAcsl and successfully applied to specify and prove safety- and security-related meta-properties in two illustrative case studies.

Files (552.6 kB)
Name Size
12-MetACSL.pdf
md5:2bb05f2b35005ee07654975a94a096dd
552.6 kB Download
42
20
views
downloads
Views 42
Downloads 20
Data volume 11.1 MB
Unique views 29
Unique downloads 18

Share

Cite as