Verification of certifying computations

  • Authors:
  • Eyad Alkassar;Sascha Böhme;Kurt Mehlhorn;Christine Rizkallah

  • Affiliations:
  • Universität des Saarlandes, Germany;Institut für Informatik, Technische Universität München, Germany;Max-Planck-Institut für Informatik, Saarbrücken, Germany;Max-Planck-Institut für Informatik, Saarbrücken, Germany

  • Venue:
  • CAV'11 Proceedings of the 23rd international conference on Computer aided verification
  • Year:
  • 2011

Quantified Score

Hi-index 0.01

Visualization

Abstract

Formal verification of complex algorithms is challenging. Verifying their implementations goes beyond the state of the art of current verification tools and proving their correctness usually involves non-trivial mathematical theorems. Certifying algorithms compute in addition to each output a witness certifying that the output is correct. A checker for such a witness is usually much simpler than the original algorithm - yet it is all the user has to trust. Verification of checkers is feasible with current tools and leads to computations that can be completely trusted. In this paper we develop a framework to seamlessly verify certifying computations. The automatic verifier VCC is used for checking code correctness, and the interactive theorem prover Isabelle/HOL targets high-level mathematical properties of algorithms. We demonstrate the effectiveness of our approach by presenting the verification of a typical example of the algorithmic library LEDA.