Abstract. The goal of this lecture is to show how modern theorem provers—in this case, the Coq proof assistant—can be used to mech-anize the specification of programming languages and their semantics, and to reason over individual programs and over generic program trans-formations, as typically found in compilers. The topics covered include: operational semantics (small-step, big-step, definitional interpreters); a simple form of denotational semantics; axiomatic semantics and Hoare logic; generation of verification conditions, with application to program proof; compilation to virtual machine code and its proof of correctness; an example of an optimizing program transformation (dead code elimi-nation) and its proof of correctness
Formalizing meta-theory, or proofs about programming languages, in a proof assistant has many well-k...
International audienceBasing program analyses on formal semantics has a long and successful traditio...
Compilers, and especially optimizing compilers, are complicated programs. Bugs in compilers happen, ...
The goal of this lecture is to show how modern theorem provers---in this case, the Coq proof assista...
This paper reports on the development and formal certification (proof of semantic preservation) of a...
International audienceThe formal verification of compilers and related programming tools depends cru...
International audienceThis paper reports on the design of adequate on-machine formal semantics for a...
International audienceA common belief is that formalizing semantics of programming languages require...
MasterThis course is devised as an introduction to different techniques used in studying programming...
We present a program verification framework based on coinduction, which makes it feasible to verif...
I report on an experience using the Coq proof assistant to develop a program verification tool with ...
Abstract. Reasoning about programming languages with non-deter-ministic semantics entails many diffi...
A handbook to the Coq software for writing and checking mathematical proofs, with a practical engine...
This paper deals with program verification and more precisely with the question of how to provide ve...
Basing program analyses on formal semantics has a long and successful tradition in the logic program...
Formalizing meta-theory, or proofs about programming languages, in a proof assistant has many well-k...
International audienceBasing program analyses on formal semantics has a long and successful traditio...
Compilers, and especially optimizing compilers, are complicated programs. Bugs in compilers happen, ...
The goal of this lecture is to show how modern theorem provers---in this case, the Coq proof assista...
This paper reports on the development and formal certification (proof of semantic preservation) of a...
International audienceThe formal verification of compilers and related programming tools depends cru...
International audienceThis paper reports on the design of adequate on-machine formal semantics for a...
International audienceA common belief is that formalizing semantics of programming languages require...
MasterThis course is devised as an introduction to different techniques used in studying programming...
We present a program verification framework based on coinduction, which makes it feasible to verif...
I report on an experience using the Coq proof assistant to develop a program verification tool with ...
Abstract. Reasoning about programming languages with non-deter-ministic semantics entails many diffi...
A handbook to the Coq software for writing and checking mathematical proofs, with a practical engine...
This paper deals with program verification and more precisely with the question of how to provide ve...
Basing program analyses on formal semantics has a long and successful tradition in the logic program...
Formalizing meta-theory, or proofs about programming languages, in a proof assistant has many well-k...
International audienceBasing program analyses on formal semantics has a long and successful traditio...
Compilers, and especially optimizing compilers, are complicated programs. Bugs in compilers happen, ...