comp.lang.ada
 help / color / mirror / Atom feed
From: jac@ibms48.scri.fsu.edu (Jim Carr)
Subject: Re: floating point comparison
Date: 1997/08/21
Date: 1997-08-21T00:00:00+00:00	[thread overview]
Message-ID: <5theo8$qg7$1@news.fsu.edu> (raw)
In-Reply-To: christian.bau-2108971008120001@christian-mac.isltd.insignia.com


dewar@merv.cs.nyu.edu (Robert Dewar) writes:
} There are no *errors*, the discrepancies between IEEE arithmetic and
} real arithmetic are not errors, they are simply differences that come from
} two different arithmetic models.

christian.bau@isltd.insignia.comm (Christian Bau) writes:
>
>As an example: Given a floating point number with an absolute value less
>than 10^15, find an integer number that is close to it. 

 That is an interesting choice since you are not guaranteed to be 
 able to represent 15 decimal digits in a float data type in C.  
 Casting up to double to use your routine below will not change 
 that.  And don't tell me I pick nits; plenty of C programmers 
 will cast a float to a double to call the intrinsic double 
 routine to get a square root without narry a thought about it. 

>Solution in C with IEEE arithmetic: 
>
>double nearby_number (double x)
>{
>   x += 6.0 * 1024.0 * 1024.0 * 1024.0 * 1024.0 * 1024.0;
>   x -= 6.0 * 1024.0 * 1024.0 * 1024.0 * 1024.0 * 1024.0;
>   return x;
>}
>
>Adding 1.5 * 2^52 will produce a result that is rounded to an integer
>number. I cant call this a rounding error (or "uncertainty") since it is
>exactly the effect that I wanted to achieve. 

 The uncertainty is in the representation of the original real value, 
 say 1/10 or pi (or pi*10^14 in your case), as a float (or a double). 
 
jac@ibms48.scri.fsu.edu (Jim Carr) wrote:
|
| It could be useful to adopt the terminology of experimental science 
| here, and use "uncertainty" to denote the variance between the 
| results of real arithmetic and floating point arithmetic done 
| 'correctly' in a particular model.  The two have much in common, 
| since one propagates those uncertainties in a similar way, and 
| since the confusion associated with calling them "errors" is 
| equally strong.  And both are poorly known.  ;-) 

>That term "uncertainty" makes things much much worse. The difference
>between well designed floating point arithmetic and real arithmetic is in
>no way uncertain. It is absolutely certain and predictable. 

 So is the process of measurement with a device with less precision 
 than necessary to make the measurement.  For example, in your case 
 there is no uncertainty in the integer part of a 14 digit real in 
 a double precision IEEE representation that has been properly 
 rounded, but there is an uncertainty if it was stored as a float. 

>For example, with IEEE arithmetic it is relatively easy to compute the
>difference between a+b (using real arithmetic) and a+b (using IEEE
>arithmetic) _exactly_. But you cant call something "uncertainty" that can
>be computed exactly. 

 The uncertainty is that more than one value of a and b will give 
 the same a+b result on the IEEE side. 

-- 
 James A. Carr   <jac@scri.fsu.edu>     | Commercial e-mail is _NOT_ 
    http://www.scri.fsu.edu/~jac/       | desired to this or any address 
 Supercomputer Computations Res. Inst.  | that resolves to my account 
 Florida State, Tallahassee FL 32306    | for any reason at any time. 




  reply	other threads:[~1997-08-21  0:00 UTC|newest]

Thread overview: 105+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1997-07-29  0:00 floating point comparison Matthew Heaney
1997-07-30  0:00 ` Robert Dewar
1997-07-30  0:00   ` Matthew Heaney
1997-07-31  0:00     ` Robert Dewar
1997-07-31  0:00     ` Samuel Mize
1997-07-31  0:00     ` Bob Binder  (remove .mapson to email)
1997-07-31  0:00       ` Robert Dewar
1997-08-01  0:00         ` Dale Stanbrough
1997-08-04  0:00         ` Paul Eggert
1997-08-06  0:00           ` Robert Dewar
1997-08-14  0:00             ` Paul Eggert
1997-08-01  0:00       ` user
1997-08-02  0:00         ` Lynn Killingbeck
1997-08-03  0:00           ` Robert Dewar
1997-08-03  0:00           ` Bob Binder  (remove .mapson to email)
1997-08-03  0:00             ` Charles R. Lyttle
1997-08-02  0:00         ` Peter L. Montgomery
1997-08-04  0:00           ` W. Wesley Groleau x4923
1997-08-05  0:00             ` Bob Binder  (remove .mapson to email)
1997-07-31  0:00     ` Martin Tom Brown
1997-08-02  0:00     ` Lynn Killingbeck
1997-07-30  0:00   ` Matthew Heaney
1997-07-31  0:00     ` Jim Carr
1997-07-31  0:00   ` Gerald Kasner
1997-07-31  0:00     ` Robert Dewar
1997-07-30  0:00 ` Jan Galkowski
1997-07-31  0:00   ` Don Taylor
1997-07-31  0:00     ` Russ Lyttle
1997-08-01  0:00       ` W. Wesley Groleau x4923
1997-08-02  0:00         ` Robert Dewar
1997-08-02  0:00           ` Matthew Heaney
1997-08-03  0:00             ` Robert Dewar
1997-08-04  0:00           ` W. Wesley Groleau x4923
1997-08-05  0:00             ` Jan-Christoph Puchta
1997-08-05  0:00               ` W. Wesley Groleau x4923
1997-08-05  0:00                 ` Samuel Mize
1997-08-06  0:00                 ` Robert Dewar
1997-08-07  0:00                   ` Shmuel (Seymour J.) Metz
1997-08-08  0:00                     ` Peter Shenkin
1997-08-09  0:00                       ` Albert Y.C. Lai
1997-08-06  0:00                 ` Chris L. Kuszmaul
1997-08-07  0:00                   ` Dave Sparks
1997-08-08  0:00                     ` Mark Eichin
1997-08-08  0:00                     ` Jan-Christoph Puchta
1997-08-09  0:00                       ` Robert Dewar
1997-08-10  0:00                       ` Lynn Killingbeck
1997-08-08  0:00                     ` Robert Dewar
     [not found]                   ` <5sbb90$qsc@redtail.cruzio.com>
     [not found]                     ` <5scugs$jdc$1@cnn.nas.nasa.gov>
1997-08-07  0:00                       ` Robert Dewar
1997-08-08  0:00                     ` Gerhard Heinzel
1997-08-08  0:00                       ` Daniel Villeneuve
1997-08-08  0:00                       ` schlafly
1997-08-09  0:00                       ` Robert Dewar
1997-08-09  0:00                         ` David Ullrich
1997-08-10  0:00                           ` Robert Dewar
1997-08-16  0:00                             ` Andrew V. Nesterov
1997-08-18  0:00                               ` Robert Dewar
1997-08-19  0:00                                 ` Hans Olsson
1997-08-19  0:00                                 ` Jim Carr
1997-08-21  0:00                                   ` Christian Bau
1997-08-21  0:00                                     ` Jim Carr [this message]
1997-08-21  0:00                                       ` Robert Dewar
1997-08-22  0:00                                         ` Jim Carr
1997-08-22  0:00                                           ` Robert Dewar
1997-08-23  0:00                                             ` Jim Carr
1997-08-24  0:00                                               ` Robert Dewar
1997-08-29  0:00                                                 ` Andrew V. Nesterov
1997-08-29  0:00                                                   ` Robert Dewar
     [not found]                                                     ` <340DF1DD.2736@iop.com>
1997-09-07  0:00                                                       ` Get_Immediate Robert Dewar
1997-09-07  0:00                                                       ` Get_Immediate Robert Dewar
1997-09-08  0:00                                                       ` Get_Immediate J Giffen
     [not found]                                                 ` <5u4eq6$30b$1@news.lth.se>
1997-08-29  0:00                                                   ` floating point comparison Robert Dewar
1997-09-01  0:00                                                     ` Chris RL Morgan
1997-09-01  0:00                                                 ` Jim Carr
     [not found]                                                   ` <checkerEFx6xI.FCM@netcom.com>
1997-09-03  0:00                                                     ` Chris L. Kuszmaul
1997-09-05  0:00                                                       ` Malome Khomo
1997-09-07  0:00                                                       ` Robert Dewar
1997-09-05  0:00                                                   ` Robert Dewar
1997-09-10  0:00                                                     ` Jim Carr
1997-09-12  0:00                                                       ` Robert Dewar
1997-09-15  0:00                                                         ` James Pauley
1997-09-16  0:00                                                           ` Robert Dewar
1997-08-23  0:00                                         ` W. Wesley Groleau x4923
1997-08-23  0:00                                           ` Robert Dewar
1997-08-30  0:00                                 ` Paul Eggert
1997-08-06  0:00             ` Robert Dewar
     [not found]               ` <33E8E3E1.17EA@pseserv3.fw.hac.com>
     [not found]                 ` <5sbgpk$q0n$1@goanna.cs.rmit.edu.au>
1997-08-07  0:00                   ` Robert Dewar
     [not found]                     ` <33FE4603.1B6B@pseserv3.fw.hac.com>
1997-08-23  0:00                       ` Robert Dewar
1997-08-08  0:00                   ` W. Wesley Groleau x4923
1997-08-06  0:00             ` Robert Dewar
     [not found]               ` <33E8DFF6.6F44@pseserv3.fw.hac.com>
1997-08-07  0:00                 ` Robert Dewar
     [not found]                 ` <33EA1251.3466@link.com>
     [not found]                   ` <33EA46CC.226@pseserv3.fw.hac.com>
1997-08-08  0:00                     ` Christian Bau
1997-08-12  0:00                     ` Martin Tom Brown
1997-08-23  0:00                       ` W. Wesley Groleau x4923
1997-08-23  0:00                         ` Robert Dewar
1997-09-05  0:00                         ` Robert I. Eachus
1997-09-06  0:00                           ` schlafly
1997-09-09  0:00                             ` Robert Dewar
1997-09-07  0:00                           ` M. J. Saltzman
1997-09-11  0:00                           ` Robin Rosenberg
1997-08-07  0:00               ` Dr. Rex A. Dwyer
1997-08-07  0:00             ` Do-While Jones
1997-08-03  0:00         ` Brian Rogoff
1997-08-03  0:00           ` Robert Dewar
1997-08-02  0:00 ` Michael Sierchio
1997-08-08  0:00 ` floating point conversions Mark Lusti
replies disabled

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