Proof pearl: Purely functional, simple and efficient priority search trees and applications to Prim and Dijkstra

Peter Lammich, Tobias Nipkow

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

4 Scopus citations

Abstract

The starting point of this paper is a new, purely functional, simple and efficient data structure combining a search tree and a priority queue, which we call a priority search tree. The salient feature of priority search trees is that they offer a decrease-key operation, something that is missing from other simple, purely functional priority queue implementations. As two applications of this data structure we verify purely functional, simple and efficient implementations of Prim’s and Dijkstra’s algorithms. This constitutes the first verification of an executable and even efficient version of Prim’s algorithm.

Original languageEnglish
Title of host publication10th International Conference on Interactive Theorem Proving, ITP 2019
EditorsJohn Harrison, John O'Leary, Andrew Tolmach
PublisherSchloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing
ISBN (Electronic)9783959771221
DOIs
StatePublished - Sep 2019
Event10th International Conference on Interactive Theorem Proving, ITP 2019 - Portland, United States
Duration: 9 Sep 201912 Sep 2019

Publication series

NameLeibniz International Proceedings in Informatics, LIPIcs
Volume141
ISSN (Print)1868-8969

Conference

Conference10th International Conference on Interactive Theorem Proving, ITP 2019
Country/TerritoryUnited States
CityPortland
Period9/09/1912/09/19

Keywords

  • Dijkstra’s algorithm
  • Isabelle
  • Prim’s algorithm
  • Priority queue
  • Verification

Fingerprint

Dive into the research topics of 'Proof pearl: Purely functional, simple and efficient priority search trees and applications to Prim and Dijkstra'. Together they form a unique fingerprint.

Cite this