bugs in function stirling1() in version 5.21.1 (and up?)
Subject: bugs in function stirling1() in version 5.21.1 (and up?)
From: Barton Willis
Date: Wed, 18 Dec 2013 12:58:48 +0000
>this obviously is a typo and should read
> stirling1(1,k) = kron_delta(1,k) and would still be valid vor k \in Z
Thanks--I fixed this error.
>but I wouldn't give up on the equally valid
> stirling1(n,0) = kron_delta(n,0) which would also survive an extention to Z
Good idea--I incorporated this simplification.
Additionally, I added the simplification stirling1(n,k) = 0, n >= 0, k > n, for k and n integers.
As for extending striling1 to negative integer arguments, there is a (easily found) article
``An extension of Stirling numbers," David Branson (1994), but I don't find a standard reference
to this extension.
(%i2) declare([n,k,np],integer)$
(%i3) assume(n >= 0,np >= 1,k >= 0);
(%o3) [n>=0,np>=1,k>=0]
(%i4) stirling1(n,n);
(%o4) 1
(%i5) stirling1(1,k);
(%o5) kron_delta(1,k)
(%i6) stirling1(np,0);
(%o6) 0
(%i7) stirling1(np,1);
(%o7) (-1)^(np-1)*(np-1)!
(%i8) stirling1(np,np-1);
(%o8) -((np-1)*np)/2
(%i9) assume(k > n);
(%o9) [k>n]
(%i10) stirling1(n,k);
(%o10) 0
--Barton