Accuracy and error analysis (was Re: [Maxima] primes)
Subject: Accuracy and error analysis (was Re: [Maxima] primes)
From: C Y
Date: Fri, 13 May 2005 10:04:29 -0700 (PDT)
--- Albert Reiner wrote:
> [C Y , Fri, 13 May 2005 08:34:53 -0700 (PDT)]:
> > True. If an answer is given at all, it needs to be reliable. But
> > I still fail to understand why the correct procedure (whatever it
> > may be) cannot be an automated one.
>
> Of course it can be automated to a degree.
>
> However, I really believe that you have to understand where your
> errors/uncertainties come from: in order to be correct, an error
> analysis must take into account what terms are independent, how
> uncertainties are correlated, and what kind of distribution describes
> each term. Once you have made all that explicit, automation is (in
> principle) no problem any more.
That's fine. In fact, that's probably what I want. For static,
repeatedly used algorithms (like the ones in Maxima's internal
non-exact numerical routines, which as the only inexact routines
involved in calculating the answer are the ones of interest) this can
presumably be defined (possibly on a per-machine arch. basis.) For
user specified uncertainties, I have no problem with asking the user to
input whatever information is necessary to do the computation correctly
- Maxima cannot solve an incompletely specified problem. Indeed, at
some level all that should be explicit anyway, if in the researcher's
mind if no where else, and I'm much happier when such things are
formalized on paper (or in CAS).
I think I might have stated this wrong - what I want is for Maxima,
given all relevant informtion about a data/equation set, to be able to
do error analysis on the well specified input. I'm guessing the
question then comes down to what is "well specified", and if that's
more than +-d I'm quite willing to have Maxima inquire about whatever
it needs to know when accuracy is essential. If I can't answer the
questions, then it is implicit that I can't do proper error analysis
either, since I don't understand my system fully. That's what I'm
after.
> I just don't see the user actually
> taking the time to make all that explicit from the outset, and it is
> certainly not even possible in the scheme you have in Mma.
It depends on how badly you want it. If accuracy is important enough,
they will. It may be that "standard" defaults for many physical
situations can be defined, also decreasing the workload.
> > It might involve defining error procedures for every function in
> > Maxima, but I just can't believe it's impossible unless proper
> > error analysis is also impossible.
>
> Ah, but there we run into problems: a correct error analysis of
> f(g(x), h(x)), where x is the independent variable, must take into
> account the correlations between the two arguments of f(), or else
> you only end up with the kind of worst case bounds that Mma offers
> you.
Even those can be useful in some situations, but yes I agree the user
should be able to denote the correlations between the arguements. I
have no good vision for a syntax for this, probably because I have a
ways to go to understand the problem properly, but I like the idea.
Worst case for minimal work, better (but still correct) resolution with
more input. Do the quickie, and if that error bound is small enough
you can make a note that the error is overly pessimistic compared to
the "real" limits but still sufficient for a given purpose. If not,
input the information for the more precise analysis (which is also more
work.)
> BTW, the failures in Mma that persist at least to version 5 - the
> last one I knew and checked - seem to imply that those error
> procedures are not so easy to define in all cases.
I can well believe it. But again it's something that has to be done
for things like physical measurements of the natural world, if you want
a reliable answer - either in CAS, or on paper. Conversely, if a
routine does NOT supply such information, how can it be used with any
confidence in an error sensitive environment? I personally would
prefer CAS to paper, if it can be done, because in a sense a properly
implimented error analysis package would also force ME to think about
error analysis correctly, something I suspect is not done as well as it
could be in many cases anyway. There is lot of grunt work to error
analysis Maxima CAN do, but as for relationships between data that has
to come from the user, by definition, if they want the best analysis.
> > And since taking derivatives IS well defined, the computer can
> > verify the correctness of this solution.
>
> But if you are talking about derivatives, you are probably thinking
> just of significance arithmetic where errors are all assumed to be
> small and independent and everything is linearized.
>
> One can certainly implement that - Mma does it, and it is not
> difficult conceptually -, but what use is it? Linearization means
> that you often don't even get rigorous bounds; and neglect of
> correlations leads to often dramatic loss of significance that has
> nothing to do with the significance of the computation. All this
> comes at the prize of introducing a number of ugly work-arounds for
> those limitations, and at a cost in computing time and memory that is
> sufficiently high for the various means of circumventing significance
> arithmetic to be a constant topic in MathGroup at the time I read it.
>
> I am sure it is good for marketing, though.
I don't know at this point which techniques are the best - if
simplification arithmetic is quick but (always) very pessimistic it
would be good for a quick check. I agree it should not be the only
one.
There seem to be two issues here - data input from user containing
uncertainties, and machine induced error. The latter interests me only
in the case where its consideration is necessary for the proper
handling of the former.
> At any rate, I would hope that any error-propagating scheme someone
> might come up with is not integrated as tightly into Maxima as is the
> case for Mma.
Agreed. It should be optional - either no error awareness at all (as
current), simplification (perhaps) for an environment where quick worst
case estimates are useful, and an environment where all relevant
questions are asked to do proper error analysis, for when it is
important enough to do all the work.
CY
Yahoo! Mail
Stay connected, organized, and protected. Take the tour:
http://tour.mail.yahoo.com/mailtour.html