bugs in function stirling1() in version 5.21.1 (and up?)



>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