AbstractWe demonstrate a method for describing data-flow analyses based program optimizations as compositional type systems with a transformation component. Analysis results are presented in terms of types ascribed to expressions and statements, certifiable by type derivations, and the transformation component carries out the optimizations that the type derivations license. We describe dead code elimination and common subexpression elimination. In the case of common subexpression elimination we circumvent non-compositionality with a combined type system for a combination of two analyses. The motivation of this work lies in certified code applications, where an optimization of a program must be supported by a checkable justification. As an e...
Building verified compilers is difficult, especially when complex analyses such as type checking or ...
Software systems are ubiquitous. Failure in safety- and security-critical systems, e.g., the control...
AbstractTurning type and effect deduction systems into an algorithm is a tedious and error-prone job...
AbstractWe demonstrate a method for describing data-flow analyses based program optimizations as com...
We demonstrate a method for describing data-flow analyses based program opti-mizations as compositio...
AbstractPartial redundancy elimination is a subtle optimization which performs common subexpression ...
We present an automated technique for generating compiler op-timizations from examples of concrete p...
Introduction Imperative program optimizations based on data-flow analyses are usually presented in a...
Program transformation concerns the derivation of an efficient program by applying correctness-pres...
AbstractBuilding verified compilers is difficult, especially when complex analyses such as type chec...
We show that a wide class of bidirectional data-flow analyses and program optimizations based on the...
AbstractA program analysis is compositional when the analysis result for a particular program fragme...
. In the proofs as programs methodology a program is derived from a formal constructive proof. Becau...
The use of *proof plans* -- formal patterns of reasoning for theorem proving -- to control the (auto...
AbstractA compiler optimization is sound if the optimized program that it produces is semantically e...
Building verified compilers is difficult, especially when complex analyses such as type checking or ...
Software systems are ubiquitous. Failure in safety- and security-critical systems, e.g., the control...
AbstractTurning type and effect deduction systems into an algorithm is a tedious and error-prone job...
AbstractWe demonstrate a method for describing data-flow analyses based program optimizations as com...
We demonstrate a method for describing data-flow analyses based program opti-mizations as compositio...
AbstractPartial redundancy elimination is a subtle optimization which performs common subexpression ...
We present an automated technique for generating compiler op-timizations from examples of concrete p...
Introduction Imperative program optimizations based on data-flow analyses are usually presented in a...
Program transformation concerns the derivation of an efficient program by applying correctness-pres...
AbstractBuilding verified compilers is difficult, especially when complex analyses such as type chec...
We show that a wide class of bidirectional data-flow analyses and program optimizations based on the...
AbstractA program analysis is compositional when the analysis result for a particular program fragme...
. In the proofs as programs methodology a program is derived from a formal constructive proof. Becau...
The use of *proof plans* -- formal patterns of reasoning for theorem proving -- to control the (auto...
AbstractA compiler optimization is sound if the optimized program that it produces is semantically e...
Building verified compilers is difficult, especially when complex analyses such as type checking or ...
Software systems are ubiquitous. Failure in safety- and security-critical systems, e.g., the control...
AbstractTurning type and effect deduction systems into an algorithm is a tedious and error-prone job...