Stream: Mirror: Isabelle Users Mailing List

Topic: [isabelle] New in the AFP: A Verified Imperative Implemen...


view this post on Zulip Email Gateway (Feb 26 2021 at 06:27):

From: Gerwin Klein <kleing@unsw.edu.au>
A Verified Imperative Implementation of B-Trees
by Niels Mündler

In this work, we use the interactive theorem prover Isabelle/HOL to verify an imperative implementation of the classical B-tree data structure invented by Bauer and McCreight [ACM 1970]. The implementation supports set membership and insertion queries with efficient binary search for intra-node navigation. This is accomplished by first specifying the structure abstractly in the functional modeling language HOL and proving functional correctness. Using manual refinement, we derive an imperative implementation in Imperative/HOL. We show the validity of this refinement using the separation logic utilities from the Isabelle Refinement Framework . The code can be exported to the programming languages SML and Scala. We examine the runtime of all operations indirectly by reproducing results of the logarithmic relationship between height and the number of nodes. The results are discussed in greater detail in the corresponding Bachelor's Thesis.

https://www.isa-afp.org/entries/BTree.html

Enjoy!
Gerwin


Last updated: Jul 15 2022 at 23:21 UTC