
Re: Relational operators on intervals: bug?
Posted:
Nov 14, 2012 1:33 AM


On 11/12/2012 9:13 PM, Murray Eisenberg wrote:
> > Here is the empty interval in Mathematica: > > Interval[{1, 0}] > > Indeed: > > Resolve[Exists[x, IntervalMemberQ[Interval[{1, 0}], x]]] > False > Apparently this doesn't mean what you think it does. It gives the same answer for Interval[{0,1}].
Note that
IntervalMemberQ[ Interval[{1, 0}], 1/2] is TRUE.
IntervalIntersection[Interval[{0, 1}], Interval[{1, 0}]]
is Interval[{0,1}].
That is, the endpoints, in Mathematica, are reordered. This is, in my opinion, a bug.
Using your reasoning, there are an infinite number of ways of writing an Interval with no "insides"  why choose {1,0}? A rather complete calculus of interval including EXTERIOR intervals has been defined, one in which {1,0} is the equivalent of the union of the (open) intervals {Infinity,0} and {1,Infinity}. A canonical representative for an empty set would be useful in such a scheme.
The Mathematica implementation of Intervals seems to have a number of design issues. I've commented on some of them, previously.

