hgfred and create-poly



Am Freitag, den 29.01.2010, 20:35 +0100 schrieb Dieter Kaiser:

> This could be the implementation with a default value of T for
> expand_polynomials:
> 
> (%i4) hgfred([-1,b],[c],x);
> (%o4) 1-b*x/c
> 
> (%i5) hgfred([-1,b],[c],x),expand_polynomials:false;
> (%o5) jacobi_p(1,c-1,-c+b-1,1-2*x)/c
> 
> (%i6) hgfred([-1,1],[1/2],x);
> (%o6) 1-2*x
> 
> (%i8) hgfred([-1,1],[1/2],x),expand_polynomials:false;
> (%o8) chebyshev_t(1,1-2*x)
> 
> (%i9) hgfred([-1,3],[3/2],x);
> (%o9) 1-2*x
> 
> (%i10) hgfred([-1,3],[3/2],x),expand_polynomials:false;
> (%o10) ultraspherical(1,1,1-2*x)/2

These are the new results from 2f1polys when we implement in addition
the handling of a symbolic integer as a parameter:

(%i1) declare(n,integer)$
(%i2) assume(n>0)$
(%i3) expand_polynomials:false$

(%i4) hgfred([-n,b],[c],x);
(%o4) n!*jacobi_p(n,c-1,-n-c+b,1-2*x)/pochhammer(c,n)

(%i5) hgfred([-n,n+2*a],[a+1/2],x);
(%o5) n!*ultraspherical(n,a,1-2*x)/pochhammer(2*a,n)

(%i6) hgfred([-n,n],[1/2],x);
(%o6) chebyshev_t(n,1-2*x)

(%i7) hgfred([-n,n+1],[1],x);
(%o7) legendre_p(n,1-2*x)

(%i8) hgfred([-n,n+1/2],[1/2],x);
(%o8) (-1)^n*2^(2*n)*legendre_p(2*n,sqrt(x))*gamma(n+1)^2/gamma(2*n+1)

(%i9) hgfred([-n,n+3/2],[3/2],x);
(%o9) (-1)^n*2^(2*n)*gamma(n+1)^2*legendre_p(2*n+1,sqrt(x))
       /(gamma(2*n+2)*sqrt(x))

(%i10) hgfred([-n,-n],[-2*n],x);
(%o10) (-1)^n*legendre_p(n,1-2/x)*gamma(n+1)^2*x^n/gamma(2*n+1)

(%i11) hgfred([-n,(1-2*n)/2],[1/2-2*n],x);
(%o11) 2^(2*n)*legendre_p(2*n,1/sqrt(x))*gamma(2*n+1)^2*x^n/gamma(4*n+1)

Dieter Kaiser