|
Boost : |
Subject: Re: [boost] boost interval arithmetic
From: Asbjørn (lordcrc_at_[hidden])
Date: 2015-01-15 07:08:51
On 15.01.2015 12:22, Ðавел ÐÑдан wrote:
>
> But at any comparison mode arithmetic functions must return correct result.
This[1] article mentions the following:
"There is, however, no consensus on interval division.
In most expositions, interval division, X/Y , is only defined under the
condition that 0 not be contained in Y."
"Interval computation involving division has to be a compromise between
information gain, computational efficiency, and program complexity."
"For efficiency in computation, one may choose to represent
sets of reals by a single closed interval. This can be simply
achieved by replacing <a, b> / <c, d> by the least interval con-
taining it. For the example above this would yield the inter-
val <ââ, +â>. Another choice would be to represent this
quotient as a finite union of closed intervals, which would
result in more information but also a greater cost in storage
and processing for the operation. For the example above,
this would yield <ââ, 0> ⪠<1, +â>, which captures all infor-
mation except for the openness of the right endpoint of the
first interval."
I'm not very familiar with interval arithmetics, but I do work with some
algorithms where it could be useful and as such have been looking into it some.
A policy for how to handle divisions seems like a good compromise if it's not
too difficult to implement, ie current behavior vs throw in cases where the
result should technically be a union of intervals.
[1]:
http://fab.cba.mit.edu/classes/S62.12/docs/Hickey_interval.pdf
- Asbjørn
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk