Opened 12 years ago
Last modified 4 years ago
#6119 new enhancement
deprecate taylor() in favor of series()
Reported by:  robertwb  Owned by:  burcin 

Priority:  major  Milestone:  sage6.4 
Component:  calculus  Keywords:  
Cc:  kcrisman, rws  Merged in:  
Authors:  Ralf Stephan  Reviewers:  
Report Upstream:  N/A  Work issues:  
Branch:  u/rws/deprecate_taylor___in_favor_of_series__ (Commits, GitHub, GitLab)  Commit:  46c8e43e3f9982bfd1a2516bd59529839062499d 
Dependencies:  pynac0.7.4  Stopgaps: 
Description (last modified by )
Symbolic expressions have two methods to obtain series expansions. The taylor()
method is a wrapper around maxima's taylor
command. The result of this is not always a Taylor series, which leads to confusions.
The series()
method was introduced in the pynacbased symbolics. ATM, it is a thin wrapper around GiNaC series expansions. This also plays well with the symbolic functions, etc. introduced based on Pynac/GiNaC.
We should deprecate the taylor()
method and add an algorith=
argument to series()
. The default behavior can be to call GiNaC and fall back to maxima if that fails.
Change History (15)
comment:1 Changed 10 years ago by
 Cc kcrisman added
 Report Upstream set to N/A
comment:2 Changed 10 years ago by
 Description modified (diff)
 Milestone changed from sage4.7.1 to sage4.7.2
 Summary changed from implement taylor series without maxima to deprecate taylor() in favor of series()
comment:3 followups: ↓ 9 ↓ 13 Changed 10 years ago by
As I say in #9555, I think that changing the .taylor()
method so that it calls a suitably Tayloronly version of the .series()
method is preferable, especially since the global name taylor()
should really be kept.
comment:4 Changed 8 years ago by
 Milestone changed from sage5.11 to sage5.12
comment:5 Changed 7 years ago by
 Milestone changed from sage6.1 to sage6.2
comment:6 Changed 7 years ago by
 Milestone changed from sage6.2 to sage6.3
comment:7 Changed 7 years ago by
 Milestone changed from sage6.3 to sage6.4
comment:8 Changed 6 years ago by
 Cc rws added
See also http://sourceforge.net/p/maxima/bugs/2850/ where this comes up again.
comment:9 in reply to: ↑ 3 Changed 6 years ago by
As I say in #9555, I think that changing the
.taylor()
method so that it calls a suitably Tayloronly version of the.series()
method is preferable, especially since the global nametaylor()
should really be kept.
And I'm quoted at this SO comment though I still have to think more about how we should solve this.
comment:10 Changed 4 years ago by
 Branch set to u/rws/deprecate_taylor___in_favor_of_series__
comment:11 Changed 4 years ago by
 Commit set to 46c8e43e3f9982bfd1a2516bd59529839062499d
Is this deprecating or simply replacing? Sorry for being confused.
New commits:
46c8e43  6119: use fast series in taylor when possible

comment:12 Changed 4 years ago by
 Dependencies set to pynac0.7.4
Too fast. The deprecation part is upcoming. The Maxima replacement depends on a bugfix in upcoming pynac0.7.4 for one doctest fail.
comment:13 in reply to: ↑ 3 Changed 4 years ago by
Replying to kcrisman:
As I say in #9555, I think that changing the
.taylor()
method so that it calls a suitably Tayloronly version of the.series()
method is preferable, especially since the global nametaylor()
should really be kept.
Just rereading. So maybe we already have finished the ticket? If so, please review.
comment:14 Changed 4 years ago by
Nah, I think it is better to do some form of deprecation warning rather than a totally silent change, though I think that keeping taylor as giving taylor only would be plausible too.
comment:15 Changed 4 years ago by
Maxima is still faster than GiNaC in the cases with irrational coefficients so we will have to use GiNaC/Pynac for both series
and taylor
only in the rational case.
From comment:6:ticket:9555:
In short, we should change this ticket to cover this transition. Series expansions in Pynac need more work to match what maxima does. That should be tracked on the pynac issue tracker:
https://bitbucket.org/burcin/pynac/issues