Re: Motion 31 draft text V04.4, extra notes
Nate et al,
Please see my inserted comments (speaking as a member, rather than
as chair).
Baker
On 04/08/2012 10:49 AM, Nate Hayes wrote:
John Pryce wrote:
On 6 Apr 2012, at 17:13, Nate Hayes wrote:
But I believe we also want to support intervals as ranges, e.g. for
constraint propagation. In that case it is essential to provide for
unbounded intervals at Level 1.
Folks, I apologize in advance for being pedantic but someone needs to
explain this to me:
Why is it "essential"?
Specifically: what is a concrete example of a computer algorithm that can
produce more meaningful results with unbounded Level 1 intervals as
opposed
to "overflown" intervals at Level 2?
Speaking as a user, rather than as chair:
How would you represent, say, in an optimization code,
a decision variable that had a lower bound constraint
but no upper bound constraint, visa versa, or a free
interval? For example, in input conventions for LP solvers,
something akin to infinity is used. In older solvers,
these absent bounds are sometimes replaced by something
like 10^{12}, which can lead to scaling problems and
other problems.
Such intervals are not the result of an operation.
In constraint propagation, such free variables or semi-free
variables can be initialized to something like [a,\alpha], where
\alpha is either thought to be MAXREAL or \infty, intervals that
are subsequently processed either with arithmetic or by intersection.
Using MAXREAL rather than \infty can lead to the arithmetic
"lying," although merrily computing while unaware of the presence
of \infty can also lead to problems.
In my view, unbounded intervals are an overly-complicated and unnecessary
aspect of the Level 1 model, and I see this complication trickles down to
Level 2 and below into the implementations. I believe Motion 3 was the right
thing to do at the time, but over the years of listening to P1788
discussions I've come to the conclusion the standard Level 1 model should be
restricted to bounded intervals, with the notion of "overflown" intervals
then introduced at Level 2.
Please clarify the difference between an unbounded interval produced as
the result of an overflow and an unbounded interval that contains infinity,
other than that the first is the result of an operation and the second
is a datum with the same status as other data values, that can be
present before computations begin.
This is all separate from the issue of whether 1788 should give a way to
*distinguish* a genuinely unbounded interval from an "overflowed" one that
is known to be bounded but has a bound outside the representable range.
I think P1788 just needs to pick one or the other: ubounded or "overlown"
intervals. I see absolutely no reason for both, since I have been asking the
question for years "what is an example of any algorithm that requires both"
and no one has ever answered that question, either!!
I agree with that. (Although the prominent among us have discussed both
kinds of intervals, it is still somewhat unclear to me why the
distinction need be made. Perhaps we can revisit this issue, and maybe
put forward some additional defining motions.)
Nate
--
---------------------------------------------------------------
Ralph Baker Kearfott, rbk@xxxxxxxxxxxxx (337) 482-5346 (fax)
(337) 482-5270 (work) (337) 993-1827 (home)
URL: http://interval.louisiana.edu/kearfott.html
Department of Mathematics, University of Louisiana at Lafayette
(Room 217 Maxim D. Doucet Hall, 1403 Johnston Street)
Box 4-1010, Lafayette, LA 70504-1010, USA
---------------------------------------------------------------