Program annotations under the form of function pre/postconditions are crucial for many software engineering and program verification applications. Unfortunately, such annotations are rarely available and must be retrofit by hand. In this paper, we explore how Constraint Acquisition (CA), a learning framework from Constraint Programming, can be leveraged to automatically infer program preconditions in a black-box manner, from input-output observations. We propose PreCA, the first ever framework based on active constraint acquisition dedicated to infer memory-related preconditions. PreCA overpasses prior techniques based on program analysis and formal methods, offering well-identified guarantees and returning more precise results in practic...
Constraint-based programanalyses are appealing because elaborate analyses can be described with a co...
Two fundamental challenges in program synthesis, i.e. learning programs from specifications, are (1)...
Abstract. There is a tension in program analysis between precision and eciency. In constraint-based ...
International audienceProgram annotations under the form of function pre/postconditions are crucial ...
Abstract. Program verification relies on the construction of auxiliary assertions describing various...
Software failures remain costly and the need for more effective analysis techniques for finding faul...
We present a method for automatic inference of conditions on the initial states of a program that gu...
Abstract. The idea of constraint based program analysis is to translate a given program into a set o...
International audienceConstraint acquisition (CA) is a method for learning users' concepts by repres...
The process of understanding a source code in a high-level programming language involves complex com...
To use constraint programming, one needs to formulate a model that consists of a set of constraints....
Constraint programming can be divided very crudely into modeling and solving. Modeling defines the p...
Constraint programming is a technology which is now widely used to solve com-binatorial problems in ...
Constraint programming is a technology which is now widely used to solve combinatorial problems in ...
. There is a tension in program analysis between precision and efficiency. In constraint-based progr...
Constraint-based programanalyses are appealing because elaborate analyses can be described with a co...
Two fundamental challenges in program synthesis, i.e. learning programs from specifications, are (1)...
Abstract. There is a tension in program analysis between precision and eciency. In constraint-based ...
International audienceProgram annotations under the form of function pre/postconditions are crucial ...
Abstract. Program verification relies on the construction of auxiliary assertions describing various...
Software failures remain costly and the need for more effective analysis techniques for finding faul...
We present a method for automatic inference of conditions on the initial states of a program that gu...
Abstract. The idea of constraint based program analysis is to translate a given program into a set o...
International audienceConstraint acquisition (CA) is a method for learning users' concepts by repres...
The process of understanding a source code in a high-level programming language involves complex com...
To use constraint programming, one needs to formulate a model that consists of a set of constraints....
Constraint programming can be divided very crudely into modeling and solving. Modeling defines the p...
Constraint programming is a technology which is now widely used to solve com-binatorial problems in ...
Constraint programming is a technology which is now widely used to solve combinatorial problems in ...
. There is a tension in program analysis between precision and efficiency. In constraint-based progr...
Constraint-based programanalyses are appealing because elaborate analyses can be described with a co...
Two fundamental challenges in program synthesis, i.e. learning programs from specifications, are (1)...
Abstract. There is a tension in program analysis between precision and eciency. In constraint-based ...