Problems with the function $specint



Dieter Kaiser wrote:
> Here the example for the Laguerre function:
> 
> (%i6) kill(all);
> (%o0) done
> (%i1) assume(s>0,n>0),declare(n,integer);
> (%o1) [s > 0,n > 0]
> (%i2) specint(%e^(-2*t)*%l[n,0](t),t);
> Maxima encountered a Lisp error:
> Error in MACSYMA-TOP-LEVEL [or a callee]: $N is not of type NUMBER.

I believe a lot of the code assumes numbers for some parameters, even 
though the general result could be obtained.  These haven't been fixed.

> In the case of the Laguerre function I have found a bug in the transformation.
> After correction, Maxima gives the expected result for the Laguerre function.
> There may be further bugs. Or limitations of the algorithmen prevend the
> calculation of results. At least, these limitations should be documented for the
> user.

Yes, they should be documented.  I think it's pretty clear the specint 
was a proof-of-concept.  Lots of things weren't implemented, some were 
only partially implemented, and some are just plain wrong.

> 
> 3. Maxima gets extra factors or terms in the result
> 
> A simple example is the bessel_i function. Here we get an additional phase
> factor (v is the order of the Bessel function): 
> 
>   %e^(%i*%pi*v/(-1)^(v/2) 
> 
> in all calculations. This factor vanishs when we introduce a small correction to
> the code. In other cases the problem seems to be more difficult.
> 
> 
> The testsuite shows that Maxima can evaluate a lot of different combinations of
> special functions. On the other hand it seems to me that Maxima fails on a lot
> of more simple examples.

Yes,  laplace does a much better job than specint in many cases.  But 
then specint handles cases that laplace cannot.  I have thought about 
combining the two, but it wasn't clear how to combine them.

> 
> If it is interesting for the project I would like to investigate the problems
> further and present some corrections to the code.

If you are interested in fixing these, then I doubt any one would say no 
to your fixing known issues. :-)

Even commenting the code with algorithms used and constraints and 
whatever would be a big win.

Ray