Program verification in the presence of complex numbers, functions with branch cuts etc

James H. Davenport, Russell Bradford, Matthew England, David Wilson

Research output: Chapter in Book/Report/Conference proceedingConference proceeding

23 Citations (Scopus)
5 Downloads (Pure)

Abstract

In considering the reliability of numerical programs, it is normal to ''limit our study to the semantics dealing with numerical precision'' (Martel, 2005). On the other hand, there is a great deal of work on the reliability of programs that essentially ignores the numerics. The thesis of this paper is that there is a class of problems that fall between these two, which could be described as ''does the low-level arithmetic implement the high-level mathematics''. Many of these problems arise because mathematics, particularly the mathematics of the complex numbers, is more difficult than expected: for example the complex function log is not continuous, writing down a program to compute an inverse function is more complicated than just solving an equation, and many algebraic simplification rules are not universally valid. The good news is that these problems are theoretically capable of being solved, and are practically close to being solved, but not yet solved, in several real-world examples. However, there is still a long way to go before implementations match the theoretical possibilities.

Original languageEnglish
Title of host publicationProceedings - 14th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC 2012
PublisherIEEE
Pages83-88
Number of pages6
ISBN (Print)9780769549347
DOIs
Publication statusPublished - 2012
Externally publishedYes
Event14th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC 2012 - Timisoara, Romania
Duration: 26 Sep 201229 Sep 2012

Conference

Conference14th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC 2012
CountryRomania
CityTimisoara
Period26/09/1229/09/12

Fingerprint

Program Verification
Complex number
Branch
Inverse function
Complex Functions
Numerics
Simplification
Semantics
Valid

Bibliographical note

© 2012 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.

Copyright © and Moral Rights are retained by the author(s) and/ or other copyright owners. A copy can be downloaded for personal non-commercial research or study, without prior permission or charge. This item cannot be reproduced or quoted extensively from without first obtaining permission in writing from the copyright holder(s). The content must not be changed in any way or sold commercially in any format or medium without the formal permission of the copyright holders.

Keywords

  • algebra
  • branch cut
  • singularity
  • Verification

ASJC Scopus subject areas

  • Applied Mathematics
  • Numerical Analysis

Cite this

Davenport, J. H., Bradford, R., England, M., & Wilson, D. (2012). Program verification in the presence of complex numbers, functions with branch cuts etc. In Proceedings - 14th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC 2012 (pp. 83-88). [6481015] IEEE. https://doi.org/10.1109/SYNASC.2012.68

Program verification in the presence of complex numbers, functions with branch cuts etc. / Davenport, James H.; Bradford, Russell; England, Matthew; Wilson, David.

Proceedings - 14th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC 2012. IEEE, 2012. p. 83-88 6481015.

Research output: Chapter in Book/Report/Conference proceedingConference proceeding

Davenport, JH, Bradford, R, England, M & Wilson, D 2012, Program verification in the presence of complex numbers, functions with branch cuts etc. in Proceedings - 14th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC 2012., 6481015, IEEE, pp. 83-88, 14th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC 2012, Timisoara, Romania, 26/09/12. https://doi.org/10.1109/SYNASC.2012.68
Davenport JH, Bradford R, England M, Wilson D. Program verification in the presence of complex numbers, functions with branch cuts etc. In Proceedings - 14th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC 2012. IEEE. 2012. p. 83-88. 6481015 https://doi.org/10.1109/SYNASC.2012.68
Davenport, James H. ; Bradford, Russell ; England, Matthew ; Wilson, David. / Program verification in the presence of complex numbers, functions with branch cuts etc. Proceedings - 14th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC 2012. IEEE, 2012. pp. 83-88
@inproceedings{5a9e3d06861342d2a8e07d3da8f031df,
title = "Program verification in the presence of complex numbers, functions with branch cuts etc",
abstract = "In considering the reliability of numerical programs, it is normal to ''limit our study to the semantics dealing with numerical precision'' (Martel, 2005). On the other hand, there is a great deal of work on the reliability of programs that essentially ignores the numerics. The thesis of this paper is that there is a class of problems that fall between these two, which could be described as ''does the low-level arithmetic implement the high-level mathematics''. Many of these problems arise because mathematics, particularly the mathematics of the complex numbers, is more difficult than expected: for example the complex function log is not continuous, writing down a program to compute an inverse function is more complicated than just solving an equation, and many algebraic simplification rules are not universally valid. The good news is that these problems are theoretically capable of being solved, and are practically close to being solved, but not yet solved, in several real-world examples. However, there is still a long way to go before implementations match the theoretical possibilities.",
keywords = "algebra, branch cut, singularity, Verification",
author = "Davenport, {James H.} and Russell Bradford and Matthew England and David Wilson",
note = "{\circledC} 2012 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works. Copyright {\circledC} and Moral Rights are retained by the author(s) and/ or other copyright owners. A copy can be downloaded for personal non-commercial research or study, without prior permission or charge. This item cannot be reproduced or quoted extensively from without first obtaining permission in writing from the copyright holder(s). The content must not be changed in any way or sold commercially in any format or medium without the formal permission of the copyright holders.",
year = "2012",
doi = "10.1109/SYNASC.2012.68",
language = "English",
isbn = "9780769549347",
pages = "83--88",
booktitle = "Proceedings - 14th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC 2012",
publisher = "IEEE",

}

TY - GEN

T1 - Program verification in the presence of complex numbers, functions with branch cuts etc

AU - Davenport, James H.

AU - Bradford, Russell

AU - England, Matthew

AU - Wilson, David

N1 - © 2012 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works. Copyright © and Moral Rights are retained by the author(s) and/ or other copyright owners. A copy can be downloaded for personal non-commercial research or study, without prior permission or charge. This item cannot be reproduced or quoted extensively from without first obtaining permission in writing from the copyright holder(s). The content must not be changed in any way or sold commercially in any format or medium without the formal permission of the copyright holders.

PY - 2012

Y1 - 2012

N2 - In considering the reliability of numerical programs, it is normal to ''limit our study to the semantics dealing with numerical precision'' (Martel, 2005). On the other hand, there is a great deal of work on the reliability of programs that essentially ignores the numerics. The thesis of this paper is that there is a class of problems that fall between these two, which could be described as ''does the low-level arithmetic implement the high-level mathematics''. Many of these problems arise because mathematics, particularly the mathematics of the complex numbers, is more difficult than expected: for example the complex function log is not continuous, writing down a program to compute an inverse function is more complicated than just solving an equation, and many algebraic simplification rules are not universally valid. The good news is that these problems are theoretically capable of being solved, and are practically close to being solved, but not yet solved, in several real-world examples. However, there is still a long way to go before implementations match the theoretical possibilities.

AB - In considering the reliability of numerical programs, it is normal to ''limit our study to the semantics dealing with numerical precision'' (Martel, 2005). On the other hand, there is a great deal of work on the reliability of programs that essentially ignores the numerics. The thesis of this paper is that there is a class of problems that fall between these two, which could be described as ''does the low-level arithmetic implement the high-level mathematics''. Many of these problems arise because mathematics, particularly the mathematics of the complex numbers, is more difficult than expected: for example the complex function log is not continuous, writing down a program to compute an inverse function is more complicated than just solving an equation, and many algebraic simplification rules are not universally valid. The good news is that these problems are theoretically capable of being solved, and are practically close to being solved, but not yet solved, in several real-world examples. However, there is still a long way to go before implementations match the theoretical possibilities.

KW - algebra

KW - branch cut

KW - singularity

KW - Verification

U2 - 10.1109/SYNASC.2012.68

DO - 10.1109/SYNASC.2012.68

M3 - Conference proceeding

SN - 9780769549347

SP - 83

EP - 88

BT - Proceedings - 14th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC 2012

PB - IEEE

ER -