I was playing with the idea of appending a simplim%function for the
hypergeometric
functions. To start, I wrote some 100% fake code:
(setf (get '$hypergeometric 'simplim%function) 'limit-hg)
(setf (get '%hypergeometric 'simplim%function) 'limit-hg)
(defun limit-hg (exp var val)
(displa `((mequal) exp ,exp))
(displa `((mequal) var ,var))
(displa `((mequal) val ,val))
42)
Limit assumes continuity?
(%i14) limit(hypergeometric([a],[b],x),x,0);
(%o14) 1
Limit doesn't even try limit-hg?
(%i16) limit(hypergeometric([a],[b],x),a,0);
(%o16) limit(hypergeometric([a],[b],x),a,0)
Towards infinity, limit tries limit-hg:
(%i17) limit(hypergeometric([3],[7],x),x,inf);
exp=hypergeometric([3],[7],x)
var=x
val=inf
(%o17) 42
Is there a way to get more cases funneled through limit-hg?
Barton