Re: PolynomialQ (wrong) behavior ?

*To*: mathgroup at smc.vnet.net*Subject*: [mg19285] Re: [mg19199] PolynomialQ (wrong) behavior ?*From*: bruck at math.usc.edu (Ronald Bruck)*Date*: Sat, 14 Aug 1999 01:45:12 -0400*Organization*: Univ of Southern California*References*: <7otmvl$4g9@smc.vnet.net>*Sender*: owner-wri-mathgroup at wolfram.com

In article <7otmvl$4g9 at smc.vnet.net>, "Tomas Garza" <tgarza at mail.internet.com.mx> wrote: :Drago Ganic [drago.ganic at in2.hr] wrote: : :> f = 2x +1 :> :> PolynomialQ [ f, x ] :> True :> :> That's OK. But why the following :> :> PolynomialQ [ f, y ] :> True :> :> PolynomialQ [ f, Sin[x] ] :> True : :I guess you're trying to substitute Sin[x} in your f so as to obtain 2 :Sin[x] + 1 which is certainly not a polynomial in x. But what you are asking :is whether it is a polynomial in Sin[x], so that the test gives True, as it :should. I think you can avoid the problem by being more precise, for :example: etc. The Help browser gives the example PolynomialQ[x + Sin[x],x] as returning False, which of course is correct. If f is free of y then PolynomialQ[f, y] SHOULD return True, since it's a constant polynomial in y. But there are some anomolous situations. For example, PolynomialQ[Cos[x], Sin[x]] returns True. Obviously PolynomialQ[f, y] doesn't look at dependencies between f and y (that's probably undecidable), but only looks to see if there are expressions A, B, etc. such that f = A + B y + etc. --Ron Bruck