In this paper, we show how our program transformation algorithm called distillation can not only be used for the optimisation of programs, but can also be used to facilitate program verification. Using the distillation algorithm, programs are transformed into a specialised form in which functions are tail recursive, and very few intermediate structures are created. We then show how properties of this specialised form of program can be easily verified by the application of inductive proof rules. We therefore argue that the distillation algorithm is an ideal candidate for inclusion within compilers as it facilitates the two goals of program optimization and verification
Correct software requires compilers to work correctly. Especially code generation can be an error pr...
Abstract. This submission presents our understanding of the Grand Challenge and propose an agenda on...
We present a program verification framework based on coinduction, which makes it feasible to verif...
In this paper, we show how our program transformation algorithm called distillation can not only be ...
AbstractIn this paper, we show how our program transformation algorithm called distillation can not ...
non-peer-reviewedIn this paper, we give a re-formulation of our previously defined distillation algo...
International audienceGiven the complexity and sophistication of code generation and optimization al...
This thesis is set in the domain of deductive verification of programs, which consists of transformi...
Automatically generated tools can significantly improve program-mer productivity. For example, parse...
This thesis is concerned with ways of proving the correctness of computer programs. The first part ...
Unlike testing, formal verification can not only prove the presence of errors, but their absence as ...
Thesis (Ph.D.)--University of Washington, 2018Modern computer systems rely on the correctness of at ...
International audienceFormal verification of software or hardware systems — be it by model checking,...
Previous work on rewriting and reachability logic establishes a vision for a language-agnostic progr...
This paper presents an approach to compiler correctness in which the compiler generates a proof that...
Correct software requires compilers to work correctly. Especially code generation can be an error pr...
Abstract. This submission presents our understanding of the Grand Challenge and propose an agenda on...
We present a program verification framework based on coinduction, which makes it feasible to verif...
In this paper, we show how our program transformation algorithm called distillation can not only be ...
AbstractIn this paper, we show how our program transformation algorithm called distillation can not ...
non-peer-reviewedIn this paper, we give a re-formulation of our previously defined distillation algo...
International audienceGiven the complexity and sophistication of code generation and optimization al...
This thesis is set in the domain of deductive verification of programs, which consists of transformi...
Automatically generated tools can significantly improve program-mer productivity. For example, parse...
This thesis is concerned with ways of proving the correctness of computer programs. The first part ...
Unlike testing, formal verification can not only prove the presence of errors, but their absence as ...
Thesis (Ph.D.)--University of Washington, 2018Modern computer systems rely on the correctness of at ...
International audienceFormal verification of software or hardware systems — be it by model checking,...
Previous work on rewriting and reachability logic establishes a vision for a language-agnostic progr...
This paper presents an approach to compiler correctness in which the compiler generates a proof that...
Correct software requires compilers to work correctly. Especially code generation can be an error pr...
Abstract. This submission presents our understanding of the Grand Challenge and propose an agenda on...
We present a program verification framework based on coinduction, which makes it feasible to verif...