Axiom-Based Transformations: Optimisation and Testing
Peer reviewed, Journal article
Published version
Date
2009-10-10Metadata
Show full item recordCollections
Original version
https://doi.org/10.1016/j.entcs.2009.09.038Abstract
Programmers typically have knowledge about properties of their programs that aren't explicitly expressed in the code properties that may be very useful for, e.g., compiler optimisation and automated testing. Although such information is sometimes written down in a formal or informal specification, it is generally not accessible to compilers and other tools. However, using the idea of concepts and axioms in the upcoming C++ standard, we may embed axioms with program code. In this paper, we sketch how such axioms can be interpreted as rewrite rules and test oracles. Rewrite rules together with user-defined transformation strategies allow us to implement program or library-specific optimisations.