Franck MICHEL on Thu, 12 Dec 2002 12:26:44 +0100 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: How to eliminate the big-oh |
>As Michael say, x has an higher priority than t and truncate only truncate with >respect of the highest priority variable. > >This is a problem here. >Assuming z has higher priority that x, you can do > >subst(truncate(subst(taylor((1-x)/(1-t),t),x,z)),z,x) Thank you, it works. Certainly a naive question, but: how can we know the level of priority of variables? Is it possible to change it? >fortunately there is a simpler solution, convert your polynomial to a vector: > >Pol(truncate(Vec(taylor((1-x)/(1-t),t)))) It's a nicest solution, unfortunately it does not work for other expressions. For example, if we slightly modify (1-x)/(1-t) and consider truncate(taylor((1-x)/(x-t),t)), we get -1+O(t^16) Pol(truncate(Vec(taylor((1-x)/(x-t),t)))) gives the same bad answer but subst(truncate(subst(taylor((1-x)/(x-t),t),x,z)),z,x) gives the good expansion. If we ask for the type of taylor(1/(1-t),t), we get "SER"; for taylor((1-x)/(1-t),t) we get "POL"; and for taylor((1-x)/(x-t),t) we get "RFRAC". When we have x and t, the type is determined with respect to x. It is determined with respect to t after changing z in x as you have suggested. If we have to deal with a quotient with multiple variables (x, y, z, etc.., and t), I presume all the variables above the level of priority of t would have to be substituted by variables below the level of priority of t. But it is not very convenient, the determination of levels of priority of variables is a little bit mysterious for me and I am wondering if there would be a better solution than using substitutions with low-level variables. Thanks in advance for your help Franck