MathGroup Archive 2006

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Re: 1`2 == 1*^-10

  • To: mathgroup at smc.vnet.net
  • Subject: [mg71582] Re: [mg71572] Re: [mg71525] 1`2 == 1*^-10
  • From: "Chris Chiasson" <chris at chiasson.name>
  • Date: Fri, 24 Nov 2006 01:17:02 -0500 (EST)
  • References: <200611221022.FAA04444@smc.vnet.net>

I find the main problem I have with the significance arithmetic is
that errors are combined independently in calculations more than one
step removed from the independent variables, forcing me to use a
different approach (or get errors that are too high).

All that stuff about polynomials went over my head :-/ Sorry.

On 11/23/06, Andrzej Kozlowski <akoz at mimuw.edu.pl> wrote:
> *This message was transferred with a trial version of CommuniGate(tm) Pro*
> Mathematica's confidence aritmetic is not suitable and not meant for
> this sort of situation. In empirical situations you never actualy
> know that your data has exactly 2 or exactly 3 digits of precision.
> What you do know at best is that your error has has a certain
> statistical distribution; and the correct approach in such cases is
> the "backward error" computation  of numerical analysis.
> Mathematica's approach is based on interval arithmetic ("forward
> error") which is can be very useful for purely mathematical purposes
> (one can actually use it to produce "exact" proofs, as has been
> demonstrated on this group. But it is a poor model of situations
> where one deal with empirical errors.
> For example, in Hans Stetter's book "Numerical Polynomial
> agebra" (and a number of other places) the notion of an empirical
> polynomial is considered.  The coefficients of such polynomials are
> known only vaguely.  One does not even any precise bounds within
> which each coefficient lies,  but only certain specified tolerances,
> which can be different for different coefficients.  The questions
> that arise in connection with empirical data, e.g. finding roots of
> polynomial systems, are not those of equality (as with Mathemaitca's
> interval like approximate objects) but of validity.  A candidate
> solution for an empirical problem with specified data is considered
> valid with a certain degree of validity if it is the exact solution
> for an set of empirical data lying within a certain distance (in a
> metric defined using the tolerances for the different coefficients)
> of the specified data.  The minimum distance between the specified
> data and data for which the candidate solution is an exact solution
> constitutes the backward error (originally introduced by J.
> Wilkinson) of the solution.
> What Mathematica's "significane arithmetic" is really good at is
> automatic detection of numerical instability and automatic increase
> of precision of computations to overcome it. Numerical instability is
> a mathematical and not empirical phenomenon.  The power of
> significance arithmetic is shown at its best in such techniques as
> approximate root isolation or numerical Groebner basis (used by
> NSolve). Typically precision of over one hundred digits is used.
> Empirical problems with low precision data are not well modelled by
> this and any results obtained with significance arithmetic are almost
> certain to be useless. What you need is old fashioned backward error
> analysis, which seems rather hard to implement in software (I don't
> know of any program that performs is automatically) and requires
> certain basic skils in numerical analysis.
>
> Andrzej Kozlowski
>
>
> On 23 Nov 2006, at 22:10, Chris Chiasson wrote:
>
> > One reason a person may want to work with low precision (or accuracy)
> > is when the given data is already of low precision (or accuracy). For
> > instance, I only know how tall I am to within half an inch or so. If I
> > were doing a calculation involving my height, I would probably enter
> > it as:
> >
> > height=6*12+1``0
> >
> > That's already down to 1.857 digits of precision.
> >
> > On 11/23/06, Andrzej Kozlowski <akoz at mimuw.edu.pl> wrote:
> >> This has come up several times before. I can't imagine why you need
> >> to consider numbers with two digits of precision but if you really do
> >> I think the best suggestion can be found here:
> >>
> >>
> >> http://forums.wolfram.com/mathgroup/archive/2006/Feb/msg00108.html
> >>
> >> Andrzej Kozlowski
> >>
> >>
> >> On 22 Nov 2006, at 19:22, Andrew Moylan wrote:
> >>
> >> > Hi all,
> >> >
> >> > Please help me understand the following behaviour, which was
> >> wrecking
> >> > havoc the results I get from calling the function Sort:
> >> >
> >> > Evaluating
> >> >   1`2 == 1*^-10
> >> > gives
> >> >   True
> >> >
> >> > Correspondingly, evaluating each of
> >> >   1`2 < 1*^-10
> >> > and
> >> >   1`2 > 1*^-10
> >> > give
> >> >   False
> >> >
> >> > Can anyone explain why these two numbers are declared to be equal?
> >> > It's
> >> > inconsistent with my previous understanding of how arbitrary-
> >> precision
> >> > numbers are interpreted in Mathematica.
> >> >
> >> > (I've resolved my sorting problem by using OrderedQ instead of
> >> Less as
> >> > the ordering function in Sort. But why was this necessary?)
> >> >
> >> > Cheers,
> >> > Andrew
> >> >
> >>
> >>
> >
> >
> > --
> > http://chris.chiasson.name/
>
>


-- 
http://chris.chiasson.name/


  • References:
    • 1`2 == 1*^-10
      • From: "Andrew Moylan" <andrew.j.moylan@gmail.com>
  • Prev by Date: a technique for options
  • Next by Date: Re: Re: 1`2 == 1*^-10
  • Previous by thread: Re: Re: 1`2 == 1*^-10
  • Next by thread: 1`2 == 1*^-10