Designers often apply manual or semi-automatic loop and data transformations on array and loop intensive programs to improve performance. It is crucial that such transformations preserve the functionality of the program. This paper presents an automatic method for constructing equivalence proofs for the class of static affine programs. The equivalence checking is performed on a dependence graph abstraction and uses a new approach based on widening to find the proper induction hypotheses for reasoning about recurrences. Unlike transitive closure based approaches, this widening approach can also handle non-uniform recurrences. The implementation is publicly available and is the first of its kind to fully support commutative operatio...
AbstractModular static analyzers use procedure abstractions, a.k.a. summarizations, to ensure that t...
Development of energy and performance-efficient embedded software is increasingly relying on applica...
Development of energy and performance-efficient embedded software is increasingly relying on applica...
Designers often apply manual or semi-automatic loop and data transformations on array and loop inten...
Designers often apply manual or semi-automatic loop and data transformations on array and loop inten...
Abstract. Designers often apply manual or semi-automatic loop and data transformations on array and ...
Abstract—Designers often apply manual or semi-automatic loop and data transformations on array and l...
Abstract. Typically, a combination of manual and automated transformations is applied when algorithm...
International audienceProgram equivalence is a well-known problem with a wide range of applications,...
Abstract. Proving the equivalence of programs has several important applications, including algorith...
International audienceHigh-level compiler transformations, especially loop transformations, are wide...
Abstract. Most of the properties established during program verification are either invariants or de...
The date of receipt and acceptance will be inserted by the editor Abstract. Proving equivalence of p...
International audienceModular static analyzers use procedure abstractions, a.k.a. summarizations, to...
Static analysis of program semantics can be used to provide strong guarantees about the correctness ...
AbstractModular static analyzers use procedure abstractions, a.k.a. summarizations, to ensure that t...
Development of energy and performance-efficient embedded software is increasingly relying on applica...
Development of energy and performance-efficient embedded software is increasingly relying on applica...
Designers often apply manual or semi-automatic loop and data transformations on array and loop inten...
Designers often apply manual or semi-automatic loop and data transformations on array and loop inten...
Abstract. Designers often apply manual or semi-automatic loop and data transformations on array and ...
Abstract—Designers often apply manual or semi-automatic loop and data transformations on array and l...
Abstract. Typically, a combination of manual and automated transformations is applied when algorithm...
International audienceProgram equivalence is a well-known problem with a wide range of applications,...
Abstract. Proving the equivalence of programs has several important applications, including algorith...
International audienceHigh-level compiler transformations, especially loop transformations, are wide...
Abstract. Most of the properties established during program verification are either invariants or de...
The date of receipt and acceptance will be inserted by the editor Abstract. Proving equivalence of p...
International audienceModular static analyzers use procedure abstractions, a.k.a. summarizations, to...
Static analysis of program semantics can be used to provide strong guarantees about the correctness ...
AbstractModular static analyzers use procedure abstractions, a.k.a. summarizations, to ensure that t...
Development of energy and performance-efficient embedded software is increasingly relying on applica...
Development of energy and performance-efficient embedded software is increasingly relying on applica...