Opened 11 years ago
Last modified 4 years ago
#10137 new enhancement
rewrite function for symbolic expressions
Reported by: | burcin | Owned by: | burcin |
---|---|---|---|
Priority: | major | Milestone: | sage-feature |
Component: | symbolics | Keywords: | |
Cc: | rws, mmezzarobba | Merged in: | |
Authors: | Reviewers: | ||
Report Upstream: | N/A | Work issues: | |
Branch: | Commit: | ||
Dependencies: | Stopgaps: |
Description (last modified by )
We should have a clean interface to various transformations one might want to perform on symbolic expressions. For example,
sage: rewrite(exp(x), "exp2sincos") -I*sin(I*x) + cos(I*x) sage: rewrite(exp(-I*x), "exp2sincos") -I*sin(x) + cos(x) sage: rewrite(exp(a+I*b), "exp2trig") (sinh(a) + cosh(a))*(I*sin(b) + cos(b)) sage: rewrite((e^x)^2-e^(-2*x)+e^(-4*x)+(e^x)^4, 'exp2sinhcosh') 2*sinh(2*x) + 2*cosh(4*x)
The design of this interface is being fleshed out in
Change History (4)
comment:1 Changed 7 years ago by
- Cc rws added
comment:2 Changed 6 years ago by
- Cc mmezzarobba added
comment:3 Changed 6 years ago by
- Description modified (diff)
comment:4 Changed 4 years ago by
Note: See
TracTickets for help on using
tickets.
I think the first tangible step would be to provide a
x.rewrite()
with the same interface as SymPy's, calling SymPy. Later this can be adapted. However, I think the SymPy way is quite a good start.