ECOOP 2025
Mon 30 June - Fri 4 July 2025 Bergen, Norway
Wed 2 Jul 2025 11:27 - 11:48 at Auditorium M003 - Program Analysis and Verification Chair(s): Einar Broch Johnsen

This paper presents IsaBIL, a binary analysis framework in Isabelle/HOL that is based on the widely used Binary Analysis Platform (BAP). Specifically, in IsaBIL, we formalise BAP’s intermediate language, called BIL and integrate it with Hoare logic (to enable proofs of correctness) as well as incorrectness logic (to enable proofs of incorrectness). IsaBIL inherits the full flexibility of BAP, allowing us to verify binaries for a wide range of languages (C, C++, Rust), toolchains (LLVM, Ghidra) and target architectures (x86, RISC-V), and can also be used when the source code for a binary is unavailable. To make verification tractable, we develop a number of big-step rules that combine BIL’s existing small-step rules at different levels of abstraction to support reuse. We develop high-level reasoning rules for RISC-V instructions (our main target architecture) to further optimise verification. Additionally, we develop Isabelle proof tactics that exploit common patterns in C binaries for RISC-V to discharge large numbers of proof goals (often in the 100s) automatically. IsaBIL includes an Isabelle/ML based parser for BIL programs, allowing one to automatically generate the associated Isabelle/HOL program locale from a BAP output. Taken together, IsaBIL provides a highly flexible proof environment for program binaries. As examples, we prove correctness of key examples from the Joint Strike Fighter coding standards and the MITRE database.

Wed 2 Jul

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

10:45 - 12:30
Program Analysis and VerificationTechnical Papers at Auditorium M003
Chair(s): Einar Broch Johnsen University of Oslo
10:45
21m
Talk
Bottom-up Synthesis of Memory Mutations with Separation Logic
Technical Papers
Kasra Ferdowsi University of California at San Diego, Hila Peleg Technion
11:06
21m
Talk
Efficient Neural Network Verification via Order Leading Exploration of Branch-and-Bound Trees
Technical Papers
Guanqin Zhang University of New South Wales & CSIRO's Data61, Kota Fukuda Kyushu University, Zhenya Zhang Kyushu University, Japan, ‪H M N Dilum Bandara Data61, CSIRO, Shiping Chen Data61 at CSIRO, Australia / UNSW, Australia, Jianjun Zhao Kyushu University, Yulei Sui University of New South Wales
Link to publication DOI
11:27
21m
Talk
IsaBIL: A Framework for Verifying (In)correctness of Binaries in Isabelle/HOL
Technical Papers
Matt Griffin Imperial College London, Brijesh Dongol University of Surrey, Azalea Raad Imperial College London
11:48
21m
Talk
Reusing Caches and Invariants for Efficient and Sound Incremental Static Analysis
Technical Papers
Mamy Razafintsialonina Université Paris-Saclay, CEA, List, Palaiseau / Sorbonne Université, CNRS, LIP6, Paris, David Bühler Université Paris-Saclay, CEA, List, Palaiseau, Antoine Miné Sorbonne Université, Valentin Perrelle Université Paris-Saclay, CEA, List, Palaiseau, Julien Signoles Université Paris-Saclay, CEA, List
12:09
21m
Talk
RacerF: Lightweight Static Data Race Detection for C Code
Technical Papers
Tomáš Dacík Faculty of Information Technology, Brno University of Technology, Tomas Vojnar Masaryk University