Skip to content

RisingFactorial ​

The rising factorial a(a+1)⋯(a+n−1)a(a+1)\cdots(a+n-1): Fungrim's name for Pochhammer, which it delegates to, extended to a complex non-integer order. Provided by @enumeratio/analytic.

✓ checked against that system · ! checked, with disagreements (hover a chip)WikipediaFalling and rising factorialsWikidataQ2339261DLMF5.2FungrimRisingFactorial✓Fungrim entryWolfram LanguagePochhammer✓
RisingFactorial(a, n)the rising factorial (a)n=Γ(a+n)/Γ(a)(a)_n = \Gamma(a+n)/\Gamma(a).
Typed signatures
TypePackageApplies
(number, number) -> numberanalyticalways

Domain: Combinatorics

Details
  • Evaluates as Pochhammer wherever that head gives an answer, exact or numeric, so the two agree on every shared input. A symbolic order comes back as Pochhammer(a, n).
  • Where the native head gives NaN, a complex aa with a non-integer order, the value is Γ(a+n)/Γ(a)\Gamma(a+n)/\Gamma(a) through LogGamma. At a pole of Γ(a)\Gamma(a), a=0,−1,−2,…a = 0, -1, -2, \dots, with nn off the integers, 1/Γ(a)=01/\Gamma(a) = 0 makes the value 0, as in Wolfram and mpmath.
  • Unlike Pochhammer, it does not thread over a list.

Examples

1 more kept as data, checked against the oracles
Basic #

5 × 6 × 7

live ↗
InRisingFactorial(5,3)\mathrm{RisingFactorial}(5, 3)Out210210

(1)5=5!(1)_5 = 5!

live ↗
InRisingFactorial(1,5)\mathrm{RisingFactorial}(1, 5)Out120120
Scope #

A symbolic base with an integer order expands to the product

live ↗
InRisingFactorial(a,3)\mathrm{RisingFactorial}(a, 3)Outa×(a+1)(a+2)a×(a+1)(a+2)

A rational base: 12⋅32⋅52\tfrac12 \cdot \tfrac32 \cdot \tfrac52

live ↗
InRisingFactorial(12,3)\mathrm{RisingFactorial}(\frac{1}{2}, 3)Out158\frac{15}{8}

A symbolic order comes back as Pochhammer

live ↗
InRisingFactorial(a,n)\mathrm{RisingFactorial}(a, n)OutPochhammer(a,n)\mathrm{Pochhammer}(a, n)

A complex base and order, through Γ(a+n)/Γ(a)\Gamma(a+n)/\Gamma(a), where native Pochhammer gives NaN

live ↗
InN(RisingFactorial(2+5i,3+2i))N(\mathrm{RisingFactorial}(2+5i, 3+2i))Out20.647 407 894 772 527+24.047 356 710 232 72i20.647\,407\,894\,772\,527+24.047\,356\,710\,232\,72i
Properties #

The same function as Pochhammer

live ↗
InRisingFactorial(4,3)=Pochhammer(4,3)\mathrm{RisingFactorial}(4, 3)=\mathrm{Pochhammer}(4, 3)OutTrue\mathrm{True}

A negative order gives the reciprocal: (5)−2=14⋅3(5)_{-2} = \frac{1}{4 \cdot 3}

live ↗
InRisingFactorial(5,−2)\mathrm{RisingFactorial}(5, -2)Out112\frac{1}{12}
Possible issues #

A non-positive integer base with ∣a∣<n|a| < n picks up a zero factor: (−3)(−2)(−1)(0)(-3)(-2)(-1)(0)

live ↗
InRisingFactorial(−3,4)\mathrm{RisingFactorial}(-3, 4)Out00

At a pole of Γ(a)\Gamma(a) with a non-integer order, 1/Γ(a)=01/\Gamma(a) = 0 makes the value 0

live ↗
InN(RisingFactorial(−2,1+i))N(\mathrm{RisingFactorial}(-2, 1+i))Out0.00.0
About
Examples11
Checked againstWolfram Language 11 agree
CrosswalkWikipediaWikidataDLMFFungrimFungrim entry ×22Wolfram Language

Implementation

referenceenginenotatio

The native head, wherever it answers.

nativeenginetypescriptpackages/symbols/analysis/analytic/src/rising-factorial.ts
mappedexternalwolfram / mpmath / sympypackages/oracle/src/mappings.ts

Pochhammer[a, n]; mpmath.rf(a, n); sympy.rf(a, n).

See also: Pochhammer, FallingFactorial, Gamma