The Pochhammer polynomials #
We define and prove some basic relations about
ascPochhammer S n : S[X] := X * (X + 1) * ... * (X + n - 1)
which is also known as the rising factorial and about
descPochhammer R n : R[X] := X * (X - 1) * ... * (X - n + 1)
which is also known as the falling factorial. Versions of this definition
that are focused on Nat
can be found in Data.Nat.Factorial
as Nat.ascFactorial
and
Nat.descFactorial
.
Implementation #
As with many other families of polynomials, even though the coefficients are always in ℕ
or ℤ
,
we define the polynomial with coefficients in any [Semiring S]
or [Ring R]
.
In an integral domain S
, we show that ascPochhammer S n
is zero iff
n
is a sufficiently large non-positive integer.
TODO #
There is lots more in this direction:
- q-factorials, q-binomials, q-Pochhammer.
ascPochhammer S n
is the polynomial X * (X + 1) * ... * (X + n - 1)
,
with coefficients in the semiring S
.
Equations
- ascPochhammer S 0 = 1
- ascPochhammer S n.succ = Polynomial.X * (ascPochhammer S n).comp (Polynomial.X + 1)
Instances For
descPochhammer R n
is the polynomial X * (X - 1) * ... * (X - n + 1)
,
with coefficients in the ring R
.
Equations
- descPochhammer R 0 = 1
- descPochhammer R n.succ = Polynomial.X * (descPochhammer R n).comp (Polynomial.X - 1)
Instances For
The Pochhammer polynomial of degree n
has roots at 0
, -1
, ..., -(n - 1)
.
Over an integral domain, the Pochhammer polynomial of degree n
has roots only at
0
, -1
, ..., -(n - 1)
.