Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

The goal of science is to build better mousetraps. The goal of nature is to build better mice.


devel / comp.arch / Re: Approximate reciprocals

SubjectAuthor
* Approximate reciprocalsMarcus
+* Re: Approximate reciprocalsTerje Mathisen
|+- Re: Approximate reciprocalsrobf...@gmail.com
|+* Re: Approximate reciprocalsMarcus
||+- Re: Approximate reciprocalsMitchAlsup
||`* Re: Approximate reciprocalsTerje Mathisen
|| +- Re: Approximate reciprocalsMarcus
|| `- Re: Approximate reciprocalsMitchAlsup
|`* Re: Approximate reciprocalsQuadibloc
| `- Re: Approximate reciprocalsTerje Mathisen
+* Re: Approximate reciprocalsMitchAlsup
|+* Re: Approximate reciprocalsMarcus
||`* Re: Approximate reciprocalsMitchAlsup
|| `- Re: Approximate reciprocalsBGB
|`* Re: Approximate reciprocalsThomas Koenig
| `* Re: Approximate reciprocalsMitchAlsup
|  `* Re: Approximate reciprocalsThomas Koenig
|   +* Re: Approximate reciprocalsMichael S
|   |`* Re: Approximate reciprocalsThomas Koenig
|   | `* Re: Approximate reciprocalsMichael S
|   |  `* Re: Approximate reciprocalsThomas Koenig
|   |   `* Re: Approximate reciprocalsMichael S
|   |    `* Re: Approximate reciprocalsThomas Koenig
|   |     `* Re: Approximate reciprocalsMichael S
|   |      `* Re: Approximate reciprocalsMichael S
|   |       +* Re: Approximate reciprocalsTerje Mathisen
|   |       |+* Re: Approximate reciprocalsMitchAlsup
|   |       ||`* Re: Approximate reciprocalsTerje Mathisen
|   |       || `* Re: Approximate reciprocalsMitchAlsup
|   |       ||  +- Re: Approximate reciprocalsTerje Mathisen
|   |       ||  `- Re: Approximate reciprocalsQuadibloc
|   |       |`- Re: Approximate reciprocalsMichael S
|   |       `* Re: Approximate reciprocalsThomas Koenig
|   |        `* Re: Approximate reciprocalsMichael S
|   |         `* Re: Approximate reciprocalsThomas Koenig
|   |          `* Re: Approximate reciprocalsMichael S
|   |           `* Re: Approximate reciprocalsMichael S
|   |            +* Re: Approximate reciprocalsMitchAlsup
|   |            |`* Re: Approximate reciprocalsJames Van Buskirk
|   |            | `- Re: Approximate reciprocalsMitchAlsup
|   |            `* Re: Approximate reciprocalsThomas Koenig
|   |             `* Re: Approximate reciprocalsMichael S
|   |              +- Re: Approximate reciprocalsMichael S
|   |              +* Re: Approximate reciprocalsMitchAlsup
|   |              |`* Re: Approximate reciprocalsTerje Mathisen
|   |              | `* Re: Approximate reciprocalsMitchAlsup
|   |              |  +- Re: Approximate reciprocalsMichael S
|   |              |  `* Re: Approximate reciprocalsTerje Mathisen
|   |              |   `* Re: Approximate reciprocalsMitchAlsup
|   |              |    +- Re: Approximate reciprocalsMichael S
|   |              |    +- Re: Approximate reciprocalsMichael S
|   |              |    `- Re: Approximate reciprocalsTerje Mathisen
|   |              +* Re: Approximate reciprocalsMichael S
|   |              |`* Re: Approximate reciprocalsThomas Koenig
|   |              | +- Re: Approximate reciprocalsMichael S
|   |              | `* Re: Approximate reciprocalsTerje Mathisen
|   |              |  +- Re: Approximate reciprocalsQuadibloc
|   |              |  +* Re: Approximate reciprocalsThomas Koenig
|   |              |  |+- Re: Approximate reciprocalsMichael S
|   |              |  |+- Re: Approximate reciprocalsTerje Mathisen
|   |              |  |`* Re: Approximate reciprocalsMichael S
|   |              |  | `* Re: Approximate reciprocalsThomas Koenig
|   |              |  |  +- Re: Approximate reciprocalsMichael S
|   |              |  |  `* Re: Approximate reciprocalsMichael S
|   |              |  |   `* Re: Approximate reciprocalsThomas Koenig
|   |              |  |    `* Re: Approximate reciprocalsMichael S
|   |              |  |     `* Re: Approximate reciprocalsMichael S
|   |              |  |      `* Re: Approximate reciprocalsThomas Koenig
|   |              |  |       `* Re: Approximate reciprocalsMichael S
|   |              |  |        +* Re: Approximate reciprocalsrobf...@gmail.com
|   |              |  |        |`* Useful floating point instructions (was: Approximate reciprocals)Thomas Koenig
|   |              |  |        | `* Re: Useful floating point instructionsTerje Mathisen
|   |              |  |        |  `* Re: Useful floating point instructionsStephen Fuld
|   |              |  |        |   `* Re: Useful floating point instructionsMitchAlsup
|   |              |  |        |    `* Re: Useful floating point instructionsStephen Fuld
|   |              |  |        |     +- Re: Useful floating point instructionsMitchAlsup
|   |              |  |        |     +* Re: Useful floating point instructionsMichael S
|   |              |  |        |     |+- Re: Useful floating point instructionsStephen Fuld
|   |              |  |        |     |`- Re: Useful floating point instructionsTerje Mathisen
|   |              |  |        |     `* Re: Useful floating point instructionsTerje Mathisen
|   |              |  |        |      `- Re: Useful floating point instructionsStefan Monnier
|   |              |  |        +* Re: Approximate reciprocalsMichael S
|   |              |  |        |`* Re: Approximate reciprocalsGeorge Neuner
|   |              |  |        | +* Re: Approximate reciprocalsAnton Ertl
|   |              |  |        | |+* Re: Approximate reciprocalsMichael S
|   |              |  |        | ||`* Re: Approximate reciprocalsAnton Ertl
|   |              |  |        | || `- Re: Approximate reciprocalsMichael S
|   |              |  |        | |`* Re: Approximate reciprocalsGeorge Neuner
|   |              |  |        | | `* Re: Approximate reciprocalsAnton Ertl
|   |              |  |        | |  `* Re: Approximate reciprocalsMichael S
|   |              |  |        | |   `* Re: Approximate reciprocalsTerje Mathisen
|   |              |  |        | |    `* Re: Approximate reciprocalsMichael S
|   |              |  |        | |     `* Re: Approximate reciprocalsTerje Mathisen
|   |              |  |        | |      `- Re: Approximate reciprocalsMitchAlsup
|   |              |  |        | +- Re: Approximate reciprocalsMichael S
|   |              |  |        | `* Re: Approximate reciprocalsJohn Dallman
|   |              |  |        |  +- Re: Approximate reciprocalsMitchAlsup
|   |              |  |        |  `* Re: Approximate reciprocalsGeorge Neuner
|   |              |  |        |   +* Re: Approximate reciprocalsMichael S
|   |              |  |        |   |+* Re: Approximate reciprocalsEricP
|   |              |  |        |   ||`* Re: Approximate reciprocalsAnton Ertl
|   |              |  |        |   |`* Re: Approximate reciprocalsAnton Ertl
|   |              |  |        |   `* Re: Approximate reciprocalsJohn Dallman
|   |              |  |        +- Re: Approximate reciprocalsMichael S
|   |              |  |        `- Re: Approximate reciprocalsMichael S
|   |              |  `* Re: Approximate reciprocalsMichael S
|   |              `- Re: Approximate reciprocalsMichael S
|   `- Re: Approximate reciprocalsTerje Mathisen
+* Re: Approximate reciprocalsElijah Stone
+* Re: Approximate reciprocalsMarcus
`* Re: Approximate reciprocalsMarcus

Pages:12345678910111213
Re: Approximate reciprocals

<4f26ec37-03c4-4b85-aa9c-a349d7c6e779n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=24826&group=comp.arch#24826

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:622a:191:b0:2f1:ffe6:283c with SMTP id s17-20020a05622a019100b002f1ffe6283cmr8699770qtw.557.1650448531426;
Wed, 20 Apr 2022 02:55:31 -0700 (PDT)
X-Received: by 2002:a05:6808:14c2:b0:2f7:43eb:c824 with SMTP id
f2-20020a05680814c200b002f743ebc824mr1168992oiw.154.1650448531179; Wed, 20
Apr 2022 02:55:31 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Wed, 20 Apr 2022 02:55:31 -0700 (PDT)
In-Reply-To: <t3of9k$40m$1@gioia.aioe.org>
Injection-Info: google-groups.googlegroups.com; posting-host=2a0d:6fc2:55b0:ca00:5cdc:b922:6737:3cc7;
posting-account=ow8VOgoAAAAfiGNvoH__Y4ADRwQF1hZW
NNTP-Posting-Host: 2a0d:6fc2:55b0:ca00:5cdc:b922:6737:3cc7
References: <t1c154$j5t$1@dont-email.me> <t3k9lo$af7$1@dont-email.me>
<t3lqpf$nea$1@gioia.aioe.org> <8ed2b18a-4815-48c0-8055-cf91614fe0a4n@googlegroups.com>
<b7766fa1-f75e-4486-b477-6a2ec44efc75n@googlegroups.com> <3ae4ba74-1397-436d-a43b-fa854fcce949n@googlegroups.com>
<821e3a4c-ae5a-4880-8ade-7ef3d21b6b56n@googlegroups.com> <t3of9k$40m$1@gioia.aioe.org>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <4f26ec37-03c4-4b85-aa9c-a349d7c6e779n@googlegroups.com>
Subject: Re: Approximate reciprocals
From: already5...@yahoo.com (Michael S)
Injection-Date: Wed, 20 Apr 2022 09:55:31 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 106
 by: Michael S - Wed, 20 Apr 2022 09:55 UTC

On Wednesday, April 20, 2022 at 11:12:39 AM UTC+3, Terje Mathisen wrote:
> Michael S wrote:
> > On Wednesday, April 20, 2022 at 1:33:50 AM UTC+3, MitchAlsup wrote:
> >> On Tuesday, April 19, 2022 at 5:05:28 PM UTC-5, Michael S wrote:
> >>> On Tuesday, April 19, 2022 at 10:42:08 PM UTC+3, MitchAlsup wrote:
> >>>> On Tuesday, April 19, 2022 at 3:10:26 AM UTC-5, Terje Mathisen wrote:
> >>>>> Marcus wrote:
> >>>>>> One more thing that I discovered about a week ago:
> >>>>>>
> >>>>>> In order to support the IEEE 754 semantics of 1 / 0 == Inf, you actually
> >>>>>> *need* a special Newtom-Raphson step instruction that handles the
> >>>>>> special case where x = 0 and y = Inf.
> >>>>> The obvious way to handle this, if you have a little bit of HW help in
> >>>>> the form of an input number(s) classifier, is to take out all the
> >>>>> special cases and merge these results with what you get from the normal
> >>>>> algorithm.
> >>>>>>
> >>>>>> Consider the approximation of y = 1 / x.
> >>>>>>
> >>>>>> A single NR step then becomes: y' = y * (2 - x * y)
> >>>> <
> >>>> Note: y ~= 1/x -- thus algebraically x×y ~= 1
> >>>> Here: 0×Inf should be 1 not NaN.
> >>>> In fact LIM[x->0]( x×~1/x ) -> ~1
> >>> 0*Inf = NaN for the same reason 0/0=Nan and Inf/Inf=Nan.
> >>> In all 3 cases the results are "unknown" and FP numbers have no better encoding for "unknown" than NaN.
> >> <
> >> They may be unknown "in general" but in this particular N-R iteration the LIM is known to be 1.000000000000000000000000000.
> >> <
> >
> > The rules are "in general". They are not created to satisfy needs of one particular not extremely important algorithm.
> > BTW, after thinking a bit about it I feel that existing inf rules are rather "too practical", scarifying mathematical rigor
> > in favor of non-proven practicality.
> > In particular, being today (tonight) in rigorous mood, I'd prefer (+inf - Finite_Positive_Number) to be NaN rather than +inf.
> > Because we don't know if result is bigger than MAX_DBL or, may be, smaller.
> > The same goes for (inf / Finite_Number_Above_One).
> > Etc...
> Sorry, but this is simply wrong:
>
> What you suggest here is to abandon knowledge we do have in favor of
> making NaN even more sticky than it currently is.

Yes, unproven practicality vs rigor.
With existing rules we preserve (still, not always) supposedly practically important
information that there was an overflow in a chain of calculation.
But we are no longer guaranteed that +inf represent a number that is bigger
than maximal representative finite number.

We could hah had both if we had 2 or 3 different infs. Like:
zero-inf - there was division by zero in the chain
huge-inf - bigger than MAX_DBL
ovf-inf - there was overflow in the chain, but we no longer sure that the current value is > MAX_DBL
IEEE NaN coding space even has room for all this goodies. But it's too late..

>
> If you have an algorithm which can spuriously overflow in the middle,
> but which with a different evaluation order, or higher intermediate
> precision/exponent range, would be OK, then giving Inf as the result
> still provides important information: This calculation overflowed
> somewhere in the middle.
>
> Always returning NaN instead means that you have lost this info, now the
> NaN could have been due to many different errors, including 0/0 etc.

Not always.
With my last-nights's-rules under many circumstances (Inf + Finite) or (Inf * Finite)
or (Inf/Finite) would still produce Inf. But yes, if the chain is long it's unlikely.
Even more unlikely (less likely ?) than DFP retaining info about # of significant digits.

>
> All the 754 ops have been defined to return the best possible answer,
> when taken in isolation.
>
> The original (1978) idea was to handle exponent overflow (or underflow)
> via a trap handler that would save the current exponent, bias it enough
> to bring the current operation into legal range, and then inspect and
> correct the final result based on any such bias operations performed
> during the processing.
>
> Afaik, nobody is seriously doing this for production code.
> Terje
>
> --
> - <Terje.Mathisen at tmsw.no>
> "almost all programming can be viewed as an exercise in caching"

Re: Approximate reciprocals

<t3oriu$26l$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=24827&group=comp.arch#24827

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!aioe.org!EhtdJS5E9ITDZpJm3Uerlg.user.46.165.242.91.POSTED!not-for-mail
From: terje.ma...@tmsw.no (Terje Mathisen)
Newsgroups: comp.arch
Subject: Re: Approximate reciprocals
Date: Wed, 20 Apr 2022 13:42:25 +0200
Organization: Aioe.org NNTP Server
Message-ID: <t3oriu$26l$1@gioia.aioe.org>
References: <t1c154$j5t$1@dont-email.me> <t3k9lo$af7$1@dont-email.me>
<t3lqpf$nea$1@gioia.aioe.org>
<8ed2b18a-4815-48c0-8055-cf91614fe0a4n@googlegroups.com>
<b7766fa1-f75e-4486-b477-6a2ec44efc75n@googlegroups.com>
<3ae4ba74-1397-436d-a43b-fa854fcce949n@googlegroups.com>
<t3oen8$1qkb$1@gioia.aioe.org>
<b3d11498-5ea4-461d-af69-ff1a804d98fcn@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Info: gioia.aioe.org; logging-data="2261"; posting-host="EhtdJS5E9ITDZpJm3Uerlg.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101
Firefox/68.0 SeaMonkey/2.53.11.1
X-Notice: Filtered by postfilter v. 0.9.2
 by: Terje Mathisen - Wed, 20 Apr 2022 11:42 UTC

Michael S wrote:
> On Wednesday, April 20, 2022 at 11:02:51 AM UTC+3, Terje Mathisen wrote:
>> MitchAlsup wrote:
>>> On Tuesday, April 19, 2022 at 5:05:28 PM UTC-5, Michael S wrote:
>>>> On Tuesday, April 19, 2022 at 10:42:08 PM UTC+3, MitchAlsup wrote:
>>>>> On Tuesday, April 19, 2022 at 3:10:26 AM UTC-5, Terje Mathisen wrote:
>>>>>> Marcus wrote:
>>>>>>> One more thing that I discovered about a week ago:
>>>>>>>
>>>>>>> In order to support the IEEE 754 semantics of 1 / 0 == Inf, you actually
>>>>>>> *need* a special Newtom-Raphson step instruction that handles the
>>>>>>> special case where x = 0 and y = Inf.
>>>>>> The obvious way to handle this, if you have a little bit of HW help in
>>>>>> the form of an input number(s) classifier, is to take out all the
>>>>>> special cases and merge these results with what you get from the normal
>>>>>> algorithm.
>>>>>>>
>>>>>>> Consider the approximation of y = 1 / x.
>>>>>>>
>>>>>>> A single NR step then becomes: y' = y * (2 - x * y)
>>>>> <
>>>>> Note: y ~= 1/x -- thus algebraically x×y ~= 1
>>>>> Here: 0×Inf should be 1 not NaN.
>>>>> In fact LIM[x->0]( x×~1/x ) -> ~1
>>>> 0*Inf = NaN for the same reason 0/0=Nan and Inf/Inf=Nan.
>>>> In all 3 cases the results are "unknown" and FP numbers have no better encoding for "unknown" than NaN.
>>> <
>>> They may be unknown "in general" but in this particular N-R iteration the LIM is known to be 1.000000000000000000000000000.
>> Which is why you cannot use normal (individual/standard) FP ops to do
>> this, you need something higher level which knows about the special
>> rules in effect right here. I.e. like that ARM reciprocal step opcode.
>>
>> Alternatively, and the solution I prefer, you handle all special inputs
>> in parallel with the normal algorithm and merge at the end.
>>
>> I.e. if the divisor is 0 then the 754 standard specifies exactly what
>> the output should be for all the various dividend/divisor combinations:
>>
>> non-zero/zero -> inf with sign according to normal (XOR) rules.
>>
>> zero/zero -> NaN
>> inf/zero -> NaN
>
> Are you sure about it?
> I didn't look in the IEEE docs, but both my intuition and gcc compiler disagree.
> Both say:
> inf/zero -> inf with sign according to normal (XOR) rules.

Oops, sorry!

Yeah, dividing anything except Zero or NaN by zero gives you Inf.

Mea Culpa.

Terje

--
- <Terje.Mathisen at tmsw.no>
"almost all programming can be viewed as an exercise in caching"

Re: Approximate reciprocals

<b8a97fbb-7097-45fe-b0b5-11156cc45563n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=24828&group=comp.arch#24828

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:6214:c2b:b0:44b:c5d9:6e06 with SMTP id a11-20020a0562140c2b00b0044bc5d96e06mr348242qvd.61.1650459673700;
Wed, 20 Apr 2022 06:01:13 -0700 (PDT)
X-Received: by 2002:aca:b405:0:b0:322:ed83:59a1 with SMTP id
d5-20020acab405000000b00322ed8359a1mr767788oif.16.1650459672464; Wed, 20 Apr
2022 06:01:12 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Wed, 20 Apr 2022 06:01:12 -0700 (PDT)
In-Reply-To: <t3oriu$26l$1@gioia.aioe.org>
Injection-Info: google-groups.googlegroups.com; posting-host=2a0d:6fc2:55b0:ca00:5cdc:b922:6737:3cc7;
posting-account=ow8VOgoAAAAfiGNvoH__Y4ADRwQF1hZW
NNTP-Posting-Host: 2a0d:6fc2:55b0:ca00:5cdc:b922:6737:3cc7
References: <t1c154$j5t$1@dont-email.me> <t3k9lo$af7$1@dont-email.me>
<t3lqpf$nea$1@gioia.aioe.org> <8ed2b18a-4815-48c0-8055-cf91614fe0a4n@googlegroups.com>
<b7766fa1-f75e-4486-b477-6a2ec44efc75n@googlegroups.com> <3ae4ba74-1397-436d-a43b-fa854fcce949n@googlegroups.com>
<t3oen8$1qkb$1@gioia.aioe.org> <b3d11498-5ea4-461d-af69-ff1a804d98fcn@googlegroups.com>
<t3oriu$26l$1@gioia.aioe.org>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <b8a97fbb-7097-45fe-b0b5-11156cc45563n@googlegroups.com>
Subject: Re: Approximate reciprocals
From: already5...@yahoo.com (Michael S)
Injection-Date: Wed, 20 Apr 2022 13:01:13 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 80
 by: Michael S - Wed, 20 Apr 2022 13:01 UTC

On Wednesday, April 20, 2022 at 2:42:28 PM UTC+3, Terje Mathisen wrote:
> Michael S wrote:
> > On Wednesday, April 20, 2022 at 11:02:51 AM UTC+3, Terje Mathisen wrote:
> >> MitchAlsup wrote:
> >>> On Tuesday, April 19, 2022 at 5:05:28 PM UTC-5, Michael S wrote:
> >>>> On Tuesday, April 19, 2022 at 10:42:08 PM UTC+3, MitchAlsup wrote:
> >>>>> On Tuesday, April 19, 2022 at 3:10:26 AM UTC-5, Terje Mathisen wrote:
> >>>>>> Marcus wrote:
> >>>>>>> One more thing that I discovered about a week ago:
> >>>>>>>
> >>>>>>> In order to support the IEEE 754 semantics of 1 / 0 == Inf, you actually
> >>>>>>> *need* a special Newtom-Raphson step instruction that handles the
> >>>>>>> special case where x = 0 and y = Inf.
> >>>>>> The obvious way to handle this, if you have a little bit of HW help in
> >>>>>> the form of an input number(s) classifier, is to take out all the
> >>>>>> special cases and merge these results with what you get from the normal
> >>>>>> algorithm.
> >>>>>>>
> >>>>>>> Consider the approximation of y = 1 / x.
> >>>>>>>
> >>>>>>> A single NR step then becomes: y' = y * (2 - x * y)
> >>>>> <
> >>>>> Note: y ~= 1/x -- thus algebraically x×y ~= 1
> >>>>> Here: 0×Inf should be 1 not NaN.
> >>>>> In fact LIM[x->0]( x×~1/x ) -> ~1
> >>>> 0*Inf = NaN for the same reason 0/0=Nan and Inf/Inf=Nan.
> >>>> In all 3 cases the results are "unknown" and FP numbers have no better encoding for "unknown" than NaN.
> >>> <
> >>> They may be unknown "in general" but in this particular N-R iteration the LIM is known to be 1.000000000000000000000000000.
> >> Which is why you cannot use normal (individual/standard) FP ops to do
> >> this, you need something higher level which knows about the special
> >> rules in effect right here. I.e. like that ARM reciprocal step opcode.
> >>
> >> Alternatively, and the solution I prefer, you handle all special inputs
> >> in parallel with the normal algorithm and merge at the end.
> >>
> >> I.e. if the divisor is 0 then the 754 standard specifies exactly what
> >> the output should be for all the various dividend/divisor combinations:
> >>
> >> non-zero/zero -> inf with sign according to normal (XOR) rules.
> >>
> >> zero/zero -> NaN
> >> inf/zero -> NaN
> >
> > Are you sure about it?
> > I didn't look in the IEEE docs, but both my intuition and gcc compiler disagree.
> > Both say:
> > inf/zero -> inf with sign according to normal (XOR) rules.
> Oops, sorry!
>
> Yeah, dividing anything except Zero or NaN by zero gives you Inf.
>
> Mea Culpa.
> Terje
>
> --
> - <Terje.Mathisen at tmsw.no>
> "almost all programming can be viewed as an exercise in caching"

BTW,
I posted implementations of fast quad-precision square root and division
as followups to Thomas Koenig's bug report.
If your are interested, look here:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105101

Pages:12345678910111213
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor