Brad Klee on Thu, 11 Oct 2018 19:19:16 +0200


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Function Typing


Hi Pari users,

Typing "?" lists: "8: TRANSCENDENTAL functions", and
typing "?8" lists: "... hypergeom ... sqrt ..." ( on v2.12 ).

Of course f(x) = sqrt(x) satisfies x - f^2 = 0, so it is algebraic
rather than transcendental. The type of "hypergeom" depends
on parameter values. Ex. g(x) = hypergeom([1,1],[1],x), then
(1-x)*g(x) - 1 = 0, also see "Schwarz's list" ( awesome! ).

We could change many of these TRANSCENDENTAL
functions to HOLONOMIC or D-FINITE. This is not just an
organizational question.

Input "?cos" returns "cos(x): cosine of x." This is okay for an
untyped, common function. But if we type "cos" appropriately,
then we can have a function "def" such that:

def(cos) = [ F'' + F = 0, F = 1 + O(x^2) ] \\ human readable
def(cos) = [ [1, 0, 1] , [1,0] ] \\ minimal

This is not much extra data, and actually more helpful than
current implementation of "?". In the end "def" can even be
computed at runtime. For "?besselk" or "?besselj", it would
be more clear to have a "def" function, rather than having to
compare with Mathworld or Wikipedia or the Source.

Is there any interest in implementing function typing along
with differential defining relations?

Thanks,

Brad