Presentation is loading. Please wait.

Presentation is loading. Please wait.

Translation Validation via Linear Recursion Schemes Master Seminar Tobias Tebbi.

Similar presentations


Presentation on theme: "Translation Validation via Linear Recursion Schemes Master Seminar Tobias Tebbi."— Presentation transcript:

1 Translation Validation via Linear Recursion Schemes Master Seminar Tobias Tebbi

2 Translation Validation Goal Verified Compiler MethodImplement Validator that checks if input and output of compiler pass are equivalent. NeedsDecidable sufficient criterion for program equivalence

3 CPS Control Flow Graph

4 Unfolding the Procedures if

5 Program Equivalence If trees equal, then programs equivalent. This is decidable! [Sabelfeld2000] Many optimizations do not change the tree. It does not matter – which arguments/variables/registers are used. – when values are computed. But the branching structure does matter, e.g. which test is done first.

6 Linear Recursion Scheme Restriction with polynomial equivalence check linear: nesting forbidden

7 Simplifications for this Talk

8 Equality of Infinite Trees

9

10 Substitutions

11 Finite Equivalence Proofs

12 Unification

13 Universal Finite Equivalence Proofs

14 Decidability of Equivalence Equivalence of terms is semi-decidable. Non-equivalence is semi-decidable too: the trees must differ at some finite level. Thus equivalence is decidable. In the next talks, I will present an efficient procedure to decide equivalence by reducing the problem to a fragment of semi-unification.

15 Literature Fokkink, W. Unification for infinite sets of equations between finite terms. Information processing letters 62, 4 (1997), 183–188. Sabelfeld, V. The tree equivalence of linear recursion schemes. Theoretical Computer Science 238, 1–2 (2000), 1–29.


Download ppt "Translation Validation via Linear Recursion Schemes Master Seminar Tobias Tebbi."

Similar presentations


Ads by Google