2019 Formal Methods in Computer Aided Design (FMCAD) 2019
DOI: 10.23919/fmcad.2019.8894277
|View full text |Cite
|
Sign up to set email alerts
|

Verifying Relational Properties using Trace Logic

Abstract: We present a logical framework for the verification of relational properties in imperative programs. Our framework reduces verification of relational properties of imperative programs to a validity problem in trace logic, an expressive instance of first-order predicate logic. Trace logic draws its expressiveness from its syntax, which allows expressing properties over computation traces. Its axiomatization supports fine-grained reasoning about intermediate steps in program execution, notably loop iterations. W… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
27
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
5
1
1

Relationship

3
4

Authors

Journals

citations
Cited by 18 publications
(28 citation statements)
references
References 54 publications
0
27
0
Order By: Relevance
“…al. [2] uses firstorder logic (FOL) to express hyper properties, e. g. non-interference. The FOL signature contains the theory of natural numbers and integer, and also includes symbols denoting time-points, last iterations in loops, program variables and traces.…”
Section: Generalized Testmentioning
confidence: 99%
See 1 more Smart Citation
“…al. [2] uses firstorder logic (FOL) to express hyper properties, e. g. non-interference. The FOL signature contains the theory of natural numbers and integer, and also includes symbols denoting time-points, last iterations in loops, program variables and traces.…”
Section: Generalized Testmentioning
confidence: 99%
“…underlying program, but only one common duration column. 2 To tackle the previously stated limitation, we add the following syntactical concepts: (a) (Explicit) references to variables in specific programs, including abbreviations. (b) Functions in the column header, and (c) We introduce a column type -the control column.…”
Section: Relational Test Tablesmentioning
confidence: 99%
“…Probabilistic noninterference [ 28 , 29 , 30 ] and observational determinism [ 10 , 31 , 32 , 33 , 34 , 35 ] have been used as information flow properties to characterize the security of concurrent programs. For verifying these security properties, type systems [ 28 , 29 , 31 , 32 ], algorithmic verification [ 10 , 30 , 33 , 34 ], program analysis [ 35 ], and logics [ 36 , 37 , 38 ] have been utilized. In qualitative information flow, the security property gets rejected when there is a leakage, even a minor one.…”
Section: Related Workmentioning
confidence: 99%
“…As a special case of superposition, demodulation is implemented in first-order provers such as E [14], Spass [21] and Vampire [10]. Recent applications of superposition-based reasoning, for example to program analysis and verification [5], demand however new and efficient extensions of demodulation to reason about and simplify upon conditional equalities C → l r, where C is a first-order formula. Such conditional equalities may, for example, encode software properties expressed in a guarded command language, with C denoting a guard (such as a loop condition) and l r encoding equational properties over program variables.…”
Section: Introductionmentioning
confidence: 99%
“…Example 1 demonstrates that subsumption demodulation applies in situations where AVATAR does not: in each clause of (4), all literals share the variable i and hence none of the clauses from (4) can be split using AVATAR. That is, AVATAR would not generate unit equalities from (4), and therefore cannot apply demodulation over (4) to derive (5).…”
Section: Introductionmentioning
confidence: 99%