Re: Applying Mathematica to practical problems

*To*: mathgroup at smc.vnet.net*Subject*: [mg131013] Re: Applying Mathematica to practical problems*From*: Richard Fateman <fateman at eecs.berkeley.edu>*Date*: Tue, 4 Jun 2013 01:57:03 -0400 (EDT)*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com*Delivered-to*: l-mathgroup@wolfram.com*Delivered-to*: mathgroup-outx@smc.vnet.net*Delivered-to*: mathgroup-newsendx@smc.vnet.net*References*: <kmngb2$3rv$1@smc.vnet.net> <20130519095011.606CD6A14@smc.vnet.net> <20130530101525.2281869F1@smc.vnet.net> <ko9ipa$kde$1@smc.vnet.net> <51A93AC9.5040106@cs.berkeley.edu> <koehcf$2s8$1@smc.vnet.net> <20130603073442.AC7CE69D7@smc.vnet.net> <E5F943A8-A369-42FA-8697-01A69A7565EA@mimuw.edu.pl>

On 6/3/2013 3:05 AM, Andrzej Kozlowski wrote: > > On 3 Jun 2013, at 09:34, Richard Fateman <fateman at cs.berkeley.edu> > wrote: > >> On 6/1/2013 9:23 PM, Andrzej Kozlowski wrote: >>> This is one of many examples of "cross purpose" arguing. I was >>> not discussing implementing non-standard analysis at all. My >>> point was that that there is nothing logically more dubious about >>> a finite "number" x such that x+1=1 than there is about a >>> positive "number" x such that nx< 1 for every positive integer n, >>> or, alternatively, finite "number" x such that x/n >1 for every >>> positive integer n. Mathematicians often use the word "number" >>> when referring to objects belonging to some "extension" of the >>> real line. >> >> Oh where to start. Here's one place. >> >> You say it is ok to have a number x such that x+1=1. I agree. I >> say it is NOT ok to have a number x such that x+1=x. You respond It >> is ok to have a number x such that x+1=1. Can you see the >> difference? > > Yes, I was careless about this, but that was because it does not > really matter. It is O.K. to extend the real line to an algebraic and > topological sturcture which contains objects such x such that x+1=x. So such systems have the AK seal of approval. Argument settled?? Since such objects do not satisfy the necessary axioms for real numbers, they cannot be part of the real line. Computer algebra systems sometimes have to adopt models of an extension to the real line to accommodate certain calculations typically involving limits and division by zero or perhaps complex numbers. This extension may include +inf, -inf, and und (these may be 1/0, -1/0, and 0/0). There are other ways of doing this. Where to read about a design for such a system ? See the IEEE 754 binary float explanations. > Of course such objects do not have inverses, so you can't conclude > that 0=1. That is true, there is no number x such that inf + x == 0. inf+FiniteNumber is inf. It is usually somewhat discomforting to add to a system that used to be bound by the axioms of the reals, these exceptional numbers. But there are only a few. 3. And they can be easily explained and they come up in limited circumstances. They indeed cause some difficulties, and they are sometimes excluded from certain kinds of systems entirely. Mathematica has an infinitude of such numbers, and it means among other things that equality fails to be transitive, one of the fundamental axioms of many algebraic and probably all reasonable logical systems. In Mathematica: A==B and B==C implies A==C. Is FALSE. > All this means that equality is a non-transitive relation on this > extended set of objects (but identity is). That is also logically > perfectly sound. So your response is, like Peewee Herman "I meant to do that!". It is perhaps up to the users of Mathematica to decide if they are comfortable with what you consider a "logically perfectly sound" system like this. I find it objectionable. It means one can encounter a value for x such that x==4 is true but x>3 is false. It is difficult to disentangle such peculiar results from the rest of the arithmetic. >> >> >> Also is the Grobner basis program in Mathematica the fastest? I >> suspect it is not, though I have not compared it to Faugere's work, >> or other unnamed systems. Is it the only one using significance >> arithmetic? I suspect it is. What would that prove? What would >> that prove about use as a default? > > This is nonsense. Faugere does not work on numerical analysis and has > not implemented a numerical Groebner basis. Other people have worked > on approximate Grobener bases using fixed precision arithmetic but > (as far as I know) there are no working implementations available. I think the goal of the numerical Groebner basis algorithms is to provide a fast computation of the exact results by using approximate numerics. If so it is not an entirely different subject. The numerical solution of systems of algebraic equations to find (one) solution IS a different task from finding them all. And of those researchers doing Groebner basis computations with numerical approximation, how does Mathematica compare? > > > Groebner bases with exact coefficients are an entirely different > subject, unrelated to this discussion. > > >> >> Finally, I would remind AK (and others) that proving some number of >> correct results does not prove an algorithm is correct. Proving >> even one incorrect result demonstrates a bug. >> > > You have never demonstrated one incorrect result proved by > Mathematica. Right. Mathematica does not actually "prove" incorrect results. It merely delivers them. Solve[x+1==x,x] returns {} yet 1`0 +1`0 == 1`0 returns True. RJF > > > AK >

**References**:**Re: Applying Mathematica to practical problems***From:*Richard Fateman <fateman@cs.berkeley.edu>