Skip to main content
Log in

The Interval-Enhanced GNU Fortran Compiler

  • Published:
Reliable Computing

Abstract

Compiler support for intervals as intrinsic data types is essential for promoting the development and wide-spread use of interval software. It also plays an important role in encouraging the development of hardware support for interval arithmetic. This paper describes modifications made to the GNU Fortran Compiler to provide support for interval arithmetic. These modifications are based on a recently proposed Fortran 77 Interval Arithmetic Specification, which provides a standard for supporting interval arithmetic in Fortran. This paper also describes the design of the compiler's interval runtime libraries and the methodology used to test the compiler. The compiler and runtime libraries are designed to be portable to platforms that support the IEEE 754 floating point standard.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Alefeld, G. and Herzberger, J.: Introduction to Interval Computations, Academic Press, 1983.

  2. ANSI/IEEE 754-1985 Standard for Binary Floating-Point Arithmetic, Institute of Electrical and Electronics Engineers, New York, 1985.

  3. Burger, R. G. and Dybvig, R. K.: Printing Floating Point Numbers Quickly and Accurately, Sigplan Notices 31(5) (1996) pp. 108–116.

    Google Scholar 

  4. Chiriaev, D. and Walster, G. W.: Fortran 77 Interval Arithmetic Specification, 1997, available at http://www.mscs.mu.edu/∼globsol/Papers/spec.ps.

  5. Corliss, G. F.: Industrial Applications of Interval Techniques, in: Ullrich, C. (ed.), Computer Arithmetic and Self-Validating Numerical Methods, Academic Press, 1990, pp. 91–113.

  6. Corliss, G. F.: Rigorous Global Search: Industrial Applications, in: Csendes, T. (ed.), Proceedings of the International Symposium on Scientific Computing, Computer Arithmetic, and Validated Numerics, Budapest, Hungary, September, 1998.

  7. Ely, J. S.: The VPI Software Package for Variable Precision Interval Arithmetic, Interval Computations 2 (1993), pp. 135–153.

    Google Scholar 

  8. Gay, D. M.: Correctly Rounded Binary-Decimal and Decimal-Binary Conversions, Numerical Analysis Manuscript 90-10, AT&T Bell Laboratories, 1990.

  9. Hammer, R., Hocks, M., Kulisch, U., and Ratz, D.: C++ Toolbox for Verified Computing, Springer-Verlag, 1995.

  10. Hansen, E.: Global Optimization Using Interval Analysis, Marcel Dekker, 1992.

  11. Hofschuster, W. and Kraemer, W.: A Fast Interval Library, 1997, available at ftp://iamk4515.mathematik.uni-karlsruhe.de/pub/iwrmm/software.

  12. Kearfott, R. B.: A FORTRAN 90 Environment for Research and Prototyping of Enclosure Algorithms for Nonlinear Equations and Global Optimization, ACM Transactions on Mathematical Software 21(1) (1995), pp. 63–78.

    Google Scholar 

  13. Kearfott, R. B.: Rigorous Global Search: Continuous Problems, Kluwer Academic Publishers, Dordrecht, 1997.

    Google Scholar 

  14. Kearfott, R. B. and Novoa, M.: INTBIS, A Portable Interval Newton Bisection Package, ACM Transactions on Mathematical Software 16 (1990), pp. 152–157.

    Google Scholar 

  15. Kearfott, R. B. et al.: A Specific Proposal for Interval Arithmetic in Fortran, 1996, available at http://interval.usl.edu/F90/f96-pro.asc.

  16. Kearfott, R. B. et al.: Algorithm 737: INTLIB: A Portable Fortran 77 Interval Standard Function Library, ACM Transactions on Mathematical Software 20 (1994), pp. 447–459.

    Google Scholar 

  17. Klatte, R. et al.: C-XSC: A C++ Class Library for Extended Scientific Computing. Springer-Verlag, 1993.

  18. Knüppel, O.: PROFIL/BIAS—A Fast Interval Library, Computing 53 (1994), pp. 277–288.

    Google Scholar 

  19. Moore, R. E.: Interval Analysis, Prentice Hall, 1966.

  20. Moore, R. E.: Methods and Applications of Interval Analysis (SIAM Studies in Applied Mathematics), SIAM, 1979.

  21. Priest, D.: Fast Table-Driven Algorithms for Interval Elementary Functions, Proceedings of the 13th Symposium on Computer Arithmetic, 1997, pp. 168–174.

  22. Priest, D.: Handling IEEE 754 Invalid Operation Exceptions in Real Interval Arithmetic, Manuscript, 1997.

  23. Schulte, M. J., Zelov, V. A., Walster, G. W., and Chiriaev, D.: Single-Number Interval I/O, in: Csendes, T. (ed.), Proceedings of the International Symposium on Scientific Computing, Computer Arithmetic, and Validated Numerics, Budapest, Hungary, September, 1998.

  24. Walter, W. V.: ACRITH-XSC: A Fortran-like Language for Verified Scientific Computing, in: Adams, E. and Kulisch, U. (eds), Scientific Computing with Automatic Result Verification, Academic Press, 1993, pp. 45–70.

  25. Walster, G. W.: The Extended Real Interval System, 1997, available at http://www.mscs.mu.edu/∼globsol/Papers/extended-intervals.ps.

  26. Walster, G. W. and Hansen, E. R.: Interval Algebra, Composite Functions and Dependence in Compilers, submitted to Reliable Computing, available at http://www.mscs.mu.edu/∼globsol/Papers/composite.ps.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Schulte, M.J., Zelov, V., Akkas, A. et al. The Interval-Enhanced GNU Fortran Compiler. Reliable Computing 5, 311–322 (1999). https://doi.org/10.1023/A:1009988620481

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1009988620481

Keywords

Navigation