International audienceWe present a mechanized theory of program refinement that allows for the stepwise development of imperative programs in the Coq proof assistant. We formalize a design language with support for gradual refinement and a calculus which enforces correctness-by-construction. A notion of program design captures the hierarchy of refinement steps resulting from a development. The underlying theory follows the predicative programming paradigm where programs and specifications are both easily expressed as predicates, which fit naturally in the dependent type theory of the proof assistant
The refinement calculus for the development of programs from specifications is well suited to mechan...
The refinement calculus for the development of programs from specifications is well suited to mechan...
Existing verification technology, though theoretically adequate, is not directly applicable to the ...
Cette thèse s’intéresse à la programmation certifiée correcte dans le cadre formel fourni par l’assi...
The refinement calculus and type theory are both frameworks that support the specification and verif...
AbstractThe stepwise refinement technique is studied from a mathematical point of view. A relation o...
The refinement calculus provides a framework for the stepwise development of imperative programs fro...
The refinement calculus is a well-established theory for formal development of imperative program co...
We develop an explicit two level system that allows programmers to reason about the behavior of effe...
This paper explores the role for mechanised support for refining specifications to executable progra...
The refinement calculus is a formal technique for the development of programs which are provably cor...
We advocate an automated refinement approach to developing programs and their proofs. The approach i...
Morgan's approach to program development is a refinement calculus: using this method, programs are d...
Abstract. The goal of this lecture is to show how modern theorem provers—in this case, the Coq proof...
Existing refinement calculi provide frameworks for the stepwise development of imperative programs f...
The refinement calculus for the development of programs from specifications is well suited to mechan...
The refinement calculus for the development of programs from specifications is well suited to mechan...
Existing verification technology, though theoretically adequate, is not directly applicable to the ...
Cette thèse s’intéresse à la programmation certifiée correcte dans le cadre formel fourni par l’assi...
The refinement calculus and type theory are both frameworks that support the specification and verif...
AbstractThe stepwise refinement technique is studied from a mathematical point of view. A relation o...
The refinement calculus provides a framework for the stepwise development of imperative programs fro...
The refinement calculus is a well-established theory for formal development of imperative program co...
We develop an explicit two level system that allows programmers to reason about the behavior of effe...
This paper explores the role for mechanised support for refining specifications to executable progra...
The refinement calculus is a formal technique for the development of programs which are provably cor...
We advocate an automated refinement approach to developing programs and their proofs. The approach i...
Morgan's approach to program development is a refinement calculus: using this method, programs are d...
Abstract. The goal of this lecture is to show how modern theorem provers—in this case, the Coq proof...
Existing refinement calculi provide frameworks for the stepwise development of imperative programs f...
The refinement calculus for the development of programs from specifications is well suited to mechan...
The refinement calculus for the development of programs from specifications is well suited to mechan...
Existing verification technology, though theoretically adequate, is not directly applicable to the ...