Abstract
We discuss integrating abstract data types (ADTs) in the KeY theorem prover by a new approach to model data types using Isabelle/HOL as an interactive back-end, and represent Isabelle theorems as user-defined taclets in KeY. As a case study of this new approach, we reason about Java’s Collection interface using histories, and we prove the correctness of several clients that operate on multiple objects, thereby significantly improving the state-of-the-art of history-based reasoning. Open Science. Includes video material (Bian and Hiep in FigShare, 2021. https://doi.org/10.6084/m9.figshare.c.5413263) and a source code artifact (Bian et al. in Zenodo, 2022. https://doi.org/10.5281/zenodo.7079126).
Original language | English |
---|---|
Pages (from-to) | 63-89 |
Journal | Formal Methods in System Design |
Volume | 61 |
Issue number | 1 |
DOIs | |
Publication status | Published - 9 May 2023 |
Keywords
- Abstract data types
- Formal verification
- Isabelle/HOL
- Java collection framework
- JML
- KeY
- Program correctness