2011
DOI: 10.1007/978-3-642-21768-5_9
|View full text |Cite
|
Sign up to set email alerts
|

Correct Code Containing Containers

Abstract: Abstract. For critical software development, containers such as lists, vectors, sets or maps are an attractive alternative to ad-hoc data structures based on pointers. As standards like DO-178C put formal verification and testing on an equal footing, it is important to give users the ability to apply both to the verification of code using containers. In this paper, we present a definition of containers whose aim is to facilitate their use in certified software, using modern proof technology and novel specifica… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

0
6
0

Year Published

2012
2012
2020
2020

Publication Types

Select...
4
1
1

Relationship

2
4

Authors

Journals

citations
Cited by 11 publications
(6 citation statements)
references
References 12 publications
0
6
0
Order By: Relevance
“…Dross et al [DFM11] describe a detailed axiomatization of lists, sets, and tables in the Why functional language, as well as an operational semantics in the Coq interactive prover [Pau11]; using Coq, they prove that the Why axiomatization is consistent with the Coq formalization. The axiomatization is designed to be amenable to automated reasoning using SMT solvers; hence it is applicable to proving properties of code using containers written in Ada 2012-even though the paper does not report about concrete case studies.…”
Section: Verification Of Data-structure Clientsmentioning
confidence: 99%
“…Dross et al [DFM11] describe a detailed axiomatization of lists, sets, and tables in the Why functional language, as well as an operational semantics in the Coq interactive prover [Pau11]; using Coq, they prove that the Why axiomatization is consistent with the Coq formalization. The axiomatization is designed to be amenable to automated reasoning using SMT solvers; hence it is applicable to proving properties of code using containers written in Ada 2012-even though the paper does not report about concrete case studies.…”
Section: Verification Of Data-structure Clientsmentioning
confidence: 99%
“…Datatypes that are often needed are collections. In SPARK, there is a library of collections that are specifically designed for simultaneous use in dynamic and static verification [17]. The user can even design her own library of non-executable datatypes, using the so-called external axiomatizations, for example to support unbounded integers in proof.…”
Section: Spark 2014: Static Verification Of Ada 2012 Contractsmentioning
confidence: 99%
“…In Hi-Lite, special care has been taken to provide a library for containers well suited to proof [14]. Indeed, these data structures obviate the need for pointers, which are not easily handled in formal verification.…”
Section: Providing Rich Librariesmentioning
confidence: 99%