This site is updated infrequently. For up-to-date information, please visit the new OCaml website at ocaml.org.

RE: [Caml-list] Efficient and canonical set representation?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
 Date: 2003-11-12 (17:20) From: Diego Olivier Fernandez Pons Subject: Re: [Caml-list] Rounding mode
```    Bonjour,

> Somewhat off topic but why is this necessary from a numerical math
> type of perspective. I am honestly curious as I don't see how this
> would interact with the calculation in a meaningful way.

You are right when you say that there are many sources of errors in
numerical computations and that rounding errors are usually
insignificant with respect to them.

The point is that stochastic arithmetic (and its deterministic variant
interval arithmetic) are useful to find where the accurancy of your
computation is falling drastically (e.g. cancellations)

I really haven't the place to explain extensively how CESTAC works but
there are a few explanations in the ANP website

(CADNA for C/C++ source codes, user's guide. Chapter 4. Survey of the
CESTAC method. Many examples also on the homepages).

The main idea is that in a first order approximation, the number of
significant digits of a result can be estimated with respects to the
dispersion of the different values it can take using several rounding
modes.

Then, you can avoid doing unstable computations like dividing by a
small number (epsilon) very noised which makes you believe it is a
good 'pivot' in a gaussian resolution, etc. The whole computation will
then give a more accurate value.

The website gives an example where usual gauss method finds

x1 = 60 x2 = - 8.9 x3 = 0.0 and x4 = 1.0

when you estimate the errors, you find

x1 = 1.0 x2 = 1.0 x3 = 0.1 e-07 and x4 = 1.0

exact values are

x1 = 1 x2 = 1 x3 = 0.1 e-07 x4 = 1

The difference is only due to a 'bad' pivot succesfully detected and
therefore avoided.

Diego Olivier

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners

```