Integrating ADTs in KeY and their application to history-based reasoning about collection

Jinting Bian, Hans Dieter A. Hiep*, Frank S. de Boer, Stijn de Gouw

*Corresponding author for this work

Research output: Contribution to journalArticleAcademicpeer-review

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 languageEnglish
Pages (from-to)63-89
JournalFormal Methods in System Design
Volume61
Issue number1
DOIs
Publication statusPublished - 9 May 2023

Keywords

  • Abstract data types
  • Formal verification
  • Isabelle/HOL
  • Java collection framework
  • JML
  • KeY
  • Program correctness

Fingerprint

Dive into the research topics of 'Integrating ADTs in KeY and their application to history-based reasoning about collection'. Together they form a unique fingerprint.

Cite this