Re: Approximate Zero Times A Symbol
- To: mathgroup at smc.vnet.net
- Subject: [mg127076] Re: Approximate Zero Times A Symbol
- From: "djmpark" <djmpark at comcast.net>
- Date: Thu, 28 Jun 2012 04:04:06 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <201206270811.EAA18698@smc.vnet.net> <19783652.3140.1340794328091.JavaMail.root@m06>
Thanks Christoph. That does sound like a reasonable argument, yet I would like to dissent from it. I don't see why a non-numeric symbol should be considered to have a precision at all. Don't we have fields of mathematics, such as algebra or multilinear algebra, where we have undefined objects or elements to which we apply various operations? These objects never have numerical values, although they might have numerical weights. It doesn't seem proper to me to treat them as numerical quantities so as to combine them with other numerical factors. If x and y are such objects I can see some justification for dropping terms such as 0 x, but not 0.0 x and certainly not automatically converting it to 0.0. The symbol x has a meaning, as one of the basic elements of the algebra, that the scalar 0.0 does not have. Using 0.0 x -> 0.0 changes the mathematical meaning of the expression. For example, in Grassmann algebra one can have general Grassmann numbers that are multi-graded and have a scalar term + vector terms + bivector terms etc. The above transformation would incorrectly change a pure vector expression into a multi-graded expression that has an approximate zero scalar term (instead of an approximately zero x vector term). David Park djmpark at comcast.net http://home.comcast.net/~djmpark/index.html From: Christoph Lhotka [mailto:christoph.lhotka at fundp.ac.be] Hello, my argumentation would be as follows: 0 x = 0 if (0,x) have infinite precision, while 0. x = 0. since the result has a precision at most of 0., therefore there is no need to keep the x, which has infinite precision: for the expression we only need x up to precision of 0., therefore 0. * approximate x = 0., which is true up to the precision of 0. If I understand well, what you would like to have and if it only concerns the format it is printed, I would define: dis[ex_]:=Plus@@({x,y}*(StringTrim/@ToString/@(PaddedForm[Coefficient[ex,#], {8,8}]&/@{x,y}))) which would give dis/@{0.x+1.y,0.34324324324324324324324x+1.000000000004y} {0.00000000 x+1.00000000 y,0.34324324 x+1.00000000 y} Hope that helps, Christoph On 06/27/2012 10:11 AM, djmpark wrote: > What is the justification for the following? > > > > 0. x + 1. y > > > > 0. + 1. y > > > > I want to display a dynamic weighted sum of x and y and sometimes one > of the coefficients becomes zero. I would like to keep both terms (for > a steady > display) and format with NumberForm. If Mathematica is going to drop > the x, why doesn't it at least also drop the approximate zero? > > > > If I use SetPrecision we obtain: > > > > SetPrecision[0. x + 1. y, 10] > > > > 1.000000000 y > > > > which is at least more consistent, but not what I want either. > > > > David Park > > djmpark at comcast.net > > http://home.comcast.net/~djmpark/index.html >
- References:
- Approximate Zero Times A Symbol
- From: "djmpark" <djmpark@comcast.net>
- Approximate Zero Times A Symbol