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

Re: Empty interval representations & Motion 13...



John Pryce wrote:
Nate, Dan, P1788

On 4 May 2010, at 07:32, Nate Hayes wrote:
Nate Hayes wrote:
John Pryce wrote:
Dan & P1788

I have gone through Dan's work on comparisons with the empty set
(below), checking against the set theory definitions given in my
mail earlier today.

I think they all agree, except the two I have marked (*). Namely I
think
empty   interior   empty
empty  strictLess  empty
should both give True.


THere are a few other cases that don't agree, e.g., by the
set-theory definitions:...
My mistake: I found a better copy of the old Sun C++ interval
   programmers guide. At least by those definitions, it appears
   empty lessEqual any empty strictlyLess any
   any lessEqual empty
   any strictlyLess empty
are all false.

Interestingly enough, the manual explicitly says
  empty interior empty
is true, but for strictLess, it says
  empty strictLess empty
is false!
Samples of my argument are as follows, with "any" being nonempty. I
   use (all a in empty)P(a)    =  true
   (exist a in empty)P(a)  =  false
whatever the predicate P(a).

That's my general understanding.





1.
"aa lessEqual bb" is defined, following Vincent, as
 (all b in bb)(exist a in aa) a <= b
 and
 (all a in aa)(exist b in bb) a <= b

Hence
 empty lessEqual any gives
 (all b in any)(false)  and  (true)
 =  (false)  and  (true)
 =  false.

 any lessEqual empty gives false, similarly.

 empty lessEqual empty gives
 (true)  and  (true)
 =  true.

2.
The set-theory definition of "aa strictLess bb" is open to debate,
but I am taking it to be the same as Vincent's "aa lessEqual bb" with
<= replaced by <.

It then gives the same as "lessEqual" when aa or bb or both is/are
empty.

In particular it gives
   empty strictLess empty
is true, disagreeing with Nate's C++ guide. Nate, what does the guide
give as its definition of strictLess?

The definition, literally, is:

   X strictLess Y :=
       ( X \not Empty ) and
       ( Y \not Empty ) and
       ( all x \in X )( exists y \in Y ) x < y    and
       ( all y \in Y )( exists x \in X ) x < y

it then gives explicit endpoint-programming formula:

   X strictLess Y :=
       ( X \not Empty ) and
       ( Y \not Empty ) and ( inf(x) < inf(y) ) and ( sup(x) < sup(y) )

The definitions for lessEqual are quite different, and there is a specific
mention that empty lessEqual empty is supposed to be true.

Although by the given definitions these results are perfectly logical,
personally I find them to be counter-intuitive.

Nate





3.
The definition of "aa interior bb" is also open to debate.
Do we take the general topological definition, which is
   (all a in aa)(exist neighbourhood N of a) N \subseteq bb ?
If so, then empty is interior to anything because of the initial
"all".

That is what I would prefer, and at least for empty it agrees with
Nate's C++ guide.

However, this also implies that if aa=[a1,a2] and bb=[b1,b2] are
   nonempty, then "aa interior bb" is equivalent to (b1 == -oo or b1
< a1) and (b2 == +oo or a2 < b2),
in other words, the < conditions are only required at _finite_
   endpoints of bb. E.g., [2,+oo] interior [1,+oo]  gives true.

Do people agree with that?

So -4 for Nate, +1 for John, +1 for Dan, I think.
Hopefully, (+ a few) for P1788's working methods.

John