Symbolic execution is a classical program analysis technique used to show that programs satisfy or violate given specifications. In this work we generalize symbolic execution to support program analysis for relational specifications in the form of relational properties - these are properties about two runs of two programs on related inputs, or about two executions of a single program on related inputs. Relational properties are useful to formalize notions in security and privacy, and to reason about program optimizations. We design a relational symbolic execution engine, named RelSym which supports interactive refutation, as well as proving of relational properties for programs written in a language with arrays and for-like loops.Accepted m...
International audienceRelational properties describe multiple runs of one or more programs. They ch...
In this paper, we provide a formal explanation of symbolic execution in terms of a symbolic transiti...
International audienceSymbolic execution is a program analysis technique commonly utilized to determ...
Symbolic execution is a technique enabling the automatic generation of test inputs that exercise a s...
Symbolic execution is a technique which enables automatically generating test inputs (and outputs) e...
Relational program logics are used to prove that a desired relationship holds between the execution ...
Many security and software testing applications require checking whether certain properties of a pro...
We introduce Gillian, a platform for developing symbolic analysis tools for programming languages. H...
WebAssembly is a new low-level language used as a compilation target which runs in web browsers. As ...
Symbolic execution provides a mechanism for formally proving programs correct. A notation is introdu...
A relational semantics is a mapping of programs to relations. We consider that the input-output sema...
Abstract. Relational program logics are formalisms for specifying and verifying properties about two...
Relational program verification is a variant of program verification where one can reason about two ...
Abstract. Relational Hoare Logic is a generalization of Hoare logic that allows reasoning about exec...
Symbolic execution is a powerful, systematic program analysis approach that has received much visibi...
International audienceRelational properties describe multiple runs of one or more programs. They ch...
In this paper, we provide a formal explanation of symbolic execution in terms of a symbolic transiti...
International audienceSymbolic execution is a program analysis technique commonly utilized to determ...
Symbolic execution is a technique enabling the automatic generation of test inputs that exercise a s...
Symbolic execution is a technique which enables automatically generating test inputs (and outputs) e...
Relational program logics are used to prove that a desired relationship holds between the execution ...
Many security and software testing applications require checking whether certain properties of a pro...
We introduce Gillian, a platform for developing symbolic analysis tools for programming languages. H...
WebAssembly is a new low-level language used as a compilation target which runs in web browsers. As ...
Symbolic execution provides a mechanism for formally proving programs correct. A notation is introdu...
A relational semantics is a mapping of programs to relations. We consider that the input-output sema...
Abstract. Relational program logics are formalisms for specifying and verifying properties about two...
Relational program verification is a variant of program verification where one can reason about two ...
Abstract. Relational Hoare Logic is a generalization of Hoare logic that allows reasoning about exec...
Symbolic execution is a powerful, systematic program analysis approach that has received much visibi...
International audienceRelational properties describe multiple runs of one or more programs. They ch...
In this paper, we provide a formal explanation of symbolic execution in terms of a symbolic transiti...
International audienceSymbolic execution is a program analysis technique commonly utilized to determ...