A machine-checked framework for relational separation logic

  • Authors:
  • Juan Manuel Crespo;César Kunz

  • Affiliations:
  • IMDEA Software Institute, Madrid, Spain;IMDEA Software Institute and Universidad Politécnica de Madrid, Madrid, Spain

  • Venue:
  • SEFM'11 Proceedings of the 9th international conference on Software engineering and formal methods
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Relational methods are gaining growing acceptance for specifying and verifying properties defined in terms of the execution of two programs--notions such as simulation, observational equivalence, non-interference, and continuity can be elegantly cast in this setting. In previous work, we have proposed program product construction as a technique to reduce relational verification to standard verification. This method hinges on the ability to interpret relational assertions as traditional predicates, which becomes problematic when considering assertions from relational separation logic. We report in this article an alternative method that overcomes this difficulty, defined as a relational weakest precondition calculus based on separation logic and formalized in the Coq proof assistant. The formalization includes an application to the formal verification of the Schorr-Waite graph marking algorithm. We discuss additional variants of relational separation logic inspired by the standard notions of partial and total correctness, and extensions of the logic to handle non-structurally equivalent programs.