From ... Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!fr.clara.net!heighliner.fr.clara.net!skynet.be!skynet.be!ossa.telenet-ops.be!nmaster.kpnqwest.net!nreader1.kpnqwest.net.POSTED!not-for-mail Newsgroups: comp.lang.lisp Subject: Re: Strange result from round References: Mail-Copies-To: never From: Erik Naggum Message-ID: <3227024402097431@naggum.net> Organization: Naggum Software, Oslo, Norway Lines: 18 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Fri, 05 Apr 2002 19:39:45 GMT X-Complaints-To: newsmaster@KPNQwest.no X-Trace: nreader1.kpnqwest.net 1018035585 193.71.199.50 (Fri, 05 Apr 2002 21:39:45 MET DST) NNTP-Posting-Date: Fri, 05 Apr 2002 21:39:45 MET DST Xref: archiver1.google.com comp.lang.lisp:31120 * Kent M Pitman | ROUND in this case is separating the 5 from the .1 but I don't think | there is a loss of information in that particular operation; I think | it's "exact" insofar as the inputs were exact, because there is no | increase in magnitude that would force a loss of precision. Well, actually, there is. If 5.1 and 0.1 both use n bits of precision, (- 5.1 5.0) actually ends up using n-3 bits of precision for the 0.1 return value, effectively replacing the three least significant bits with zeros. Since 0.1 has a bit pattern of repeating groups of 1100, losing the three least significant bits must lead to a value different from 0.1. /// -- In a fight against something, the fight has value, victory has none. In a fight for something, the fight is a loss, victory merely relief. Post with compassion: http://home.chello.no/~xyzzy/kitten.jpg