A Formal Proof of Square Root and Division Elimination in Embedded Programs

Pierre Neron


The use of real numbers in a program can introduce differences between the expected and the actual behavior of the program, due to the finite representation of these numbers. Therefore, one may want to define programs using real numbers such that this difference vanishes. This paper defines a program transformation for a certain class of programs that improves the accuracy of the computations on real number representations by removing the square root and division operations from the original program in order to enable exact computation with addition, multiplication and subtraction. This transformation is meant to be used on embedded systems, therefore the produced programs have to respect constraints relative to this kind of code. In order to ensure that the transformation is correct, i.e. preserves the semantics, we also aim at specifying and proving this transformation using the PVS proof assistant.


Program Transformation; Arithmetic; Embedded Systems

Full Text:

PDF (English)

DOI: 10.6092/issn.1972-5787/3887

Copyright (c) 2013 Pierre Neron

Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 Unported License.