Exercise 2.16.

Explain, in general, why equivalent algebraic expressions may lead to different answers. Can you devise an interval-arithmetic package that does not have this shortcoming, or is this task impossible? (Warning: This problem is very difficult.)

Solutions

As seen in Exercise 2.14, most of the algebraic identities that hold on operations over real numbers do not hold on the analogous operations over intervals.

A - A ≠ 0

A / A ≠ 1

A / B ≠ 1 / (B / A)

and so on.

Furthermore, the correct interpretation of an expression involving intervals requires distinguishing those intervals which represent a single physical parameter (and thus can only have one value at a time) and those which represent different parameters (though they may have the same upper and lower bounds). This implies an interval arithmetic package which does not preserve identity between different intervals cannot avoid this shortcoming.

However, we may be able to build such a package if we use a different interface.

Instead of raw operations on intervals, we would like to have operations which manipulate expressions. An expression would represent a mathematical algebraic statement, possibly including variables.

The user would construct an expression, such as R₁R₂ / (R₁+R₂), and then would call an evaluate function with the expression and a set of bindings giving for each variable a measured value and an error tolerance. The package would then need to compute the upper and lower bounds, using only one value at a time for each variable.

If intervals can only be expressed as center-point and percentage error tolerance, then intervals spanning zero cannot exist, and we may assume that all intervals are either fully positive, fully negative, or equivalent to an exact zero.

If we then show that multiplication, division, addition, and subtraction are all monotonic over all such intervals, we can write such a package simply by calculating the expression once with every possible combination of upper and lower bounds of each variable, and taking the minimum and maximum results as the bounds of the result.

We could also extend the package to optimize these calculations, at least in some cases, by determining that some combinations of upper and lower bounds for particular variables will fall within the bounds of the results given by some other combinations, and so avoid calculating combinations that cannot contribute to the final bounds of the result.

 
exercise_2.16.txt · Last modified: 2009/03/13 00:17 by inimino
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki