1
Encoding Induction in Correctness Proofs
- f Program Transformations as a
Encoding Induction in Correctness Proofs of Program Transformations - - PowerPoint PPT Presentation
Encoding Induction in Correctness Proofs of Program Transformations as a Termination Problem Conrad Rau, David Sabel and Manfred Schmidt-Schau Goethe-University, Frankfurt am Main, Germany WST 2012, Obergurgl, Austria 1 Introduction
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 2/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 3/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 4/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 5/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
1
2
m
T
1 Determine all overlaps e2
2 Construct converging reduction sequence for e0
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 6/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
m
1
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 7/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet
iS,llet sr,a
sr,a
iS,llet sr,lll,+
sr,lll,+
iS,llet sr,a
sr,a
sr,llet ·
iS,llet sr,a
sr,a
iS,llet
iS,llet sr,lll,+
sr,lll,+
iS,llet
iS,llet
T
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 8/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 9/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet e0
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 9/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet e0
iS,llet
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 9/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet e0
iS,llet
sr,l1
sr,l2
sr,ln
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 9/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet e0
iS,llet
sr,l1
sr,l2
sr,ln
iS,llet sr,a
sr,a
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 9/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet e0
iS,llet
sr,l1
sr,l1
sr,l2
sr,ln
iS,llet sr,a
sr,a
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 9/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet e0
iS,llet
sr,l1
sr,l1
sr,l2
sr,ln
iS,llet sr,a
sr,a
sr,l1
sr,l2
sr,ln
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 9/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet e0
iS,llet
sr,l1
sr,l1
sr,l2
sr,ln
iS,llet sr,a
sr,a
sr,l1
sr,l2
sr,ln
iS,llet sr,a
sr,a
iS,llet
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 9/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet e0
iS,llet
sr,l1
sr,l1
sr,l2
sr,ln
iS,llet sr,a
sr,a
sr,l1
sr,l1
sr,l2
2
sr,ln
iS,llet sr,a
sr,a
iS,llet
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 9/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet e0
iS,llet
sr,l1
sr,l1
sr,l2
sr,ln
iS,llet sr,a
sr,a
sr,l1
sr,l1
sr,l2
2
sr,ln
iS,llet sr,a
sr,a
iS,llet
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 9/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet e0
iS,llet
sr,l1
sr,l1
sr,l2
sr,ln
iS,llet sr,a
sr,a
sr,l1
sr,l1
sr,l2
2
sr,ln
iS,llet sr,a
sr,a
iS,llet
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 9/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 10/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 11/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,seq
iS,seq sr,a
sr,a
iS,seq sr,a
sr,a
sr,seq ·
iS,seq sr,a
sr,a
iS,seq
iS,seq
sr,cp
iS,seq
iS,seq
iS,seq
iS,seq
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 12/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet sr,lll,+
sr,lll,+
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 13/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet sr,lll,+
sr,lll,+
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 13/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
iS,llet sr,lll,+
sr,lll,+
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 13/14
Introduction Calculus & Program Transformations Proving Correctness Encoding Conclusion
David Sabel Correctness Proofs of Program Transformations as a Termination Problem C. Rau, D. Sabel, M. Schmidt-Schauß 14/14