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

Re: Empty interval representations (general)



Dan Zuras Intervals wrote:
We can represent empties as [NaN,NaN] as I believe Juergen
& others would have us do, but it does not mean that the
appearance of [NaN,NaN] means empty. And if we allow such
things to be propagated without note, they can disappear
from a calculation which permits empty as a valid
intermediate result. All without anyone knowing that it
ever happened.  All without knowing that the rocket is
about to blow up.


This doesn't entirely make sense to me. Let me parse it out:

At a conceptual level:

   -- Exception handling with decorations provides a mechanism to
distinguish between Empty and NaI; we have this now in P1788 for a while

   -- Tetrits with bool_set semantics improves our ability to make the
distinction even more pronounced

At this level, I don't see how it follows that "if we allow such things to
be propogated without note, they can dissapear from a calculation which
permits empty as a valid intermediate result."

At a bit-encoding level:

Care is needed. But without first having a clear conceptual model in place,
fools rush in!




If we are to assure our customers of the validity of their
results we must at least be able to detect when they are
NOT valid.


Hmm. In Motion 15 this information DOES dissapear from a calculation --
without note. Even at the conceptual level.




It is for this reason I suggested [+oo,-oo] as a
representation for the empty interval.  Not because it

worked out for the comparisons.  That was a (largely)
lucky accident.  But because it has no NaNs in it.

And if we can define our standard such that every valid
interval has no NaNs in it, then the appearance of a NaN
can be detected as an error that won't be ignored.

THAT was why I made the suggestion.

It is ignoring NaNs when they appear that scares me.

Dan, this sounds a little like an articulation of the need for a distinction
between Empty and NaI (or what I might also describe as distinction between
bare intervals and bare decorations). Are you changing your mind?
I'm a little confused.




Does it not scare you?

Not at the conceptual level of bare intervals and bare decorations, for
example, since none of the things you are afraid of being ignored are
actually ignored at that level.

At the bit-encoding level, I don't know wether to be afraid or not. When I
can see examples how does the implementation fit a specific conceptual
model, this will help. But I'm not sure P1788 has reached a point where we
can really do this, yet.

I still partly think P1788 only needs to specify bit-encodings for
interchange formats and not internal representations of various conforming
implementations.

Nate

P.S. I attach a PDF by Bill Walster on Empty vs. NaI for some perspective.
Not that I do or don't advocate any of it; but perhaps its a reminder on
this topic that we're not the first to kick it around in one form or
another.


Attachment: Empty Intervals.pdf
Description: Adobe PDF document