comp.lang.ada
 help / color / mirror / Atom feed
From: dewar@gnat.com (Robert Dewar)
Subject: Re: Interval arithmetic in Ada?
Date: 22 Apr 2002 10:43:52 -0700
Date: 2002-04-22T17:43:53+00:00	[thread overview]
Message-ID: <5ee5b646.0204220943.20724df@posting.google.com> (raw)
In-Reply-To: mailman.1019482382.32502.comp.lang.ada@ada.eu.org

"Grein, Christoph" <christoph.grein@eurocopter.com> wrote in message news:<mailman.1019482382.32502.comp.lang.ada@ada.eu.org>...
> Again, this _is_ the Ada 83 model with a and b the model 
> numbers enclosing the actual value. See the Ada 83 RM.

And once again you are confused. Interval arithmetic involves a
representation where you use a pair of numbers
to represent a real, the lower and upper bounds.

You are keying off the word "interval" here, and missing
the target :-)

The answer is that the language does not specifically support interval
arithmetic. In general automatic support
for this notion is tricky. As an example, consider doing
Newton-Raphson iteration for a square root. 

If you just carry intervals through, they get wider and
wider and you don't converge. You have to realize that
the *estimate* each time is computed absolutely precisely,
with no slop, and thus the interval must be collapsed here.

The round towards +inf and round down towards -inf rounding
modes of IEEE are intended to support this model of arithmetic. See
Sam Figueroa's thesis for a further discussion of the use of these
rounding modes in Ada.

Robert Dewar



  reply	other threads:[~2002-04-22 17:43 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-04-22 13:21 Interval arithmetic in Ada? Grein, Christoph
2002-04-22 17:43 ` Robert Dewar [this message]
  -- strict thread matches above, loose matches on Subject: below --
2002-04-22  9:13 Grein, Christoph
2002-04-22 12:04 ` Dmitry A. Kazakov
2002-04-22  9:04 Dmitry A. Kazakov
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox