AbstractWe introduce the idea of optimisation validation, which is to formally establish that an instance of an optimising transformation indeed improves with respect to some resource measure. This is related to, but in contrast with, translation validation, which aims to establish that a particular instance of a transformation undertaken by an optimising compiler is semantics preserving. Our main setting is a program logic for a subset of Java bytecode, which is sound and complete for a resource-annotated operational semantics. The latter employs resource algebras for measuring dynamic costs such as time, space and more elaborate examples. We describe examples of optimisation validation that we have formally verified in Isabelle/HOL using ...
AbstractPartial redundancy elimination is a subtle optimization which performs common subexpression ...
AbstractSemantics preservation between source and target program is the commonly accepted minimum re...
One significant disadvantage of interpreted bytecode languages, such as Java, is their low execution...
We introduce the idea of optimisation validation, which is to formally establish that an instance of...
AbstractWe introduce the idea of optimisation validation, which is to formally establish that an ins...
We introduce the idea of optimisation validation, which is to formally establish that an instance of...
AbstractThe paper presents approaches to the validation of optimizing compilers. The emphasis is on ...
We present the architecture of the Rosser toolkit that allows optimisations to be specified in a dom...
We introduce a reasoning infrastructure for proving statements about resource consumption in a fragm...
AbstractWe introduce a reasoning infrastructure for proving statements about resource consumption in...
AbstractA compiler optimization is sound if the optimized program that it produces is semantically e...
AbstractSemantics preservation between source and target program is the commonly accepted minimum re...
We introduce a reasoning infrastructure for proving statements on resource consumption in an abstrac...
In this dissertation, I describe the Peggy system for performing program optimization and translatio...
AbstractIn this paper, we show how refinement calculus provides a basis for translation validation o...
AbstractPartial redundancy elimination is a subtle optimization which performs common subexpression ...
AbstractSemantics preservation between source and target program is the commonly accepted minimum re...
One significant disadvantage of interpreted bytecode languages, such as Java, is their low execution...
We introduce the idea of optimisation validation, which is to formally establish that an instance of...
AbstractWe introduce the idea of optimisation validation, which is to formally establish that an ins...
We introduce the idea of optimisation validation, which is to formally establish that an instance of...
AbstractThe paper presents approaches to the validation of optimizing compilers. The emphasis is on ...
We present the architecture of the Rosser toolkit that allows optimisations to be specified in a dom...
We introduce a reasoning infrastructure for proving statements about resource consumption in a fragm...
AbstractWe introduce a reasoning infrastructure for proving statements about resource consumption in...
AbstractA compiler optimization is sound if the optimized program that it produces is semantically e...
AbstractSemantics preservation between source and target program is the commonly accepted minimum re...
We introduce a reasoning infrastructure for proving statements on resource consumption in an abstrac...
In this dissertation, I describe the Peggy system for performing program optimization and translatio...
AbstractIn this paper, we show how refinement calculus provides a basis for translation validation o...
AbstractPartial redundancy elimination is a subtle optimization which performs common subexpression ...
AbstractSemantics preservation between source and target program is the commonly accepted minimum re...
One significant disadvantage of interpreted bytecode languages, such as Java, is their low execution...