next up previous
Next: Geometry and the Up: The Explanation Problem Previous: The Explanation Problem

Symbolic Computations and the Explanation Problem

 

Symbolic computations incur for a number of subtle problems that do not arise in numeric computations. These problems arise in a number of ways, many of which have been enumerated in informal announcements and talks by Kahan [60] and Fateman. One of the paradigmatic sources of error arises when the different levels of abstraction are used in the computation. Resolving this problem is one of the foundations of the Axiom system [57,32] and is addressed by our own Weyl system [128].

A simpler, but just as serious problem is illustrated below. Consider the issues that arise in trying to write a subroutine that produces the value of the parameterized integral

Because the integrand is a simple rational function, and might have poles in the interval , we find it preferable to compute the indefinite integral symbolically, and then transform the symbolic form into a numerical program. When a symbolic computing system like Maple is asked to compute the indefinite integral it returns something like

 

The transcendental function is expected since it is the sum of two logarithms and the denominator has two zeroes. Unfortunately, the resulting numerical program will fail whenever vanishes.

This problem arises because the integration routines had assumed that the denominator was square free---a reasonable assumption since and its derivative with respect to x are relatively prime as elements of . However, when b and c are given numeric values, this assumption is invalid and the result is erroneous. This is an example of two pieces of software not clearly communicating their assumptions. The problem is not a simple question about polynomials in . Additional assumptions are involved.



nuprl project
Tue Nov 21 08:50:14 EST 1995