Boost logo

Boost :

From: Paul A Bristow (pbristow_at_[hidden])
Date: 2007-07-15 05:54:37


>-----Original Message-----
>From: boost-bounces_at_[hidden]
>[mailto:boost-bounces_at_[hidden]] On Behalf Of Marat Khalili
>Sent: 15 July 2007 07:36
>To: boost_at_[hidden]
>Subject: Re: [boost] [rfc] Inexact quantities arithmetics

>Paul A Bristow wrote:
>> The word error gives off some very wrong vibes, and I would
>strongly urge you to change to using uncertainty instead of error,
>> despite the historial use of the word error. It *really,
>really* isn't an error - it is a interval of (un-)certainty.

>What do you think about 'uncertainty_interval_half_width'?

It could be - but that makes all sorts of assumptions about distribution, normality? 95% confidence? ...

so I think you want a more vague (and shorter!) name.

>Seriously I wanted to call it
>'deviation' first, but opted for shorter identifier; same number of
>letters as in 'value' is additional bonus, makes code more
>symmetrical.
>BTW shouldn't 'value' be called average, mean or expectancy?

Well it might be, but if there is only one exact value 2 +- 0,
and you might consider it 'most likely' so again I eventually favoured a vague term like value.

>I thought it is still colloquially being called 'error',

You are quite right - but I strongly advise that this is out-dated.

> but I'll think about it. Some help from English-speaking folks will be appreciated.

I *really* am English-speaking!

 - unlike Boost's many American-English speakers ;-)

>> You should also see
>>
>> http://trs-new.jpl.nasa.gov/dspace/bitstream/2014/29189/1/95-0368.pdf
>
>Yes, this one looks very much like one I'm thinking about. As
>a work of
>a government employee his code must be free, shouldn't it?

I have assumed so.
>> and FWIW some of my comments some years ago
>>
>> http://lists.boost.org/Archives/boost/2003/04/46828.php
>
>Is it open-source?

It isn't in a state where I would want anyone else to see it with my name on it ;-((

>> My uncertain class has a value, standard deviation, degrees
>of freedom, and 16
>> uncertainty type flags - square, triangular, gaussian, exact etc

This fits into 128 bits, so only doubling the space required to store a 'value'.

>> I also felt it was vital to store the degrees of freedom
>with the value and uncertainty, and I also added some other bits of
>> information like quantization (from A/D conversion), exact
>values, where the uncertainty estimate came from ...
>
>This looks too heavy for me, it was tuned for some specific
>task, right?

Not really, I was trying to cater for ALL types of physical measurement, from astronomy to social science.

>Generally, adding or substracting two lognormal values produces
>god-knows-what. Either you keep the whole (joint!)
>distribution or nothing.

True - but I felt there was value in recording where the uncertainty estimates came from - repeated (with how many) measurements,
some other estimating method, A/D conversion quantisation, round-off from number of significant digits...

But I also wanted to achieve the compile-time checking of units, now a Boost library, and get output nice, including the 'right'
number of significant digits (from the uncertainty).

This is more that I can chew at present ;-)

Though it still seems a reasonable enough requirement.

Paul

PS I recall some New Zealand programmers work on this, but can't find a reference immediately.

---
Paul A Bristow
Prizet Farmhouse, Kendal, Cumbria UK LA8 8AB
+44 1539561830 & SMS, Mobile +44 7714 330204 & SMS
pbristow_at_[hidden]
 

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk