Opened 4 years ago

Last modified 3 years ago

## #21655 new enhancement

# Return (d/dn)f with f(n,x).diff(n) instead of runtime error

Reported by: | rws | Owned by: | |
---|---|---|---|

Priority: | major | Milestone: | sage-7.4 |

Component: | symbolics | Keywords: | |

Cc: | Merged in: | ||

Authors: | Reviewers: | ||

Report Upstream: | N/A | Work issues: | |

Branch: | Commit: | ||

Dependencies: | Stopgaps: |

### Description

Expected behaviour:

sage: hermite(n,x).diff(n) diff(hermite(n, x), n)

for all cases where we throw runtime or not implemented errors at the moment. This concerns mostly orthogonal poly functions. The aim is a better workflow for the user, with no interrupts.

### Change History (3)

### comment:1 Changed 4 years ago by

### comment:2 Changed 4 years ago by

The runtime errors are partly thrown in Pynac, they should return `fderivative`

instead like is done with anonymous functions:

sage: f=function('f')(x) sage: diff(f,x) diff(f(x), x) sage: _._dbgprinttree() fderivative f @0x3dc6b00, hash=0x1023d72de5409a, flags=0xb, nops=1, params=0 x (symbol) @0x3049d20, serial=5, hash=0xf0a9622e, flags=0xf, domain=0, iflags=0000000000000000 =====

The others are errors thrown in Python. I'm not sure which will be simple to change.

### comment:3 Changed 3 years ago by

May depend on #24861.

**Note:**See TracTickets for help on using tickets.

Do you have an idea about what needs to be done in case someone decides to work on this? Ie, some tips about how to start?