Publication | Open Access
Program Verification in the Presence of Complex Numbers, Functions with Branch Cuts etc
32
Citations
14
References
2012
Year
Unknown Venue
Program CheckingEngineeringVerificationComputer-aided VerificationComputational ComplexityFormal VerificationSoftware AnalysisNumerical ProgramsValidated NumericsMechanical VerificationNumerical PrecisionComplex NumbersReal Data TypeAbstract InterpretationComputer EngineeringComputer ScienceBranch Cuts EtcSoftware VerificationProgram AnalysisAutomated ReasoningSoftware TestingProgram VerificationFormal MethodsComputer AlgebraInverse FunctionSymbolic ExecutionComputability Theory
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.
| Year | Citations | |
|---|---|---|
Page 1
Page 1