2016
DOI: 10.1016/j.jlamp.2016.05.004
|View full text |Cite
|
Sign up to set email alerts
|

Product programs and relational program logics

Abstract: A common theme in program verification is to relate two programs, for instance to show that they are equivalent, or that one refines the other. Such relationships can be formally established using relational program logics, which are tailored to reason about relations between two programs, or product constructions which allow to build from two programs a product program that emulates the behavior of both input programs. Similarly, product programs and relational program logics can be used to reason about 2-saf… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
40
0

Year Published

2017
2017
2020
2020

Publication Types

Select...
5
2
2

Relationship

0
9

Authors

Journals

citations
Cited by 36 publications
(40 citation statements)
references
References 31 publications
(41 reference statements)
0
40
0
Order By: Relevance
“…It should be noted that those are not exactly the same rules as presented in the original paper [3] because the (R-Assign-) rule of this paper seems unsound to us and some rules were missing.…”
Section: Minimal Relational Hoare Logic Minimal Relational Hoarementioning
confidence: 78%
See 1 more Smart Citation
“…It should be noted that those are not exactly the same rules as presented in the original paper [3] because the (R-Assign-) rule of this paper seems unsound to us and some rules were missing.…”
Section: Minimal Relational Hoare Logic Minimal Relational Hoarementioning
confidence: 78%
“…Extended Relational Hoare Logic is the final variant of RHL presented by Barthe et al [3]. It allows to replace any sub-program by some other extensionally equivalent program.…”
Section: Extended Rhlmentioning
confidence: 99%
“…Product program constructions Product program constructions and self-composition are techniques aimed at reducing the verification of k-safety properties (Clarkson and Schneider 2010) to the verification of traditional (unary) safety proprieties of a product program that emulates the behavior of multiple input programs. Multiple such constructions have been proposed (Barthe et al 2016) targeted for instance at secure IFC (Barthe et al 2011;Naumann 2006;Terauchi and Aiken 2005;Yasuoka and Terauchi 2014), program equivalence for compiler validation (Zaks and Pnueli 2008), equivalence checking and computing semantic differences (Lahiri et al 2012), program approximation (He et al 2016). Sousa and Dillig's 2016 recent Descartes tool for k-safety properties also creates k copies of the program, but uses lockstep reasoning to improve performance by more tightly coupling the key invariants across the program copies.…”
Section: Related Workmentioning
confidence: 99%
“…Hoare logic [27] is one of the most widely-used logics for proof-based verification of software. Variants of Hoare logic have been proposed for verifying relational, and in particular, k-safety properties [28][29][30]. An advantage of these techniques is that they avoid the state-space explosion problem, because they do not check the whole state space of the program.…”
Section: Case Studymentioning
confidence: 99%