Re: An arithmetic puzzle, equality of numbers.
- To: mathgroup at smc.vnet.net
- Subject: [mg103175] Re: An arithmetic puzzle, equality of numbers.
- From: Richard Fateman <fateman at cs.berkeley.edu>
- Date: Thu, 10 Sep 2009 07:17:11 -0400 (EDT)
- References: <h829m8$3ue$1@smc.vnet.net> <4AA4BA87.3020500@gmail.com> <200909080955.FAA26400@smc.vnet.net> <h87p8i$5cj$1@smc.vnet.net>
Andrzej Kozlowski wrote: > On 8 Sep 2009, at 11:55, Szabolcs Horv=E1t wrote: > >> You should have mentioned it in your message then. Otherwise you just >> confuse beginners/newcomers, and that is not nice. > > But, in this particular case, entirely in accordance with long > tradition on this forum. Google for Richard Fateman, MathGroup, > Wolfram etc and then look up: > > http://en.wikipedia.org/wiki/Troll_(Internet) > > Andrzej Kozlowski= > I think a design that allows one to create objects such as i that i==0 and i==2 simultaneously is problematical. Do you agree? Andrzej thinks this is fine. He thought it was fine in 2000. My message was to newcomers, who might not realize the hazards of significance arithmetic. DanL's message has pointers to some useful references, including Soufroniou's article, (incidentally, Soufroniou works for WRI). It says "There is no substitute for traditional methods of numerical analysis, such as forward and backward analysis which provide tangible error estimates." The conclusion also suggests significance arithmetic would be useful for users who "are not experts in the analysis and construction of numerical methods but are interested in investigating and solving problems, often against the industrial backdrop of pressing deadlines." The question to me is whether significance arithmetic is the best solution for these naive users or others, given that one consequence is a system design that seems to produce, perhaps accidentally, and in the context of those users who "are not experts" a number i such that 0==i==1. (The advice that one should just use machine arithmetic -- which certainly would avoid this pitfall -- also means that this automatic error analysis method cannot be used.) There's another technique (not trivially foolproof as shown by "Rump's polynomial" in Sofroniou's article. -- but read the article to make a better decision via condition numbers.) Run your problem in fixed precision arithmetic with N digits. Run it again in fixed precision with N+m digits [one suggested value is m=sqrt(N)]. If the results are the same to about N digits, maybe you have the right answer. You can repeat it for additional confirmation. This may be faster than significance arithmetic once. Maybe you can even do single, double, quad, quad-double, using mostly machine hardware. If you need additional precision, it can be done in software by simulating fixed precision in Mathematica (via SetPrecision to avoid significance decay), or by use of a package like MPFR. Is this a better strategy for "semi-automated" numerical analysis? Probably. The goal of a fully automated numerical quality error analysis program is elusive. The use of interval arithmetic (google for Reliable Computation), provides a rigorous but generally very pessimistic basis. Many common standard computations in linear algebra, evaluation of polynomials, etc. have been carefully analyzed and their errors can be computed using regular arithmetic (Mathematica does this already). Does significance arithmetic contribute to improving the situation for the naive user who is trying to meet a deadline and may not notice answers or intermediate results with zero Precision? I think there is a hazard. Hence the message directed to newcomers. RJF
- References:
- Re: An arithmetic puzzle, equality of numbers.
- From: Szabolcs HorvÃt <szhorvat@gmail.com>
- Re: An arithmetic puzzle, equality of numbers.