. Starting from a denotational and a term-rewriting based operational semantics (an interpreter) for a small functional language, we present a correctness proof of the interpreter w.r.t. the denotational semantics. The complete proof has been formalized in the logic LCF and checked with the theorem prover Isabelle. Based on this proof, conclusions for mechanical theorem proving in general are drawn. 1 Introduction Compiler and interpreter verification is a key component in the correctness argument for any software system written in a high-level language. Otherwise the carefully verified high-level programs might be compiled or interpreted incorrectly. Proving the correctness of machine oriented programs [3] instead may be inevitable ...
Programming language implementations bridge the gap between what the program developer sees and unde...
International audienceThe formal verification of compilers and related programming tools depends cru...
International audienceA common belief is that formalizing semantics of programming languages require...
In a series of papers in the early 80's we proposed a paradigm for semantics-based compiler cor...
International audienceInterpreters are complex pieces of software: even if the abstract interpretati...
AbstractCorrectness of compilation is important for the reliability of software. New techniques to g...
. In this paper we show that the critical part of a correctness proof for implementations of higher-...
Correctness of compilation is important for the reliability of software. New techniques to guarantee...
Abstract. The goal of this lecture is to show how modern theorem provers—in this case, the Coq proof...
Formal verification of compiler correctness requires substantial effort. A particular challenge is l...
Interpreters and compilers are two different ways of implementing programming languages. An interpre...
The paper shows how compiler correctness can be proved, provided that semanticsof the source languag...
Formal description of a language gives insight into the language itself. The formal description may ...
This paper sketches a rigorous correctness proof of a compiler executable. We will emphasize the cen...
Most software systems are described in high-level model or programming languages. Their runtime beha...
Programming language implementations bridge the gap between what the program developer sees and unde...
International audienceThe formal verification of compilers and related programming tools depends cru...
International audienceA common belief is that formalizing semantics of programming languages require...
In a series of papers in the early 80's we proposed a paradigm for semantics-based compiler cor...
International audienceInterpreters are complex pieces of software: even if the abstract interpretati...
AbstractCorrectness of compilation is important for the reliability of software. New techniques to g...
. In this paper we show that the critical part of a correctness proof for implementations of higher-...
Correctness of compilation is important for the reliability of software. New techniques to guarantee...
Abstract. The goal of this lecture is to show how modern theorem provers—in this case, the Coq proof...
Formal verification of compiler correctness requires substantial effort. A particular challenge is l...
Interpreters and compilers are two different ways of implementing programming languages. An interpre...
The paper shows how compiler correctness can be proved, provided that semanticsof the source languag...
Formal description of a language gives insight into the language itself. The formal description may ...
This paper sketches a rigorous correctness proof of a compiler executable. We will emphasize the cen...
Most software systems are described in high-level model or programming languages. Their runtime beha...
Programming language implementations bridge the gap between what the program developer sees and unde...
International audienceThe formal verification of compilers and related programming tools depends cru...
International audienceA common belief is that formalizing semantics of programming languages require...