We present a loop property generation method for loops iterating over multi-dimensional arrays. When used on matrices, our method is able to infer their shapes (also called types), such as upper-triangular, diagonal, etc. To gen- erate loop properties, we first transform a nested loop iterating over a multi- dimensional array into an equivalent collection of unnested loops. Then, we in- fer quantified loop invariants for each unnested loop using a generalization of a recurrence-based invariant generation technique. These loop invariants give us conditions on matrices from which we can derive matrix types automatically us- ing theorem provers. Invariant generation is implemented in the software package Aligator and types are derived by theor...
A general framework is presented for automating the discovery of loop invariants for imperative prog...
Provably correct software is one of the key challenges in our software-driven society. Program verif...
In this paper, we discuss a loop transformation framework that is based on integer non-singular ma...
Wepresentalooppropertygenerationmethodforloopsiteratingover multi-dimensional arrays. When used on m...
This paper presents Aligators, a tool for the generation of universally quantified array invariants....
This paper presents Aligators, a tool for the generation of universally quantified array invariants....
International audienceBy combining algorithmic learning, decision procedures, predicate abstraction,...
Abstract. Most of the properties established during program verification are either invariants or de...
Loop invariant generation, which automates the generation ofassertions that always hold at the entry...
A liquid type is an ordinary Hindley-Milner type annotated with a logical predicate that states the ...
An approach for automatically generating loop invariants using quantifier-elimination is proposed. A...
International audienceBy combining algorithmic learning, decision procedures, and predicate abstract...
In this paper we present a novel approach to automatically generate invariants for loops manipulatin...
Verifiers that can prove programs correct against their full functional specification require, for p...
Abstract—In recent years it has been shown that for many linear algebra operations it is possible to...
A general framework is presented for automating the discovery of loop invariants for imperative prog...
Provably correct software is one of the key challenges in our software-driven society. Program verif...
In this paper, we discuss a loop transformation framework that is based on integer non-singular ma...
Wepresentalooppropertygenerationmethodforloopsiteratingover multi-dimensional arrays. When used on m...
This paper presents Aligators, a tool for the generation of universally quantified array invariants....
This paper presents Aligators, a tool for the generation of universally quantified array invariants....
International audienceBy combining algorithmic learning, decision procedures, predicate abstraction,...
Abstract. Most of the properties established during program verification are either invariants or de...
Loop invariant generation, which automates the generation ofassertions that always hold at the entry...
A liquid type is an ordinary Hindley-Milner type annotated with a logical predicate that states the ...
An approach for automatically generating loop invariants using quantifier-elimination is proposed. A...
International audienceBy combining algorithmic learning, decision procedures, and predicate abstract...
In this paper we present a novel approach to automatically generate invariants for loops manipulatin...
Verifiers that can prove programs correct against their full functional specification require, for p...
Abstract—In recent years it has been shown that for many linear algebra operations it is possible to...
A general framework is presented for automating the discovery of loop invariants for imperative prog...
Provably correct software is one of the key challenges in our software-driven society. Program verif...
In this paper, we discuss a loop transformation framework that is based on integer non-singular ma...