$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
Subject: Re: [boost] boost interval arithmetic
From: Marc Glisse (marc.glisse_at_[hidden])
Date: 2015-01-14 17:43:16
On Thu, 15 Jan 2015, ðÁ×ÅÌ ëÕÄÁÎ wrote:
>> Language barrier. You are grossly misunderstanding the documentation. "The
>> set of division results" is [-inf,-1] union [1,inf]. "The smallest
>> interval containing" this set is [-inf,inf]. It is NOT the same thing as
>> the smallest connected component of the set.
>
> Good news. In that case there is no bag in implementation of misconception.
>
> But misconception still exist.
Yes, yours.
> As a result of one of basic operator are still wrong.
>
> [-inf, inf] IS NOT [-inf, -1] U [1, inf]
It doesn't claim to be. We could have a class union_of_intervals so we can 
represent [1,2]U[3,4]U[5,6] for instance. But that would be super 
expensive. What interval does is maintain one interval that contains all 
possible values. It never claims that all values in this interval can 
actually be achieved. It is a good compromise. And it goes as long as it 
can. [-inf,inf] is still a valid interval. The one case where it *has* to 
stop is when doing an uncertain comparison (or more precisely, when 
converting such a comparison result to a bool). Returning true would be 
wrong, and so would returning false, so it throws. For division, it has a 
valid way to keep going: [-inf,+inf] so it uses it.
Again, the meaning of an interval is that the correct value has to be in 
that interval. The interval is not equal to the set of possible values, it 
is a superset that can be determined cheaply. It tries to keep that 
superset small, but only as long as it is cheap.
> May be we could find a way to contact to class maintainers?
As I said, I believe they have all moved to other projects and are not 
interested anymore (though they are of course welcome to prove me wrong). 
This list is as good as it gets.
It would be really helpful, if you intend to pursue this, to stop 
considering that other people have no idea what interval arithmetic is. 
There are several possible variants, see 
http://grouper.ieee.org/groups/1788/ for the group working on 
standardizing intervals. If you want a different one than what boost 
provides, it may make sense, but that doesn't mean that everything else is 
broken.
-- Marc Glisse