Mantis Bugtracker
  

Viewing Issue Advanced Details Jump to Notes ] View Simple ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0006729 [Squeak] Kernel minor always 10-13-07 22:14 04-18-10 22:05
Reporter nicolas cellier View Status public  
Assigned To andreas
Priority normal Resolution fixed Platform
Status closed   OS
Projection none   OS Version
ETA none Fixed in Version trunk Product Version 3.10
  Product Build
Summary 0006729: -Infinity closeTo: Infinity
Description
self deny: (Float infinity negated closeTo: Float infinity)

Though, considering a straight line as the limit of a circle when radius grows infinite, they might be closer than I think...
Steps To Reproduce
Additional Information MethodFinder methodFor: {{Float infinity}. Float infinity.}.

will thus find #negated. Warf!
Attached Files  FloatInfinityCloseTo-M6729-Test.1.cs [^] (1,147 bytes) 10-17-07 21:47
 FloatInfinityCloseTo-M6729-Patch.1.cs [^] (626 bytes) 10-17-07 22:13

- Relationships

- Notes
(0011312 - 159 - 165 - 165 - 165 - 165 - 165)
nicolas cellier
10-13-07 22:34

Even (Float infinity closeTo: Float infinity) is arguable...
Knowing that (Float infinity - Float infinity) isNan, how can IEEE 754 let me compare them equal?
 
(0011347 - 1119 - 1503 - 1503 - 1503 - 1503 - 1503)
nicolas cellier
10-17-07 22:12

SHOULD this really be so:
    self assert: (Float infinity closeTo: Float infinity).

IEEE 754 states it should:
    self assert: Float infinity = Float infinity.

However, comparing inf is somewhat messy:
    (lim (x->inf) 2*x) = inf
    (lim (x->inf) x) = inf
    (lim (x->inf) 2*x-x) = inf
Hmm these inf are not even close...

IEEE 754 has the right answer and contradict itself with:
    self assert: (Float infinity - Float infinity) isNan.

So why consider them equal?
I would better understand:
    self deny: (Float infinity closeTo: Float infinity).
Like nan, infinity cannot compare. All we can assert is isInfinite, but not = Float infinity.
Until someone comes with a good rationale to contradict me.

----------------------------------------------------------------------------

Provided patch will
    assert: (Float infinity closeTo: Float infinity)

If we want to deny it, it is as easy as
    (self isInfinite or: [num isInfinite]) ifTrue: [^ false].

But changing IEEE 754 behaviour (Float infinity ~= Float infinity) accordingly is not that simple...
(I consider this a BAD rationale!)
 
(0011560 - 181 - 247 - 247 - 247 - 247 - 247)
Keith_Hodges
12-17-07 16:46
edited on: 12-17-07 17:08

"fix begin"
Installer mantis bug: 6729 fix:'FloatInfinityCloseTo-M6729-Patch.1.cs'.
"fix test"
Installer mantis bug: 6729 fix:'FloatInfinityCloseTo-M6729-Test.1.cs'.
"fix end"

 
(0013185 - 84 - 102 - 102 - 256 - 256 - 256)
nicolas cellier
07-14-09 07:07
edited on: 07-14-09 07:40

The patch I proposed here does not solve 0007368
Resolution is superseded by 0007368.

 
(0013189 - 141 - 195 - 195 - 195 - 195 - 195)
nicolas cellier
07-14-09 07:41

"fix begin"
Installer mantis ensureFix: 7368.
"fix test"
Installer mantis bug: 6729 fix:'FloatInfinityCloseTo-M6729-Test.1.cs'.
"fix end"
 
(0013272 - 59 - 59 - 209 - 209 - 209 - 209)
nicolas cellier
08-24-09 20:10

Fixed in http://source.squeak.org/trunk/Kernel-nice.193.mcz [^]
 

- Issue History
Date Modified Username Field Change
10-13-07 22:14 nicolas cellier New Issue
10-13-07 22:34 nicolas cellier Note Added: 0011312
10-17-07 21:47 nicolas cellier File Added: FloatInfinityCloseTo-M6729-Test.1.cs
10-17-07 22:12 nicolas cellier Note Added: 0011347
10-17-07 22:13 nicolas cellier File Added: FloatInfinityCloseTo-M6729-Patch.1.cs
12-17-07 16:46 Keith_Hodges Note Added: 0011560
12-17-07 17:08 Keith_Hodges Note Edited: 0011560
01-10-09 02:00 Keith_Hodges Status new => pending
01-10-09 03:27 Keith_Hodges Status pending => testing
01-10-09 03:39 Keith_Hodges Status testing => resolved
01-10-09 03:39 Keith_Hodges Fixed in Version  => 3.11
01-10-09 03:39 Keith_Hodges Resolution open => fixed
01-10-09 03:39 Keith_Hodges Assigned To  => Keith_Hodges
01-10-09 03:41 Keith_Hodges Status resolved => testing
07-14-09 07:07 nicolas cellier Note Added: 0013185
07-14-09 07:40 nicolas cellier Note Edited: 0013185
07-14-09 07:41 nicolas cellier Note Added: 0013189
08-24-09 20:10 nicolas cellier Note Added: 0013272
10-03-09 19:33 Keith_Hodges Status testing => assigned
10-03-09 19:33 Keith_Hodges Assigned To Keith_Hodges => andreas
10-03-09 20:13 nicolas cellier Status assigned => resolved
10-03-09 20:13 nicolas cellier Fixed in Version 3.11 => trunk
04-18-10 22:05 andreas Status resolved => closed


Mantis 1.0.8[^]
Copyright © 2000 - 2007 Mantis Group
76 total queries executed.
43 unique queries executed.
Powered by Mantis Bugtracker