-
-
Couldn't load subscription status.
- Fork 680
Description
Of many functions there are two versions with the same name---in sage/arith and in sage/functions, examples are binomial and factorial. On startup the latter versions overwrite the former because of order of import. That creates problems both with documentation, different interface, and different behavior expected. For example in #14723 the problem of binomial(Qp(5)(8),2) could not be resolved with the sage/functions version (because there the arguments have restrictions), although the sage/arith version would have worked perfectly. OTOH the arith version can not handle binomial(x,y) but the symbolic function version can.
The logical solution would be for all cases to
- make the arith version the default by removing the import in
sage/functions/all.py; the arith version will no longer be overwritten - dispatch calls to the arith version with symbolic arguments to the symbolic function version
- copy some symbolic documentation to arith because that docstring will be shown now
The issues #22314, #17489 depend on this.
Component: basic arithmetic
Author: Ralf Stephan
Branch/Commit: u/rws/make_arith_versions_of_some_functions_default__dispatching_to_symbolic @ 4bc93d0
Issue created by migration from https://trac.sagemath.org/ticket/24178