axiom-mail
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Axiom-mail] beginner question about sum(...)


From: Kostas Oikonomou
Subject: Re: [Axiom-mail] beginner question about sum(...)
Date: Mon, 24 Jan 2005 09:18:31 -0500
User-agent: Opera M2/7.54 (SunOS, build 751)

Bill,

Thanks very much for the elucidation.  By way of background, I have been using 
Mathematica
for about 10 years, and I'm contemplating a switch to Axiom.

It seems that Axiom is, let's say, "conceptually", very advanced in the sense 
of its domains,
types, categories, etc.  Perhaps we could call that its abstract mathematical 
knowledge.  This
is notably absent from Mathematica, until at least v5.0, which is almost 
current.

But I was disappointed by the sum(1/k^2, k=1..n) example.  I saw that Gosper's 
method is
implemented in sum.spad.pamphlet, but this (rather simple) sum needs symbolic 
manipulation
of gamma and psi functions, which is not there.  More generally, special 
functions seem to be
handled only numerically.  At least for my prospective use of Axiom, this 
points to a rather big
"hole". And I wonder how many others of this sort there are.

I also tried sum(1/(k*(k+a)), k=1..n).  That was also returned unevaluated, 
although Gosper's
method should handle it.  Why is that?  I don't mind reading the book, so if 
somewhere there is
a discussion of (limitations of) symbolic evaluation, please point me there.

                                        Kostas


Kostas,

My previous reply did not address the issue of the reason why
Axiom returns the sum unevaluated. Here is what I could find out:

On Sunday, January 23, 2005 11:08 AM you wrote:

I am trying to make Axiom evaluate sum(1/k^2, k=1..n).  It
returns the sum unevaluated.

I expect the reason that it returns unevaluated is because Axiom
is simply incomplete. For example Maple gives:

sum(1/k^2, k=1..n);
                                      1   2
                     -Psi(1, n + 1) + - Pi
                                      6

Axiom does have the Polygamma function, so we can write:

(3) -> f1(n)==sum(1/k^2, k=1..n)
                                                                   Type:
Void
(4) -> f2(n)==-polygamma(1,n+1)+1/6*%pi^2
                                                                   Type:
Void
(5) -> f2(5)
   Compiling function f2 with type PositiveInteger -> DoubleFloat

   (5)  1.463611111111111
                                                            Type:
DoubleFloat
(6) -> f1(5)
   Compiling function f1 with type PositiveInteger -> Union(Fraction
      Polynomial Integer,Expression Integer)

        5269
   (6)  ----
        3600
                                          Type: Union(Expression
Integer,...)
(7) -> %::DFLOAT

   (7)  1.4636111111111112
                                                            Type:
DoubleFloat
(8) ->

---------

Regards,
Bill Page.







reply via email to

[Prev in Thread] Current Thread [Next in Thread]