## Generic Compilation Schemes for Simple Programming Constructs (1999)

Citations: | 1 - 1 self |

### BibTeX

@TECHREPORT{Dold99genericcompilation,

author = {A. Dold and F. W. Von Henke and H. Pfeifer and H. Rueß},

title = {Generic Compilation Schemes for Simple Programming Constructs},

institution = {},

year = {1999}

}

### OpenURL

### Abstract

datatype Expr and an evaluation function eval ( 77 ) then define syntax and semantics of expressions where the state (SState) is defined as a mapping from identifiers to values. 77 % --- semantics of expressions --- eval(e:Expr)(s:SState) : RECURSIVE Value = CASES e OF const(val) : val, varid(name) : s(name), unopr(op,arg) : MUnop(op)(eval(arg)(s)), binopr(op,left,right) : MBinop(op)(eval(left)(s), eval(right)(s)) ENDCASES MEASURE e BY !! Since boolean expressions are treated in a similar way as expressions, we do not define them explicitly but instead suppose that an (uninterpreted) type BExp together with an evaluation function eval bexp : [BExp -? [SState -? bool]] is given. Syntax and semantics of statements are defined by importing the generic theories for simple statements and control structures: % --- import syntax and semantics of simple statements IMPORTING simplestatements[VarId, Expr, Value, eval] % --- import syntax and semantics of control structures IMPORTING ctrlstruc[B...

### Citations

533 | PVS: A Prototype Verification System
- Shankar
- 1992
(Show Context)
Citation Context ...f the former; this actually results in a reduction of the overall verification effort. The formal development has been carried out with the assistance of the specification and verification system PVS =-=[15, 16]-=-. PVS is particularly suitable for the task because it provides the necessary constructs for specifying parameterized theories, including constraining assumptions on parameters. The compilation theori... |

306 | Formal verification for fault-tolerant architectures: Prolegomena to the design of PVS
- Owre, Rushby, et al.
- 1995
(Show Context)
Citation Context ...f the former; this actually results in a reduction of the overall verification effort. The formal development has been carried out with the assistance of the specification and verification system PVS =-=[15, 16]-=-. PVS is particularly suitable for the task because it provides the necessary constructs for specifying parameterized theories, including constraining assumptions on parameters. The compilation theori... |

49 | A Mechanically Verified Language Implementation - Moore - 1989 |

41 | Compiler verification in LF - Hannan, Pfenning - 1992 |

38 | Refinement algebra proves correctness of compiling specifications - Hoare - 1990 |

30 | A mechanically verified code generator
- Young
- 1989
(Show Context)
Citation Context ...on Verification of compiler correctness is a much-studied area. Many different approaches have been taken, usually with mechanized support to manage the complexity of specifications and proofs (e.g., =-=[2--4,6,8--12,18--21,23]-=-). Most of these studies address the verification of a specific compiler for a particular language; furthermore, specifications and proofs tend to be monolithic and lacking modular structure. As a con... |

26 |
Toward compiler implementation correctness proofs
- Chirica, Martin
- 1986
(Show Context)
Citation Context ... commutativity of a kind of diagram as given in Fig. 1. Correctness is established by comparing the semantics of source programs and their compilations. As noticed, for example, by Chirica and Martin =-=[5]-=-, this is only one aspect of compiler correctness. Another important aspect is the correctness of compiler implementation with respect to the specification. In this paper we concentrate on the correct... |

24 | An Algebraic Approach to Compiler Design - Sampaio - 1997 |

23 | Compiler Specification and Verification - Polak - 1981 |

18 | Compiler correctness and implementation verification: The Verifix approach. In poster session of CC’96
- Goerigk, Dold, et al.
- 1996
(Show Context)
Citation Context ...the compiled program produces a regular result, this result must correspond to the one produced by the source program. A more detailed discussion concerning this notion of correctness can be found in =-=[7]-=-. More precisely, let Statement denote the type of abstract source syntax (statements), source sem its semantics given as a partial function on source states SState. Let further Code denote the type o... |

13 | A theory of generic interpreters
- Windley
- 1993
(Show Context)
Citation Context ...ications of the languages are generic only in the sense that they abstract from the specific word size, and the set of arithmetic and comparison operations available on the target machine. P. Windley =-=[22]-=- uses a generic microprocessor specification in the context of microprocessor verification; he abstracts from the state and effects of individual instructions and provides a definition of an interpret... |

12 |
Modular Compiler Verification
- Muller-Olm
- 1996
(Show Context)
Citation Context ...oncerned with different abstraction levels for the target machine; this is in contrast to the approach presented here, which focuses on separating the compilation of different language constructs. In =-=[13]-=-, Muller-Olm considers the translation of control structures of a simple while language into linear machine code with relative jumps. Starting from a denotational semantics of while programs and an op... |

11 | A verified compiler for a verified microprocessor - Joyce - 1989 |

9 | A Mechanically Verified Assembly-Level Language - Piton - 1996 |

8 | Experiences with Software Specification and Verification Using - Broy - 1992 |

4 |
Formalizing FixedPoint Theory
- Bartels, Dold, et al.
- 1996
(Show Context)
Citation Context ...t comprehensive strategies manage to generate proofs fully automatically. 2 Basic Concepts In this section we summarize the basic concepts needed in this paper. The first two subsections are based on =-=[1, 17]-=-, where a more comprehensive treatment can be found. Fixed-Point Theory Defining the semantics of loops requires fixed-point theory. In [1] we have developed a comprehensive formalization of domain an... |

4 | Interpreter verification for a functional language - Broy, Hinkel, et al. - 1994 |

3 | Mechanized Semantics of Simple Imperative Programming Constructs. Ulmer Informatik-Berichte 96-11, Universitat Ulm, Fakultat fur Informatik
- Pfeifer, Dold, et al.
- 1996
(Show Context)
Citation Context ...t comprehensive strategies manage to generate proofs fully automatically. 2 Basic Concepts In this section we summarize the basic concepts needed in this paper. The first two subsections are based on =-=[1, 17]-=-, where a more comprehensive treatment can be found. Fixed-Point Theory Defining the semantics of loops requires fixed-point theory. In [1] we have developed a comprehensive formalization of domain an... |

2 | A Comparative Study of Theorem Provers: Proving Correctness of Compiling Specifications - Sampaio - 1990 |

1 | A Computer Proof of the Correctness of a Simple Optimizing Compiler for Expressions - Boyer, Moore - 1977 |

1 |
A Verified Vista Implementation - Final Report
- Curzon
- 1993
(Show Context)
Citation Context ...on Verification of compiler correctness is a much-studied area. Many different approaches have been taken, usually with mechanized support to manage the complexity of specifications and proofs (e.g., =-=[2--4,6,8--12,18--21,23]-=-). Most of these studies address the verification of a specific compiler for a particular language; furthermore, specifications and proofs tend to be monolithic and lacking modular structure. As a con... |

1 | Proof Movie -- A Proof with the Boyer-Moore Prover - Weber-Wulff - 1993 |