Re: Motion 31 draft text V04.4, extra notes
Nate & P1788
On 8 Apr 2012, at 16:49, 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?
>>
>> This question has both a theological and a practical aspect...
>> ...
>> of these would be dragged off by someone with horns, a red cloak and a
>> trident.
>
> John, thank you for the colorful philosophy lesson.
>
> I'm not sure what to make of it all.
>
>> Infinities aren't "essential", but they sure are "useful". I know as well
>> as you, Nate, that one can't compute meaningful results at Level 2 for
>> numbers beyond the largest representable, REALMAX. But that does NOT imply
>> (1) X= [a,oo] actually *means* [a,B] for some large finite B; nor
>> (2) it is always computationally useful to replace X by [a, REALMAX].
>
> It appears to me you have changed the subject. Neither (1) nor (2) are
> relevant to what I'm talking about or the question I've asked.... I've
> certainly never advocated (2). So I'm not sure what any of this has to do
> with anything, or why you even bring it up.
Maybe the Easter holiday has made me verbose, for which I'm sorry. Putting my main point briefly: it's hard to give an objective meaning to "essential", it's a value judgement.
Your Q reads: "Specifically: what is a concrete example...?"
I thought my point (1) above was exactly relevant to this. But if it isn't, does your Q refer to an algorithm that does this:
(a) It uses intervals like [a,+oo] at Level 1.
(b) You don't change the code, but you interpret these as [a,+OVR] at Level 2.
Or do you mean that
(b') you need to *translate* the algorithm into an equivalent form that uses intervals of the form [a,+OVR] at Level 2?
Doing (b') is always possible, though it may not be easy.
I don't have first-hand experience of an *interval* algorithm that's relevant to this, but I work a lot with the Linear Assignment Problem (LAP): There are n workers and n tasks to be done. There's an n by n matrix A whose i,j entry a(i,j) means the profitability if worker j does task i, and you want to allocate workers on-to-one to jobs to maximize the total profitability. Each worker is only qualified to do a few tasks. Then it makes sense for a(i,j) = -oo to mean "total incompetence". Some existing LAP codes don't work if one does that so one seeks a suitable large negative number -M, which is analogous to your -OVR, to take the place of -oo and be guaranteed to produce the true optimum. It can be quite tricky to find such a number; hence a code handling -oo directly would be convenient but is not essential. This scenario seems similar to what you are asking for, but I admit it's not the same.
John