A set of Ada packages for high-precision calculations

  • Authors:
  • B. G. S. Doman;C. J. Pursglove;W. M. Coen

  • Affiliations:
  • Univ. of Liverpool, Liverpool, UK;N. A. Software Ltd., Liverpool, UK;N. A. Software Ltd., Liverpool, UK

  • Venue:
  • ACM Transactions on Mathematical Software (TOMS)
  • Year:
  • 1995

Quantified Score

Hi-index 0.01

Visualization

Abstract

The packages described here are designed to perform efficient high-accuracy calculations in cases where there can be serious loss of significance due to rounding errors. Numbers are represented by a value part with a variable number of digits in the mantissa and an error estimate which is updated throughout the calculation and which gives a range of possible values for the result of the calculation. For economy and speed, intermediate results are truncated so that the least-significant digits correspond to values only a few orders of magnitude smaller than the error estimate. Type definitions and the standard arithmetic operations, together with conversions to and from integers, are provided in one package. The mathematical constants &pgr; and Euler's gamma are incorporated to a maximum precision of 320 digits in a package that also contains all of the standard elementary functions. Separate packages contain input and output procedures and conversion to and from floating-point types.