在數學中,正整数的階乘()是所有小於等於該數的正整數的積,记作n!,例如5的階乘表示為5!,其值為120:
:
並定義,1的階乘1!和0的階乘0!都為1,其中0的階乘表示一個空積。
除外{{notetag|例如:1! = 0! = 1\,,(-0.5)! = \sqrt{\pi},0.5!=0.5\sqrt{\pi}.}}]]
1808年,基斯頓·卡曼引進這個表示法:n!=\prod_{k=1}^n k \quad\forall n\ge1,符號\Pi表示連續乘積,亦即n!=1\times 2\times 3\times \cdots \times n。階乘亦可以遞迴方式定義:0!=1,n!=(n-1)!\times n。除了自然數之外,階乘亦可定義于整個實數(負整數除外),其与伽瑪函數的关系为:
:z!=\Gamma(z+1)=\int_{0}^{\infty} t^z e^{-t}\, dt
階乘應用在許多數學領域中,最常應用在組合數學、代數學和数学分析中。在組合數學中,階乘代表的意義為n個相異物件任意排列的數量,例如前述例子,其代表了5個相異物件共有120種排列法。在正整數的情形下,n的階乘又可以稱為n的排列數。
歷史
早在12世紀,印度學者就已有使用階乘的概念來計算排列數的紀錄。1677年時,法比安·斯特德曼使用來解釋階乘的概念{{#tag:ref| Stedman 1677{{#tag:ref|{{#tag:ref|The publisher of Stedman 1677
計算
{{函數圖形|title=階乘與斯特靈公式|width=200|height=100|number class=複數|nonreal is nan=1|round number=8
|start=-0.815513|end=2.85236|min=0|max=5|sampling=200
|1 = gamma(x+1) | 1 name=n!
|2 = sqrt(2pix)(x/e)^x((sgn(x)+1)/(sgn(x)+1)) | 2 name=√(2 pi n)(n/e)^n
|caption=n!(藍色)、\sqrt{2\pi n}\left(\frac{n}{e}\right)^n(橘色),數字越大\sqrt{2\pi n}\left(\frac{n}{e}\right)^n,會越趨近n!。但\sqrt{2\pi n}\left(\frac{n}{e}\right)^n在負值則會因為出現虛數而無法使用。}}
計算n!時,若n不太大,普通的科學計算機都可以計算,能夠處理不超過10^{100}(古高爾)數值的計算機可以計算至69!,而雙精度浮點數的計算機則可計算至170!。
當n很大時,可用斯特林公式估計:
n!\approx\sqrt{2\pi n}\;\left(\frac{n}{e}\right)^{n}
更精确的估计是:
n!=\sqrt{2\pi n}\;\left(\frac{n}{e}\right)^{n}e^{\lambda_n}
其中
\frac{1}{12n+1}
部分函數值
非正整數的階乘
階乘原始的定義是在整數,為離散,然而在部分領域如機率論要探討到連續或其他需求(如組合數當取出的數量大於原有的數量會出現負階乘)時,則需要將階乘從正整數推廣到實數,甚至是複數。
Γ函数和Π函数
。主要線索是階乘函數的遞歸關係在連續的伽馬函數中也存在。]]
除了非負整數之外,還可以為非整數值定義階乘函數,但這需要使用更高級的數值分析方法。
可以透過插值的方式將階乘兩整數之間填入數值,但其插入的數值必須也要滿足階乘的遞迴定義。一個良好的插值結果是\Gamma函数,其為所有非負整數和複數給出了定義,而當z的實部為正時,可以透過下列瑕積分來計算\Gamma函数值:
:\Gamma(z)=\int_0^\infty t^{z-1} e^{-t}\, dt\,.
它與階乘的關係是對於任何自然數n滿足:
:n!=\Gamma(n+1)\,.
另外,我们也可利用此式以计算任意大于-1的实数的阶乘:
:x!=\lim_{N \to \infty} N^{x}\prod_{k=1}^{N} \frac{k}{x+k}=\int_{0}^{1} ( -\ln{(t)} ) ^{x}\, dt\,.
複數的階乘
可以透過\Gamma函數來計算複數的階乘。右圖顯示了複數階乘之模與輻角的等值線
令f為:
: f=\rho e^{i\varphi}=(x+{\rm i}y)!=\Gamma(x+iy+1)
右圖顯示了幾個模(絕對值)\rho與輻角\varphi的幾個等級,圖表的繪製範圍為-3\leq x\leq 3, -2\leq y\leq 2個單位長。較粗的鉛直線為輻角值為\varphi=\pm\pi的等值線。
細線表示模或輻角相等之函數值的位置。在每個負整數的位置為奇點,無法定義其模和輻角,並且在離奇點越近的地方,等值線的密度就越密集。
在時,可使用泰勒級數來計算:
\begin{align}
z! & = \sum_{n=0}^\infty g_n z^n\, \\
& = 1 - \gamma z + \frac{1}{2!} \left (\gamma^2 + \frac{\pi^2}{6} \right) z^{2} - \frac{1}{3!} \left( \gamma^3 + \frac{\pi^{2} \gamma}{2} + 2\zeta(3) \right) z^{3} \\
& + \frac{1}{4!} \left( \gamma^4 + \pi^{2} \gamma^{2} + \frac{3\pi^{4}}{20} + 8\zeta(3) \gamma \right) z^{4} - \frac{1}{5!} \left( \gamma^5 + \frac{5\pi^{2}\gamma^{3}}{3} + \frac{3\pi^{4} \gamma}{4} + (20\gamma^{2}+\frac{10\pi^{2}}{3}) \zeta(3) + 24\zeta(5) \right) z^{5} + \cdots + \frac{1}{n!} \left( \int_0^\infty e^{-t} (\ln t)^n \, dt \right) z^n + \cdots \\
& \approx 1 - 0.577215664 z + 0.989055995 z^{2} - 0.907479076 z^{3} + 0.981728086 z^{4} - 0.981995068 z^{5} + \cdots \\
\end{align}
其中,為歐拉-馬斯刻若尼常數、為黎曼ζ函數。部分計算機代數的系統存在可以直接產生這些展開式係數的語法。
。顏色越深代表絕對值越接近零;顏色越接近白色代表絕對值趨於無窮。其中紅色為正實數、青藍色為負實數。]]
較大的階乘值可透過双伽玛函数積分的連續分數來近似,這個方法由T. J. Stieltjes於1894提出。
將階乘寫為z!=e^{P(z)},其中P(z)為:
: P(z) = p(z) + \frac{\ln 2\pi}{2} - z + \left(z+\tfrac{1}{2}\right)\ln(z) \,,
Stieltjes給出了其連分數值:
:
p(z)=\cfrac{a_0}{z+
\cfrac{a_1}{z+
\cfrac{a_2}{z+
\cfrac{a_3}{z+\ddots}}}}
前幾項係數a_n為:
:
負整數的階乘
負整數的階乘可透過階乘的遞迴定義n!=n\times (n-1)!逆推而得:
:(n-1)! = \frac{n!}{n} .
但由於在此定義下計算負一的階乘會出現除以零(即(0-1)! = \frac{0!}{0}),因此無法直接給出負整數的階乘。
其他數學結構的階乘
透過伽瑪函數或其展開式亦可以將階乘擴展到其他能定義加法和乘法等基本運算的數學結構,如矩陣。
矩陣的階乘具有如下性質:
:A!=\Gamma(A+I)=A\Gamma(A)=A(A-I)!。
並且\Gamma(I)=I,其中,I是單位矩陣、A是一個方陣,同時A!是一個非奇異矩陣。
換句話說,即矩陣A為單位矩陣的純量n倍,其階乘為A!=(n I)!=n! I,例如\bigl( \begin{smallmatrix}
n&0\\ 0&n
\end{smallmatrix} \bigr)!=n! I=\bigl( \begin{smallmatrix}
n!&0\\ 0&n!
\end{smallmatrix} \bigr)
對於一個可對角化矩陣\bigl( \begin{smallmatrix}
a&b\\ c&d
\end{smallmatrix} \bigr)其階乘為:
:\left .{\begin{pmatrix}
a & b \\
c & d
\end{pmatrix}}\right . !=\Gamma \left(\bigl( \begin{smallmatrix}
a+1&b\\ c&d+1
\end{smallmatrix} \bigr)\right)=\frac{1}{2\Omega}{\begin{pmatrix}
\Gamma(\lambda_1)\left(d-a+\Omega\right)+\Gamma(\lambda_2)\left(a-d+\Omega\right) & -2b\left(\Gamma(\lambda_1)-\Gamma(\lambda_2)\right) \\
-2c\left(\Gamma(\lambda_1)-\Gamma(\lambda_2)\right) & \Gamma(\lambda_1)\left(a-d+\Omega\right)+\Gamma(\lambda_2)\left(d-a+\Omega\right)
\end{pmatrix}},其值約為6.20606987866\times 10^{183230}
另外一種定義則是每個阶幂都先取一次階乘:
::n!^{{(n-1)!}^!} = n!_{}^{(n-1)!^{{(n-2)!}^{.\,^{.\,^{.\,^{{3!}^{{2!}^{1!}}}}}}}}
:前幾個阶乘阶幂為:
::1, 2, 36, 48708493958471199415506599153950129703565945470976, ...
:第5个阶乘阶幂值已大於10^{10^{50}},其值約為4.3056\times 10^{1.01274\times 10^{50}}\approx 10^{10^{50.00549705084703}}
二次阶幂:
::
n^{!!} = n^{{!}^{2}} = {n^{{!}{(n-1)^{{!}{{(n-2)}^{{!}{{.}^{{.}^{{.}^{3^{{!}{2^{{!}{1^!}}}}}}}}}}}}}}
:前幾個二次阶幂為:
::1, 2, 81...
:第4个阶乘阶幂值已大於10^{438},其值約為7.975\times 10^{438}。
相应地,m次阶幂定义如下:
:
n^{{!}^{m}} = n^{{{!}^{(m-1)}{(n-1)}^{!^{m}}}} = {n^{{!^{(m-1)}}{(n-1)^{{!^{(m-1)}}{{(n-2)}^{{!^{(m-1)}}{{.}^{{.}^{{.}^{3^{{!^{(m-1)}}{2^{{!^{(m-1)}}{1^{!^{(m-1)}}}}}}}}}}}}}}}}
其中n,m\geq 1,且n,m \in Z。
倒數階乘
倒數階乘是指所有小於及等於該數的正整數之倒數的積,其值與階乘的倒數相同:
:\prod_{k=1}^n \frac{1}{k} = \frac{1}{n!} \quad\forall n\ge1
其無窮級數收斂在e:
:\sum_{n=0}^\infty \prod_{k=1}^n \frac{1}{k} = e
考量階乘可以表示為連續的伽瑪函數,則有
:\int_{-1}^\infty \frac{dx}{x!}\, = \int_{0}^\infty \frac{dx}{\Gamma(x)}\,\approx 2.80777024,
這個值又稱為。
反階乘
反階乘是階乘的反函數,用於求解指定的數是哪個數的階乘。例如120的反階乘為5,因為5的階乘為120。反階乘可以透過泰勒級數或反伽瑪函數來評估與計算。
反階乘可以用了推算某個數大約是多少的階乘。
由於階乘與伽瑪函數之間的關聯,反階乘也可以透過反伽瑪函數近似公式來估計:
: \mathrm{ArcFactorial}\left( z\right)\approx-1+\alpha+\sqrt{\frac{2\left(x-\Gamma\left(\alpha\right)\right)}{\Psi\left(1,\ \alpha\right)\Gamma\left(\alpha\right)}}.
因此,反階乘也可以寫成如下的渐近分析形式:
:\mathrm{ArcFactorial}\left( x\right) \sim\frac{\ln\left(\frac{x}{\sqrt{2\pi}}\right)}{W_{0}\left(e^{-1}\ln\left(\frac{x}{\sqrt{2\pi}}\right)\right)}-\frac{1}{2}
其中W_0(x)是朗伯W函数。這個公式是利用史特靈公式求逆得到的,因此也可以展開為漸近級數。
符号史
*瑞士数学家欧拉(Euler, L.)于1751年用大写字母M表示m阶乘M=1\cdot 2\cdot 3\cdot \cdots \cdot m。
*意大利数学家鲁菲尼(Ruffini, P.)在1799年出版的方程著述中,用小写字母\pi表示m阶乘。
德国数学家高斯(Gauss, C.F)于1818年则用\Pi (n)表示n*阶乘。
*用符号\underline{\mid n}表示n阶乘的方法起源于英国,尚不能确定其创始人,1827年,由雅来特(Jarrett)的建议得以流行,现代有时亦用此阶乘符号。
*现在通用的阶乘符号n!是法国数学家克拉姆(Kramp, C.)于1808年最先提出来的,后经德国数学家、物理学家格奥尔格·欧姆(Ohm, M.)等人的倡议而流行起来,直用到现在。
參見
*伽瑪函數
*斯特靈公式
*階乘倒數
*排列组合
*威尔逊定理
註釋
參考文獻
*
评论 (0)