Re: Constructors motion 30 Version 2.
John Pryce wrote:
1. I have become more convinced that *at Level 1* an operation, at
input(s)
where it does not have a natural value, should simply be undefined --
in a
Level 1 algorithm "f is undefined at x" makes unambiguous sense. I
think
Vincent agrees, maybe others.
I'm one that also agrees.
2. I agree with those (Arnold, Dan, ...) who say there should only be
constructors of *decorated* intervals, not of bare intervals. This
makes
constructors secure by default, in the sense that if a programmer wants
to
discard a decoration that signals construction failure, they must do so
*explicitly*.
Perhaps with the one exception that when using compressed intervals there
may be a threshold value specified by the user that makes discarding either
the interval part or decoration part of a deocated interval implicit.
However, resolving that question isn't germaine to this current motion.
For now, I
assume the interval-part of any NaI is Empty
Yes.
I'm skeptical of arguments such as Vincent (2012 Jan 4)
(a) ... if nums2interval(l,u) fails, i.e. in the case l > u
or l = +oo or u = -oo, then { x in R | l <= x <= u } is still
mathematically defined and is the empty set.
It seems to me that if
nums2interval(-oo,-oo)
fails and returns NaI, then by your comment above this implies the interval
part of the constructed result is Empty. FWIW, this is what I would expect,
as well.
Nate