Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
422586 | Electronic Notes in Theoretical Computer Science | 2007 | 16 Pages |
Abstract
In this paper, we show how our program transformation algorithm called distillation can not only be used for the optimisation of programs, but can also be used to facilitate program verification. Using the distillation algorithm, programs are transformed into a specialised form in which functions are tail recursive, and very few intermediate structures are created. We then show how properties of this specialised form of program can be easily verified by the application of inductive proof rules. We therefore argue that the distillation algorithm is an ideal candidate for inclusion within compilers as it facilitates the two goals of program optimization and verification.
Related Topics
Physical Sciences and Engineering
Computer Science
Computational Theory and Mathematics