Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.arch > #1432 > unrolled thread

Re: Computer arithmetic problems worth exploring

Started by"Paul A. Clayton" <paaronclayton@gmail.com>
First post2011-05-10 19:24 -0700
Last post2011-05-12 20:14 -0700
Articles 9 — 5 participants

Back to article view | Back to comp.arch


Contents

  Re: Computer arithmetic problems worth exploring "Paul A. Clayton" <paaronclayton@gmail.com> - 2011-05-10 19:24 -0700
    Re: Computer arithmetic problems worth exploring nmm1@cam.ac.uk - 2011-05-11 08:46 +0100
      Re: Computer arithmetic problems worth exploring "Andy \"Krazy\" Glew" <andy@SPAM.comp-arch.net> - 2011-05-11 13:11 -0700
        Re: Computer arithmetic problems worth exploring nmm1@cam.ac.uk - 2011-05-11 21:51 +0100
          Re: Computer arithmetic problems worth exploring "Andy \"Krazy\" Glew" <andy@SPAM.comp-arch.net> - 2011-05-12 20:12 -0700
            Re: Computer arithmetic problems worth exploring Quadibloc <jsavard@ecn.ab.ca> - 2011-05-12 20:53 -0700
            Re: Computer arithmetic problems worth exploring Jason Riedy <jason@lovesgoodfood.com> - 2011-05-13 00:03 -0400
        Re: Computer arithmetic problems worth exploring nmm1@cam.ac.uk - 2011-05-12 00:07 +0100
          Re: Computer arithmetic problems worth exploring "Andy \"Krazy\" Glew" <andy@SPAM.comp-arch.net> - 2011-05-12 20:14 -0700

#1432 — Re: Computer arithmetic problems worth exploring

From"Paul A. Clayton" <paaronclayton@gmail.com>
Date2011-05-10 19:24 -0700
SubjectRe: Computer arithmetic problems worth exploring
Message-ID<0fbd4179-1128-4ae0-94cf-91fcc25f6401@glegroupsg2000goo.googlegroups.com>
On Tuesday, May 10, 2011 1:41:35 PM UTC-4, nm...@cam.ac.uk wrote:
[snip]
> Note that I have no objection to signed infinitesimals ('zeroes'),
> provided that they are not conflated with true or approximate
> zeroes, and it is THAT that causes the trouble - NOT the actual
> existence of signed infinitesimals.

What is the difference between an approximate zero and an 
infinitesimal?  (It does seem to me that infinitesimals 
should be treated like infinities and that having a true 
zero is somewhat important.)  Is an approximate zero 
infinitesimal of unknown/unspecified sign?  How would such 
be used to match the intended semantics or help debugging?

[toc] | [next] | [standalone]


#1441

Fromnmm1@cam.ac.uk
Date2011-05-11 08:46 +0100
Message-ID<iqderu$k1$1@gosset.csi.cam.ac.uk>
In reply to#1432
In article <0fbd4179-1128-4ae0-94cf-91fcc25f6401@glegroupsg2000goo.googlegroups.com>,
Paul A. Clayton <comp.arch@googlegroups.com> wrote:
>
>> Note that I have no objection to signed infinitesimals ('zeroes'),
>> provided that they are not conflated with true or approximate
>> zeroes, and it is THAT that causes the trouble - NOT the actual
>> existence of signed infinitesimals.
>
>What is the difference between an approximate zero and an 
>infinitesimal?  (It does seem to me that infinitesimals 
>should be treated like infinities and that having a true 
>zero is somewhat important.)  Is an approximate zero 
>infinitesimal of unknown/unspecified sign?  How would such 
>be used to match the intended semantics or help debugging?

All of this predates 'computer science', and is mostly grounded
in solid mathematics.  Some is grounded in the slightly less solid
mathematics of the numerical analytic properties of floating-point.

In the field of real numbers, there are positive numbers, negative
numbers and true zero.  This can be extended by adding infinities
and infinitesimals.  The latter have values of zero but a known
sign, and are inverses of the infinities with the same sign.  That
means that there are 7 possibilities for 'zeroes', corresponding
to which of those the value can include. The most useful are:

                              -     0     +
True zero                     No    Yes   No
Approximate zero              Yes   Yes   Yes

The remainder are:
                              -     0     +
Positive infinitesimal        No    No    Yes
Non-negative infinitesimal    No    Yes   Yes
Negative infinitesimal        Yes   No    No
Non-positive infinitesimal    Yes   Yes   No
Indeterminate infinitesimal   Yes   No    Yes

And, of course:
                              -     0     +
Non-zero                      No    No    No

Numerical analysis started to consider finite arithmetics way
back when, and covered both fixed- and floating-point.  In both,
but especially in the latter, it was clear that the zero was not
a true zero but an approximate zero, and the model chosen was
that it was the one above.  In cases when the sign was known, it
was typically remarked on and handled specially.

When modern computing started, the design of the floating-point
was dominated by numerical analysts, who knew the existing theory
and mapped it to hardware and software.  Considerably later, the
subject of 'computer science' invented itself and, for complex
sociological reasons, more-or-less eliminated numerical analysis
from its canon.  And that is where we are today, and why.


Regards,
Nick Maclaren.

[toc] | [prev] | [next] | [standalone]


#1458

From"Andy \"Krazy\" Glew" <andy@SPAM.comp-arch.net>
Date2011-05-11 13:11 -0700
Message-ID<4DCAED84.8000007@SPAM.comp-arch.net>
In reply to#1441
On 5/11/2011 12:46 AM, nmm1@cam.ac.uk wrote:
> In article<0fbd4179-1128-4ae0-94cf-91fcc25f6401@glegroupsg2000goo.googlegroups.com>,
> Paul A. Clayton<comp.arch@googlegroups.com>  wrote:
>>
>>> Note that I have no objection to signed infinitesimals ('zeroes'),
>>> provided that they are not conflated with true or approximate
>>> zeroes, and it is THAT that causes the trouble - NOT the actual
>>> existence of signed infinitesimals.
>>
>> What is the difference between an approximate zero and an
>> infinitesimal?  (It does seem to me that infinitesimals
>> should be treated like infinities and that having a true
>> zero is somewhat important.)  Is an approximate zero
>> infinitesimal of unknown/unspecified sign?  How would such
>> be used to match the intended semantics or help debugging?
>
> All of this predates 'computer science', and is mostly grounded
> in solid mathematics.  Some is grounded in the slightly less solid
> mathematics of the numerical analytic properties of floating-point.
>
> In the field of real numbers, there are positive numbers, negative
> numbers and true zero.  This can be extended by adding infinities
> and infinitesimals.  The latter have values of zero but a known
> sign, and are inverses of the infinities with the same sign.  That
> means that there are 7 possibilities for 'zeroes', corresponding
> to which of those the value can include. The most useful are:
>
>                                -     0     +
> True zero                     No    Yes   No
> Approximate zero              Yes   Yes   Yes
>
> The remainder are:
>                                -     0     +
> Positive infinitesimal        No    No    Yes
> Non-negative infinitesimal    No    Yes   Yes
> Negative infinitesimal        Yes   No    No
> Non-positive infinitesimal    Yes   Yes   No
> Indeterminate infinitesimal   Yes   No    Yes
>
> And, of course:
>                                -     0     +
> Non-zero                      No    No    No
>
> Numerical analysis started to consider finite arithmetics way
> back when, and covered both fixed- and floating-point.  In both,
> but especially in the latter, it was clear that the zero was not
> a true zero but an approximate zero, and the model chosen was
> that it was the one above.  In cases when the sign was known, it
> was typically remarked on and handled specially.
>
> When modern computing started, the design of the floating-point
> was dominated by numerical analysts, who knew the existing theory
> and mapped it to hardware and software.  Considerably later, the
> subject of 'computer science' invented itself and, for complex
> sociological reasons, more-or-less eliminated numerical analysis
> from its canon.  And that is where we are today, and why.
>
>
> Regards,
> Nick Maclaren.


Are you aware of - rather, can you tell us of - any computers that have 
support for all of the zeroes and infinitesimals that you list above?

I'm not aware of any hardware implementations.  So, I'd be interested in 
any software implementations.

Similarly, for infinities: -infinity, +infinity, and the infinity of 
unknown sign. (What is 1/true zero in this scheme?)

---

While we are at it, I have been thinking about complex numbers more and 
more.  What are the infinitesimals for complex numbers?  Intervals for 
the angle, and/or -0,0,+0, -inf,inf,+inf for the radius?

(For that matter, infinitesimals for the angles matter.  But around and 
cut point, not just 0.)

[toc] | [prev] | [next] | [standalone]


#1466

Fromnmm1@cam.ac.uk
Date2011-05-11 21:51 +0100
Message-ID<iqesrs$agv$1@gosset.csi.cam.ac.uk>
In reply to#1458
In article <4DCAED84.8000007@SPAM.comp-arch.net>,
Andy \"Krazy\" Glew <andy@SPAM.comp-arch.net> wrote:
>>
>> In the field of real numbers, there are positive numbers, negative
>> numbers and true zero.  This can be extended by adding infinities
>> and infinitesimals.  The latter have values of zero but a known
>> sign, and are inverses of the infinities with the same sign.  That
>> means that there are 7 possibilities for 'zeroes', corresponding
>> to which of those the value can include. The most useful are:
>>
>>                                -     0     +
>> True zero                     No    Yes   No
>> Approximate zero              Yes   Yes   Yes
>>
>> The remainder are:
>>                                -     0     +
>> Positive infinitesimal        No    No    Yes
>> Non-negative infinitesimal    No    Yes   Yes
>> Negative infinitesimal        Yes   No    No
>> Non-positive infinitesimal    Yes   Yes   No
>> Indeterminate infinitesimal   Yes   No    Yes
>>
>> And, of course:
>>                                -     0     +
>> Non-zero                      No    No    No
>>
>
>Are you aware of - rather, can you tell us of - any computers that have 
>support for all of the zeroes and infinitesimals that you list above?
>
>I'm not aware of any hardware implementations.  So, I'd be interested in 
>any software implementations.

I can't think of any offhand, but I wasn't talking software.  That's
all classic mathematics.  I have certainly drafted such designs, and
spoken to other people who have done the same, but I can't remember
having seen any usable code.

>Similarly, for infinities: -infinity, +infinity, and the infinity of 
>unknown sign. (What is 1/true zero in this scheme?)

1/0 is undefined in any field, and always has been.  Hence a NaN.
Most people would also map the infinity of unknown sign to a NaN,
but you could have another value if you preferred.


Anyway, my point wasn't that you SHOULD provide all of that, but
that the traditional arithmetic model is mathematically consistent,
and (bluntly) IEEE 754 isn't.


Regards,
Nick Maclaren.

[toc] | [prev] | [next] | [standalone]


#1518

From"Andy \"Krazy\" Glew" <andy@SPAM.comp-arch.net>
Date2011-05-12 20:12 -0700
Message-ID<4DCCA181.9030401@SPAM.comp-arch.net>
In reply to#1466
On 5/11/2011 1:51 PM, nmm1@cam.ac.uk wrote:
> In article<4DCAED84.8000007@SPAM.comp-arch.net>,
> Andy \"Krazy\" Glew<andy@SPAM.comp-arch.net>  wrote:

> 1/0 is undefined in any field, and always has been.  Hence a NaN.
> Most people would also map the infinity of unknown sign to a NaN,
> but you could have another value if you preferred.
>
>
> Anyway, my point wasn't that you SHOULD provide all of that, but
> that the traditional arithmetic model is mathematically consistent,
> and (bluntly) IEEE 754 isn't.


"Traditional mathematical model"?

I thought this wall all classified as non-standard analysis.  Which was 
not mathematically formalized until the 20th century.  Is that what you 
mean by "traditional"?

And then I realized: you are from Cambridge. Home of Isaac Newton and 
infinitesimals.

[toc] | [prev] | [next] | [standalone]


#1524

FromQuadibloc <jsavard@ecn.ab.ca>
Date2011-05-12 20:53 -0700
Message-ID<e8217a9b-6b00-4804-a82d-fc5fdb2cdaef@h9g2000yqk.googlegroups.com>
In reply to#1518
On May 12, 9:12 pm, "Andy \"Krazy\" Glew" <a...@SPAM.comp-arch.net>
wrote:
> On 5/11/2011 1:51 PM, n...@cam.ac.uk wrote:
> > In article<4DCAED84.8000...@SPAM.comp-arch.net>,
> > Andy \"Krazy\" Glew<a...@SPAM.comp-arch.net>  wrote:

> > 1/0 is undefined in any field, and always has been.  Hence a NaN.
> > Most people would also map the infinity of unknown sign to a NaN,
> > but you could have another value if you preferred.
>
> > Anyway, my point wasn't that you SHOULD provide all of that, but
> > that the traditional arithmetic model is mathematically consistent,
> > and (bluntly) IEEE 754 isn't.
>
> "Traditional mathematical model"?
>
> I thought this wall all classified as non-standard analysis.  Which was
> not mathematically formalized until the 20th century.  Is that what you
> mean by "traditional"?
>
> And then I realized: you are from Cambridge. Home of Isaac Newton and
> infinitesimals.

One hardly has to reach that far back into history.

When computers crunch numbers, they're often doing it on behalf of
scientists and engineers. While it is true that group theory has made
an appearance in particle physics, in general *standard* analysis -
good old calculus, differential equations, and perhaps even
variational methods is what they will be using.

At least, of course, they usually do get directed towards literature,
if not courses, on numerical analysis - unlike the poor duffers who
only have high-school algebra (which also fails to introduce them to
Cantor or taxicab geometry) to help them.

One would sort of expect that a little common sense would tell people
that real numbers are infinitely precise, and the floating-point
numbers a computer handles cannot be - instead, to be manipulable in
reasonable time, they have to have a precision that is severely
limited. But, in fairness, one can't expect people to know _which_ of
the things that are obvious after one is told about them they should
exercise their common sense to find out about.

John Savard

[toc] | [prev] | [next] | [standalone]


#1526

FromJason Riedy <jason@lovesgoodfood.com>
Date2011-05-13 00:03 -0400
Message-ID<87zkmrb62w.fsf@NaN.sparse.dyndns.org>
In reply to#1518
And Andy Glew writes:
>> Anyway, my point wasn't that you SHOULD provide all of that,
>> but that the traditional arithmetic model is mathematically
>> consistent, and (bluntly) IEEE 754 isn't.
>
> "Traditional mathematical model"?

If he means models backed by formal logic, then yes, 754 is fine.
  http://hal.inria.fr/inria-00534854/en/
-- 
Jason

[toc] | [prev] | [next] | [standalone]


#1471

Fromnmm1@cam.ac.uk
Date2011-05-12 00:07 +0100
Message-ID<iqf4rr$bjr$1@gosset.csi.cam.ac.uk>
In reply to#1458
In article <4DCAED84.8000007@SPAM.comp-arch.net>,
Andy \"Krazy\" Glew <andy@SPAM.comp-arch.net> wrote:
>
>While we are at it, I have been thinking about complex numbers more and 
>more.  What are the infinitesimals for complex numbers?  Intervals for 
>the angle, and/or -0,0,+0, -inf,inf,+inf for the radius?

There's only one.  The consistent compactification of the real
line has two infinities, one at each end.  That of the complex
numbers is the Riemann sphere, with a single point at infinity.

You will immediately notice that using Cartesian representation
with two compactified real numbers does not map well onto what
is needed for complex ones.  It's a devil of a problem, technically
most easily addressed by using polar coordinates.  However, that
is a step too far for most people ....


Regards,
Nick Maclaren.

[toc] | [prev] | [next] | [standalone]


#1519

From"Andy \"Krazy\" Glew" <andy@SPAM.comp-arch.net>
Date2011-05-12 20:14 -0700
Message-ID<4DCCA207.6030403@SPAM.comp-arch.net>
In reply to#1471
On 5/11/2011 4:07 PM, nmm1@cam.ac.uk wrote:
> In article<4DCAED84.8000007@SPAM.comp-arch.net>,
> Andy \"Krazy\" Glew<andy@SPAM.comp-arch.net>  wrote:
>>
>> While we are at it, I have been thinking about complex numbers more and
>> more.  What are the infinitesimals for complex numbers?  Intervals for
>> the angle, and/or -0,0,+0, -inf,inf,+inf for the radius?
>
> There's only one.  The consistent compactification of the real
> line has two infinities, one at each end.  That of the complex
> numbers is the Riemann sphere, with a single point at infinity.
>
> You will immediately notice that using Cartesian representation
> with two compactified real numbers does not map well onto what
> is needed for complex ones.  It's a devil of a problem, technically
> most easily addressed by using polar coordinates.  However, that
> is a step too far for most people ....


Sorry the Riemann sphere formulation for complex is equivalent to the 
affine for reals, with only a single infinity in both cases.

As you may have noticed, I immediately jump to polar coordinates for 
directed infinities.

[toc] | [prev] | [standalone]


Back to top | Article view | comp.arch


csiph-web