The production and testing of special function software in the NAG library
A summary of the major machine ranges and arithmetics involved in the NAG Library project is given, thus setting the context and the scope of the portability problems involved. The system that has been evolved to produce the NAG special functions software is described in outline and some idea of the resulting compromises made to gain transportability is included. The actual form of the software is illustrated by use of a concrete example for the function tan(x) (S07AAF). The problem of providing portable testing software is also discussed and a distinction is made between validation and certification; validation being the verification of "correct" functioning of each routine pathway at least once, certification being an attempt to provide an accurate and extensive measurement of the routine's accuracy profile and/or error behaviour. The approach to providing portable certification software being adopted for future marks of the NAG Library is outlined and illustrated by example.
KeywordsCertification Testing Stringent Testing Single Precision Range Reduction Failure Threshold
Unable to display preview. Download preview PDF.
References and Footnotes
- 1.J. L. Schonfelder, "Special Functions in the NAG Library," Software for Numerical Mathematics, D. J. Evans (Ed.), Academic Press (1974).Google Scholar
- 1a.J. L. Schonfelder, "The NAG Library and its Special Functions Chapter," International Computing Symposium 1973, A. Gunther et al. (Eds.) North Holland (1974).Google Scholar
- 2.J. L. Schonfelder, "The Production of Special Function Routines for a Multi-Machine Library," Software-Practice and Experience 6, 71–82 (1976).Google Scholar
- 3.J. L. Schonfelder and J. T. Thomason, "Applications Support by Direct Language Extension — An Arbitrary Precision Arithmetic Facility in Algol 68," International Computing Symposium (1975), Gelenbe and Potier (Eds.) North Holland (1975).Google Scholar
- 4.C. W. Clenshaw, "Rational Approximations for Special Functions," Software for Numerical Mathematics, D. J. Evans (Ed.), Academic Press (1974).Google Scholar
- 5.W. J. Cody, "An Overview of Software Development for Special Functions," Numerical Analysis Dundee (1975), Dold and Eckmann (Eds.), Lecture Notes in Mathematics, Springer-Verlag (1976).Google Scholar
- 6.Duplicated Code to deal with single-double precision conversion is no longer required as this switch is performed by automatic processing in the NAG central office.Google Scholar
- 7.C. W. Clenshaw, Mathematical Tables, Vol. 5, National Physical Laboratory, HMSO London (1962).Google Scholar
- 8.W. J. Cody, "The FUNPACK Package of Special Function Subroutines," ACM Trans. Maths. Software, 1, 13–25 (1975).Google Scholar
- 9.R. P. Brent, "A Fortran Multiple-Precision Arithmetic Package," (Private Communications).Google Scholar