Can MAXIMA do finite calculus?



You might want to have a look at Christian Krattenthalers hyp.m package
for Mathematica. eg: 

(short explanation: p are the *rising* factorials, /. applies a rule, SUMF
transforms into hypergeometric notation, SListe checks which summation
formulas can be applied, S2103 is the rule we want to apply. I deleted 
some output which might be confusing at the beginning.


In[1]:= SUM[p[k-m+1,m],{k,0,Infinity}]-SUM[p[k-m+1,m],{k,n,Infinity}]/.SUMF

...

           [          ]               [              ]
           | 1, 1     |               | 1 + n, 1     |
Out[1]=  F |      ; 1 | (1 - m)  -  F |          ; 1 | (1 - m + n)
        2 1| 1 - m    |        m   2 1| 1 - m + n    |            m
           [          ]               [              ]

In[2]:= %1/.SListe

...

Be sure to apply "FOrdne" before using the following information!

Out[2]= {{S2103 (1 - m)  - S2103 (1 - m + n) }}
                       m                    m

In[3]:= %1/.S2103

          [               ]              [                   ]
          | 1 - m, -1 - m |              | 1 - m + n, -1 - m |
Out[3]= Ga|               | (1 - m)  - Ga|                   | (1 - m + n)
          |    -m, -m     |        m     |    -m, -m + n     |            m
          [               ]              [                   ]


As you can see, it does not quite do what you want - the package is mainly 
concerned with manipulating -- summing and transforming -- hypergeometric 
series. Also, its available for mathematica only. However, it would be 
wonderful were you willing to port it to maxima. You will almost certainly 
get help from Christian Krattenthaler if you ask.

I'm not sure whether your problem (expressing stuff in terms of genfacts) 
is easy or not.

Martin

On Thu, 31 Jul 2003, wang yin wrote:

> Hi,
> 
> I'm trying to to do some finite calculus with MAXIMA.
> But I don't know how to express "x to the m falling",
> i.e., x(x-1)(x-2)...(x-m+1) in MAXIMA conveniently.
> 
> Is MAXIMA aware of this notation?
> 
> If I express "k to the m falling" as k!/(k-m)! in nusum, I
> get:
> 
> (C1)  nusum(k!/(k-m)!,k,0,n);
> 
>                            (n + 1)!             m
> (D1)                   ---------------- + --------------
>                        (m + 1) (n - m)!   (m + 1) (- m)!
> 
> How can I abtain the desired result
> 
> "n to the (m+1) falling"/(m+1) ?
> 
> 
> 
> --
> Wang Yin
> Deparment of Computer Science and Technology,
> Tsinghua University,
> 100084
> Beijing China
> 
> _______________________________________________
> Maxima mailing list
> Maxima@www.math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>