Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- invited-talkJanuary 2017
Mechanized verification of preemptive OS kernels (invited talk)
CPP 2017: Proceedings of the 6th ACM SIGPLAN Conference on Certified Programs and ProofsJanuary 2017, Page 2https://doi.org/10.1145/3018610.3023367We propose a practical verification framework for preemptive OS kernels. The framework models the correctness of API implementations in OS kernels as contextual refinement of their abstract specifications. It provides a specification language for ...
- research-articleJanuary 2017
Formalization of Karp-Miller tree construction on petri nets
CPP 2017: Proceedings of the 6th ACM SIGPLAN Conference on Certified Programs and ProofsJanuary 2017, Pages 66–78https://doi.org/10.1145/3018610.3018626Karp-Miller tree construction on Petri nets is a classical well-known algorithm to construct the minimal coverability set via forward analysis. It enables us to construct decision procedures for several problems such as coverability and (place) ...
- research-articleJanuary 2017
A Coq formal proof of the Lax-Milgram theorem
CPP 2017: Proceedings of the 6th ACM SIGPLAN Conference on Certified Programs and ProofsJanuary 2017, Pages 79–89https://doi.org/10.1145/3018610.3018625The Finite Element Method is a widely-used method to solve numerical problems coming for instance from physics or biology. To obtain the highest confidence on the correction of numerical simulation programs implementing the Finite Element Method, one ...
- research-articleJanuary 2017
Verifying a hash table and its iterators in higher-order separation logic
CPP 2017: Proceedings of the 6th ACM SIGPLAN Conference on Certified Programs and ProofsJanuary 2017, Pages 3–16https://doi.org/10.1145/3018610.3018624We describe the specification and proof of an (imperative, sequential) hash table implementation. The usual dictionary operations (insertion, lookup, and so on) are supported, as well as iteration via folds and iterators. The code is written in OCaml ...
- research-articleJanuary 2017
Automatic cyclic termination proofs for recursive procedures in separation logic
CPP 2017: Proceedings of the 6th ACM SIGPLAN Conference on Certified Programs and ProofsJanuary 2017, Pages 53–65https://doi.org/10.1145/3018610.3018623We describe a formal verification framework and tool implementation, based upon cyclic proofs, for certifying the safe termination of imperative pointer programs with recursive procedures. Our assertions are symbolic heaps in separation logic with user ...
- research-articleJanuary 2017
A reflexive tactic for polynomial positivity using numerical solvers and floating-point computations
CPP 2017: Proceedings of the 6th ACM SIGPLAN Conference on Certified Programs and ProofsJanuary 2017, Pages 90–99https://doi.org/10.1145/3018610.3018622Polynomial positivity over the real field is known to be decidable but even the best algorithms remain costly. An incomplete but often efficient alternative consists in looking for positivity witnesses as sum of squares decompositions. Such ...
- research-articleJanuary 2017
Verified compilation of CakeML to multiple machine-code targets
CPP 2017: Proceedings of the 6th ACM SIGPLAN Conference on Certified Programs and ProofsJanuary 2017, Pages 125–137https://doi.org/10.1145/3018610.3018621This paper describes how the latest CakeML compiler supports verified compilation down to multiple realistically modelled target architectures. In particular, we describe how the compiler definition, the various language semantics, and the correctness ...
- research-articleJanuary 2017
Type-and-scope safe programs and their proofs
CPP 2017: Proceedings of the 6th ACM SIGPLAN Conference on Certified Programs and ProofsJanuary 2017, Pages 195–207https://doi.org/10.1145/3018610.3018613We abstract the common type-and-scope safe structure from computations on λ-terms that deliver, e.g., renaming, substitution, evaluation, CPS-transformation, and printing with a name supply. By exposing this structure, we can prove generic simulation ...
- research-articleJanuary 2017
Verifying dynamic race detection
CPP 2017: Proceedings of the 6th ACM SIGPLAN Conference on Certified Programs and ProofsJanuary 2017, Pages 151–163https://doi.org/10.1145/3018610.3018611Writing race-free concurrent code is notoriously difficult, and data races can result in bugs that are difficult to isolate and reproduce. Dynamic race detection can catch data races that cannot (easily) be detected statically. One approach to dynamic ...