Program analysis and verification based on kleene algebra in Isabelle/HOL

  • Authors:
  • Alasdair Armstrong;Georg Struth;Tjark Weber

  • Affiliations:
  • Department of Computer Science, University of Sheffield, UK;Department of Computer Science, University of Sheffield, UK;Department of Information Technology, Uppsala University, Sweden

  • Venue:
  • ITP'13 Proceedings of the 4th international conference on Interactive Theorem Proving
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Schematic Kleene algebra with tests (SKAT) supports the equational verification of flowchart scheme equivalence and captures simple while-programs with assignment statements. We formalise SKAT in Isabelle/HOL, using the quotient type package to reason equationally in this algebra. We apply this formalisation to a complex flowchart transformation proof from the literature. We extend SKAT with assertion statements and derive the inference rules of Hoare logic. We apply this extension in simple program verification examples and the derivation of additional Hoare-style rules. This shows that algebra can provide an abstract semantic layer from which different program analysis and verification tasks can be implemented in a simple lightweight way.