Reals and Equal
- To: mathgroup at smc.vnet.net
- Subject: [mg62013] Reals and Equal
- From: dh <dh at metrohm.ch>
- Date: Wed, 9 Nov 2005 03:45:27 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
Hello, Comparing real numbers can give you considerable headache if you do not exactly know how it works. The Help says: "Approximate numbers are considered equal if they differ in at most their last eight binary digits (roughly their last two decimal digits)" This is not quit right, as you can convince yourself: (my Mathematica version: 5.1 for Microsoft Windows (October 25, 2004)) a=1./2; b=1/2^47; (a+b)== a gives True However, a=1./2; b=1/2^47 + 1/2^53; (a+b)== a gives False that is, if two reals differ only in the 7th last bit, they are considered equal (and e.g. "<" gives False). However, if in addition the last bit also differs, they are considers not-equal. Can anybody give a reason for this strange behaviour. sincerely, Daniel