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

Re: Motion 13



Ulrich Kulisch wrote:
Vincent Lefevre schrieb:
On 2010-05-03 08:53:40 +0200, Ulrich Kulisch wrote:

I think the problem with the empty set should be further discussed.


I agree.


I have great sympathy with Dan's mail of April 22. I had very
similar thoughts when I was working on my book. I studied modells
representing the empty set by a tuple aiming to avoid the necessity
of frequent checking for it.
Dan:

[+oo, -oo] * [+oo, -oo] = [-oo, +oo]  while [NaN, NaN] * [NaN, NaN] =
[NaN, NaN]. So it seems that
[NaN, NaN] is better suited to represent the empty set.
In a mail of April 22 Arnold Neumaier
wrote:
"This is just to let you know of Siegfried Rump's decision to remove
empty intervals from Intlab Version 6;".

I conclude from this decision that there are hardly any applications
where the empty set occurs as an operand in an operation or a
comparison.
Therefore my question: DOES ANYBODY HAVE AN IMPOTANT APPLICATION WHERE
THE EMPTY SET APPEARS AS AN OPERAND IN AN OPERATION OR A COMPARISON?


The only operation I can think of might be if someone wishes
   X \union Empty = X
for some non-empty interval X. I don't personally use it in any application,
but I could see why someone might consider this is important.

Otherwise in my own personal experience Empty in comparison relations can
lead to misleading results and bugs, since by some definitions certain
relations may be vacuously true... counter to intuition. For the unwary,
this can unintentionally lead to wrong branches of execution being taken in
a computer program, for example, if the programmer is not very, very careful
to be aware of the exact definitions of the relation operators when one or
more operand is empty. As recent discussion shows, this can be quite
complicated, even for experts. This is a reason I like in Marco and
Jeurgen's paper that Empty appears to be treated more like NaI, in the sense
that relations involving Empty are false.

For all remaining arithmetic operations, I believe Empty and NaI have
exactly the same semantics, so the distinction between the two becomes less
important.




In a mail of April 23 Juergen wrote:
"I strongly propose to stay with our clear math. model and not to
sacrifice the empty set for efficiency."



I agree to a certain extent.
Intlab is a software package. So frequent checking for the empty set
is time consuming.
This would not be the case if the checking is done in hardware. Here
it could be executed in parallel and simultaneously with the
operation. So it just would need a little silicon.
I think that the empty set should be regarded as some kind of
exception. But this isn't obvious.
I agree with that.
Some mathematical properties
(such as the subset inclusion yielding a lattice) would be true
only when the empty set is considered, while for others (ordering
between intervals yielding a lattice) it would be the opposite.

I have no problem with that.

I don't either.

Nate