License: Creative Commons Attribution 3.0 Unported license (CC BY 3.0)
When quoting this document, please refer to the following
DOI: 10.4230/LIPIcs.FSTTCS.2016.11
URN: urn:nbn:de:0030-drops-68465
URL: http://dagstuhl.sunsite.rwth-aachen.de/volltexte/2016/6846/
Banerjee, Anindya ;
Naumann, David A. ;
Nikouei, Mohammad
Relational Logic with Framing and Hypotheses
Abstract
Relational properties arise in many settings: relating two versions of a program that use different data representations, noninterference properties for security, etc. The main ingredient of relational verification, relating aligned pairs of intermediate steps, has been used in numerous guises, but existing relational program logics are narrow in scope. This paper introduces a logic based on novel syntax that weaves together product programs to express alignment of control flow points at which relational formulas are asserted. Correctness judgments feature hypotheses with relational specifications, discharged by a rule for the linking of procedure implementations. The logic supports reasoning about program-pairs containing both similar and dissimilar control and data structures. Reasoning about dynamically allocated objects is supported by a frame rule based on frame conditions amenable to SMT provers. We prove soundness and sketch how the logic can be used for data abstraction, loop optimizations, and secure information flow.
BibTeX - Entry
@InProceedings{banerjee_et_al:LIPIcs:2016:6846,
author = {Anindya Banerjee and David A. Naumann and Mohammad Nikouei},
title = {{Relational Logic with Framing and Hypotheses}},
booktitle = {36th IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science (FSTTCS 2016)},
pages = {11:1--11:16},
series = {Leibniz International Proceedings in Informatics (LIPIcs)},
ISBN = {978-3-95977-027-9},
ISSN = {1868-8969},
year = {2016},
volume = {65},
editor = {Akash Lal and S. Akshay and Saket Saurabh and Sandeep Sen},
publisher = {Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik},
address = {Dagstuhl, Germany},
URL = {http://drops.dagstuhl.de/opus/volltexte/2016/6846},
URN = {urn:nbn:de:0030-drops-68465},
doi = {10.4230/LIPIcs.FSTTCS.2016.11},
annote = {Keywords: Relational Hoare logic, program equivalence, product programs, frame conditions, region logic}
}
Keywords: |
|
Relational Hoare logic, program equivalence, product programs, frame conditions, region logic |
Collection: |
|
36th IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science (FSTTCS 2016) |
Issue Date: |
|
2016 |
Date of publication: |
|
10.12.2016 |