PolynomialNumberTheoryFunctions¶

This package provides various polynomial number theoretic functions over the integers.

bernoulli: Integer -> SparseUnivariatePolynomial Fraction Integer

bernoulli(n) returns the nth Bernoulli polynomial B[n](x). Note: Bernoulli polynomials denoted B(n, x) computed by solving the differential equation differentiate(B(n, x), x) = n B(n-1, x) where B(0, x) = 1 and initial condition comes from B(n) = B(n, 0).

chebyshevT: Integer -> SparseUnivariatePolynomial Integer

chebyshevT(n) returns the nth Chebyshev polynomial T[n](x). Note: Chebyshev polynomials of the first kind, denoted T[n](x), computed from the two term recurrence. The generating function (1-t*x)/(1-2*t*x+t^2) = sum(T[n](x)*t^n, n=0..infinity).

chebyshevU: Integer -> SparseUnivariatePolynomial Integer

chebyshevU(n) returns the nth Chebyshev polynomial U[n](x). Note: Chebyshev polynomials of the second kind, denoted U[n](x), computed from the two term recurrence. The generating function 1/(1-2*t*x+t^2) = sum(T[n](x)*t^n, n=0..infinity).

cyclotomic: Integer -> SparseUnivariatePolynomial Integer

cyclotomic(n) returns the nth cyclotomic polynomial phi[n](x). Note: phi[n](x) is the factor of x^n - 1 whose roots are the primitive nth roots of unity.

euler: Integer -> SparseUnivariatePolynomial Fraction Integer

euler(n) returns the nth Euler polynomial E[n](x). Note: Euler polynomials denoted E(n, x) are computed by solving the differential equation differentiate(E(n, x), x) = n E(n-1, x) where E(0, x) = 1 and initial condition comes from E(n) = 2^n E(n, 1/2).

fixedDivisor: SparseUnivariatePolynomial Integer -> Integer

fixedDivisor(a) for a(x) in Z[x] is the largest integer f such that f divides a(x=k) for all integers k. Note: fixed divisor of a is reduce(gcd, [a(x=k) for k in 0..degree(a)]).

hermite: Integer -> SparseUnivariatePolynomial Integer

hermite(n) returns the nth Hermite polynomial H[n](x). Note: Hermite polynomials, denoted H[n](x), are computed from the two term recurrence. The generating function is: exp(2*t*x-t^2) = sum(H[n](x)*t^n/n!, n=0..infinity).

laguerre: Integer -> SparseUnivariatePolynomial Integer

laguerre(n) returns the nth Laguerre polynomial L[n](x). Note: Laguerre polynomials, denoted L[n](x), are computed from the two term recurrence. The generating function is: exp(x*t/(t-1))/(1-t) = sum(L[n](x)*t^n/n!, n=0..infinity).

legendre: Integer -> SparseUnivariatePolynomial Fraction Integer

legendre(n) returns the nth Legendre polynomial P[n](x). Note: Legendre polynomials, denoted P[n](x), are computed from the two term recurrence. The generating function is: 1/sqrt(1-2*t*x+t^2) = sum(P[n](x)*t^n, n=0..infinity).