In this dissertation, I describe the Peggy system for performing program optimization and translation validation. Peggy is based on the concept of Equality Saturation, in which axiomatic reasoning is applied to a program to produce exponentially many equivalent versions of that program, which can then be explored simultaneously. This is achieved by using a custom intermediate representation that facilitates mathematical reasoning over programs. I will specifically address some of the engineering challenges posed by making a working implementation of the Equality Saturation technique, as well as the major applications to which we have applied it. I implemented front-ends for Peggy to convert both Java bytecode programs and LLVM programs to a...
© 2016 Dr. Kathryn Glenn FrancisConstraint solving technology has been successfully applied to large...
We introduce a satisfiability solver for first order formulas written in a modern object oriented pr...
We have implemented a reasoning system, called BREAD, which includes truth maintenance, equality, an...
In this dissertation, I describe the Peggy system for performing program optimization and translatio...
Abstract. Optimizations in a traditional compiler are applied sequentially, with each optimization d...
Traditional optimizers have viewed imperative functions as a sequence or graph of commands. Some of ...
Determining equality of objects in Java requires the implementation of equals and hashCode methods. ...
A simple technique for reasoning about equalities that is fast and complete for ground formulas with...
Thesis (Ph.D.)--University of Washington, 2021Programming language tools like compilers, optimizers,...
Determining equality of objects in Java requires the implementation of equals and hashCode methods. ...
We introduce the idea of optimisation validation, which is to formally establish that an instance of...
We introduce the idea of optimisation validation, which is to formally establish that an instance of...
Manually implementing equals (for object comparisons) and hashCode (for object hashing) methods in l...
AbstractWe introduce the idea of optimisation validation, which is to formally establish that an ins...
AbstractPartial redundancy elimination is a subtle optimization which performs common subexpression ...
© 2016 Dr. Kathryn Glenn FrancisConstraint solving technology has been successfully applied to large...
We introduce a satisfiability solver for first order formulas written in a modern object oriented pr...
We have implemented a reasoning system, called BREAD, which includes truth maintenance, equality, an...
In this dissertation, I describe the Peggy system for performing program optimization and translatio...
Abstract. Optimizations in a traditional compiler are applied sequentially, with each optimization d...
Traditional optimizers have viewed imperative functions as a sequence or graph of commands. Some of ...
Determining equality of objects in Java requires the implementation of equals and hashCode methods. ...
A simple technique for reasoning about equalities that is fast and complete for ground formulas with...
Thesis (Ph.D.)--University of Washington, 2021Programming language tools like compilers, optimizers,...
Determining equality of objects in Java requires the implementation of equals and hashCode methods. ...
We introduce the idea of optimisation validation, which is to formally establish that an instance of...
We introduce the idea of optimisation validation, which is to formally establish that an instance of...
Manually implementing equals (for object comparisons) and hashCode (for object hashing) methods in l...
AbstractWe introduce the idea of optimisation validation, which is to formally establish that an ins...
AbstractPartial redundancy elimination is a subtle optimization which performs common subexpression ...
© 2016 Dr. Kathryn Glenn FrancisConstraint solving technology has been successfully applied to large...
We introduce a satisfiability solver for first order formulas written in a modern object oriented pr...
We have implemented a reasoning system, called BREAD, which includes truth maintenance, equality, an...