Verification of the Schorr-Waite algorithm - from trees to graphs

  • Authors:
  • Mathieu Giorgino;Martin Strecker;Ralph Matthes;Marc Pantel

  • Affiliations:
  • Institut de Recherche en Informatique de Toulouse, Université de Toulouse;Institut de Recherche en Informatique de Toulouse, Université de Toulouse;Institut de Recherche en Informatique de Toulouse, Université de Toulouse;Institut de Recherche en Informatique de Toulouse, Université de Toulouse

  • Venue:
  • LOPSTR'10 Proceedings of the 20th international conference on Logic-based program synthesis and transformation
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

This article proposes a method for proving the correctness of graph algorithms by manipulating their spanning trees enriched with additional references. We illustrate this concept with a proof of the correctness of a (pseudo-)imperative version of the Schorr-Waite algorithm by refinement of a functional one working on trees. It is composed of two orthogonal steps of refinement - functional to imperative and tree to graph - finally merged to obtain the result. Our imperative specifications use monadic constructs and syntax sugar, making them close to common imperative languages. This work has been realized within the Isabelle/HOL proof assistant.