Abstract
In this paper we present a stepwise refinement based top-down approach to verified imperative data structures. Our approach is modular in the sense that already verified data structures can be used for construction of more complex data structures. Moreover, our data structures can be used as building blocks for the verification of algorithms. Our tool chain supports refinement down to executable code in various programming languages, and is fully implemented in Isabelle/HOL, such that its trusted code base is only the inference kernel and the code generator of Isabelle/HOL. As a case study, we verify an indexed heap data structure, and use it to generate an efficient verified implementation of Dijkstra's algorithm.
Original language | English |
---|---|
Pages | 27-36 |
Number of pages | 10 |
DOIs | |
Publication status | Published - 2016 |
Event | the 5th ACM SIGPLAN Conference - St. Petersburg, FL, USA Duration: 18 Jan 2016 → 19 Jan 2016 |
Conference
Conference | the 5th ACM SIGPLAN Conference |
---|---|
Period | 18/01/16 → 19/01/16 |