Conference Papers Year : 2015

Machine-Checked Verification of the Correctness and Amortized Complexity of an Efficient Union-Find Implementation

Abstract

Union-Find is a famous example of a simple data structure whose amortized asymptotic time complexity analysis is non-trivial. We present a Coq formalization of this analysis. Moreover, we implement Union-Find as an OCaml library and formally endow it with a modular specification that offers a full functional correctness guarantee as well as an amortized complexity bound. Reasoning in Coq about imperative OCaml code relies on the CFML tool, which is based on characteristic formulae and Separation Logic, and which we extend with time credits. Although it was known in principle that amortized analysis can be explained in terms of time credits and that time credits can be viewed as resources in Separation Logic, we believe our work is the first practical demonstration of this approach.
Fichier principal
Vignette du fichier
credits_itp15.pdf (472.38 Ko) Télécharger le fichier
Origin Files produced by the author(s)

Dates and versions

hal-01245872 , version 1 (17-12-2015)

Identifiers

Cite

Arthur Charguéraud, François Pottier. Machine-Checked Verification of the Correctness and Amortized Complexity of an Efficient Union-Find Implementation. 6th International Conference on Interactive Theorem Proving (ITP), Aug 2015, Nanjing, China. ⟨10.1007/978-3-319-22102-1_9⟩. ⟨hal-01245872⟩
319 View
260 Download

Altmetric

Share

More