DagSemProc.08021.16.pdf
- Filesize: 315 kB
- 13 pages
The increased appreciation of interval analysis as a powerful tool for controlling round-off errors and modelling with uncertain data leads to a growing number of diverse interval software. Beside in some other aspects, the available interval software differs with respect to the environment in which it operates and the provided functionality. Some specific software tools are built on the top of other more general interval software but there is no single environment supporting all (or most) of the available interval methods. On another side, most recent interval applications require a combination of diverse methods. It is difficult for the end-users to combine and manage the diversity of interval software tools, packages, and research codes, even the latter being accessible. Two recent initiatives: [1], directed toward developing of a comprehensive full-featured library of validated routines, and [3] intending to provide a general service framework for validated computing in heterogeneous environment, reflect the realized necessity for an integration of the available methods and software tools. It is commonly understood that quality comprehensive libraries are not compiled by a single person or small group of people over a short time [1]. Therefore, in this work we present an alternative approach based on interval software interoperability. While the simplest form of interoperability is the exchange of data files, we will focus on the ability to run a particular routine executable in one environment from within another software environment, and vice-versa, via communication protocols. We discuss the motivation, advantages and some problems that may appear in providing interoperability between the existing interval software. Since the general-purpose environments for scientific/technical computing like Matlab, Mathematica, Maple, etc. have several features not attributable to the compiled languages from one side and on another side most problem solving tools are developed in some compiled language for efficiency reasons, it is interesting to study the possibilities for interoperability between these two kinds of interval supporting environments. More specifically, we base our presentation on the interoperability between Mathematica [5] and external C-XSC programs [2] via MathLink communication protocol [4]. First, we discuss the portability and reliability of interval arithmetic in Mathematica. Then, we present MathLink technology for building external MathLink-compatible programs. On the example of a C-XSC function for solving parametric linear systems, called from within a Mathematica session, we demonstrate some advantages of interval software interoperability. Namely, expanded functionality for both environments, exchanging data without using intermediate files and without any conversion but under dynamics and interactivity in the communication, symbolic manipulation interfaces for the compiled language software that often make access to the external functionality from within Mathematica more convenient even than from its own native environment. Once established, MathLink connection to external interval libraries or problem-solving software opens up an array on new possibilities for the latter. References: [1] G. Corliss, R. B. Kearfott, N. Nedialkov, S. Smith: Towards an Interval Subroutine Library, Workshop on Reliable Engineering Computing, Svannah, Georgia, USA, Feb. 22-24, 2006. [2] W. Hofschuster: C-XSC: Highlights and new developments. In: Numerical Validation in Current Hardware Architectures. Number 08021 Dagstuhl Seminar, Internationales Begegnungs- und Forschungszentrum f"ur Informatik, Schloss Dagstuhl, Germany, 2008. [3] W. Luther, W. Kramer: Accurate Grid Computing, 12th GAMM-IMACS Int. Symposium on Scientific Computing, Computer Arithmetic and Validated Numerics (SCAN 2006), Duisburg, Sept. 26-29, 2006. [4] Ch. Miyaji, P. Abbot eds.: Mathlink: Network Programming with Mathematica, Cambridge Univ. Press, Cambridge, 2001. [5] Wolfram Research Inc.: Mathematica, Version 5.2, Champaign, IL, 2005.
Feedback for Dagstuhl Publishing