Thread Links Date Links
Thread Prev Thread Next Thread Index Date Prev Date Next Date Index

Re: Past uses of NaN?



On Nov 2 2010, Arnold Neumaier wrote:

To check that we forget nothing of relevance, it would be useful if
someone could collect the main different uses (or suggested uses)
that NaNs have in past applications.

I attach a paper that I partially wrote some time ago, have circulated
in various contexts, and which has always been received with a resounding
thud.  Look at Appendix A on page 9 for a discussion on this.

At present, I am aware of
three different systematic uses, the first two corresponding to
the above two cases:

-- signalling ''invalid''; e.g., sqrt(-1)=NaN;
-- signalling ''arbitrary''; e.g., 0/0=NaN; inf-inf=NaN;
-- signalling ''missing value''; e.g., max(1,NaN,4,2)=4.

Their interval analogues can be adequately handled using decorations.

So my questions are:

What other uses had been discussed in the 754-discussions?

What makes you think that those uses were?  That is only partially a
joke.  Several people raised the semantic issues when I was following it
(which was from fairly late on), and the (major) problems they raised
were invariably swept aside and effectively ignored.

The use for missing values was first perpetrated by C, and its rationale
for doing so may be politely described as demonstrably almost totally
bogus.  In particular, its claim about the need for max(A,NaN) = A in
statistics is the converse of the truth.  I could explain that in detail,
if people are interested.

What sorts of payloads were considered (potentially) useful?

Originally, in the glint of the eye of the originating team, anything,
as far as I know - i.e. my use 'B'.  However, all such uses either need
recoverable exceptions or will be handled outside the arithmetic model,
and neither fit with 'third-generation' languages.


Regards,
Nick Maclaren.

Attachment: IEEE.pdf
Description: IEEE.pdf