MoSeL: A general, extensible modal framework for interactive proofs in separation logic

R Krebbers, JH Jourdan, R Jung, J Tassarotti… - Proceedings of the …, 2018 - dl.acm.org
A number of tools have been developed for carrying out separation-logic proofs
mechanically using an interactive proof assistant. One of the most advanced such tools is …

Verifying concurrent, crash-safe systems with Perennial

T Chajed, J Tassarotti, MF Kaashoek… - Proceedings of the 27th …, 2019 - dl.acm.org
This paper introduces Perennial, a framework for verifying concurrent, crash-safe systems.
Perennial extends the Iris concurrency framework with three techniques to enable crash …

Verifying higher-order programs with the Dijkstra monad

N Swamy, J Weinberger, C Schlesinger, J Chen… - ACM SIGPLAN …, 2013 - dl.acm.org
Modern programming languages, ranging from Haskell and ML, to JavaScript, C# and Java,
all make extensive use of higher-order state. This paper advocates a new verification …

Refinement to imperative HOL

P Lammich - Journal of Automated Reasoning, 2019 - Springer
Many algorithms can be implemented most efficiently with imperative data structures. This
paper presents Sepref, a stepwise refinement based tool chain for the verification of …

Transfinite Iris: resolving an existential dilemma of step-indexed separation logic

S Spies, L Gäher, D Gratzer, J Tassarotti… - Proceedings of the …, 2021 - dl.acm.org
Step-indexed separation logic has proven to be a powerful tool for modular reasoning about
higher-order stateful programs. However, it has only been used to reason about safety …

Dijkstra monads for free

D Ahman, C Hriţcu, K Maillard, G Martínez… - Proceedings of the 44th …, 2017 - dl.acm.org
Dijkstra monads enable a dependent type theory to be enhanced with support for specifying
and verifying effectful code via weakest preconditions. Together with their closely related …

Cogent: uniqueness types and certifying compilation

L O'CONNOR, Z Chen, C Rizkallah… - Journal of Functional …, 2021 - cambridge.org
This paper presents a framework aimed at significantly reducing the cost of proving
functional correctness for low-level operating systems components. The framework is …

Proof-producing translation of higher-order logic into pure and stateful ML

MO Myreen, S Owens - Journal of Functional Programming, 2014 - cambridge.org
The higher-order logic found in proof assistants such as Coq and various HOL systems
provides a convenient setting for the development and verification of functional programs …

Steel: proof-oriented programming in a dependently typed concurrent separation logic

A Fromherz, A Rastogi, N Swamy, S Gibson… - Proceedings of the …, 2021 - dl.acm.org
Steel is a language for developing and proving concurrent programs embedded in F⋆, a
dependently typed programming language and proof assistant. Based on SteelCore, a …

Mi-Cho-Coq, a framework for certifying Tezos smart contracts

B Bernardo, R Cauderlier, Z Hu, B Pesin… - Formal Methods. FM …, 2020 - Springer
Tezos is a blockchain launched in June 2018. It is written in OCaml and supports smart
contracts. Its smart contract language is called Michelson and it has been designed with …