Comprehensive formal verification of an OS microkernel

G Klein, J Andronick, K Elphinstone, T Murray… - ACM Transactions on …, 2014 - dl.acm.org
We present an in-depth coverage of the comprehensive machine-checked formal verification
of seL4, a general-purpose operating system microkernel. We discuss the kernel design we …

Alive2: bounded translation validation for LLVM

NP Lopes, J Lee, CK Hur, Z Liu, J Regehr - Proceedings of the 42nd …, 2021 - dl.acm.org
We designed, implemented, and deployed Alive2: a bounded translation validation tool for
the LLVM compiler's intermediate representation (IR). It limits resource consumption by, for …

RefinedC: automating the foundational verification of C code with refined ownership types

M Sammler, R Lepigre, R Krebbers… - Proceedings of the …, 2021 - dl.acm.org
Given the central role that C continues to play in systems software, and the difficulty of
writing safe and correct C code, it remains a grand challenge to develop effective formal …

Deep specifications and certified abstraction layers

R Gu, J Koenig, T Ramananandro, Z Shao, X Wu… - ACM SIGPLAN …, 2015 - dl.acm.org
Modern computer systems consist of a multitude of abstraction layers (eg, OS kernels,
hypervisors, device drivers, network protocols), each of which defines an interface that hides …

Scaling symbolic evaluation for automated verification of systems code with Serval

L Nelson, J Bornholt, R Gu, A Baumann… - Proceedings of the 27th …, 2019 - dl.acm.org
This paper presents Serval, a framework for develo** automated verifiers for systems
software. Serval provides an extensible infrastructure for creating verifiers by lifting …

[LIBRO][B] Concrete semantics: with Isabelle/HOL

T Nipkow, G Klein - 2014 - books.google.com
Part I of this book is a practical introduction to working with the Isabelle proof assistant. It
teaches you how to write functional programs and inductive definitions and how to prove …

seL4: from general purpose to a proof of information flow enforcement

T Murray, D Matichuk, M Brassil… - … IEEE Symposium on …, 2013 - ieeexplore.ieee.org
In contrast to testing, mathematical reasoning and formal verification can show the absence
of whole classes of security vulnerabilities. We present the, to our knowledge, first complete …

Verification of a cryptographic primitive: SHA-256

AW Appel - ACM Transactions on Programming Languages and …, 2015 - dl.acm.org
This article presents a full formal machine-checked verification of a C program: the OpenSSL
implementation of SHA-256. This is an interactive proof of functional correctness in the Coq …

Semantic program alignment for equivalence checking

B Churchill, O Padon, R Sharma, A Aiken - Proceedings of the 40th ACM …, 2019 - dl.acm.org
We introduce a robust semantics-driven technique for program equivalence checking. Given
two functions we find a trace alignment over a set of concrete executions of both programs …

{Push-Button} Verification of File Systems via Crash Refinement

H Sigurbjarnarson, J Bornholt, E Torlak… - 12th USENIX Symposium …, 2016 - usenix.org
The file system is an essential operating system component for persisting data on storage
devices. Writing bug-free file systems is non-trivial, as they must correctly implement and …