階乘
在數學中,正整数的階乘(英語:Factorial)是所有小於等於該數的正整數的積,計為,例如5的階乘表示為,其值為120:
並定義,1的階乘和0的階乘都為1,其中0的階乘表示一個空積[2]。

1808年,基斯頓·卡曼引進這個表示法:,符號表示連續乘積,亦即。階乘亦可以遞迴方式定義:,。除了自然數之外,階乘亦可定義于整個實數(負整數除外),其与伽瑪函數的关系为:
階乘應用在許多數學領域中,最常應用在組合數學、代數學和数学分析中。在組合數學中,階乘代表的意義為個相異物件任意排列的數量,例如前述例子,其代表了5個相異物件共有120種排列法。在正整數的情形下,的階乘又可以稱為n的排列數。
歷史 编辑
早在12世紀,印度學者就已有使用階乘的概念來計算排列數的紀錄[3]。1677年時,法比安·斯特德曼使用Change ringing來解釋階乘的概念[5]。在描述遞迴方法之後,斯特德將階乘描述為:「現在這些方法的本質是這樣的:一個數字的變化數包含了所有比他小的數字(包括本身)的所有變化數……因為一個數字的完全變化數是將較小數字的變化數視為一個整體,並透過將所有數字的完整變化聯合起來。」,其原文如下:
Now the nature of these methods is such, that the changes on one number comprehends [includes] the changes on all lesser numbers ... insomuch that a compleat Peal of changes on one number seemeth to be formed by uniting of the compleat Peals on all lesser numbers into one entire body.[6]
定義 编辑
階乘可透過連乘積來定義:
用連乘積符號可表示為:
從上述公式中,可以推導出遞迴關係式:
但遞迴定義須給出base case,因此需要定義零的階乘。 除此之外,遞迴關係在階乘函數中各個值皆成立,例如:
0的階乘 编辑
為了將遞迴關係式擴展到 ,因此需要定義0的階乘:
可以得到:
有幾個獨立的理由認為這個定義是和諧的。 其中包括:
- 在 的情況, 定義為「沒有任何數字相乘的結果」,所以更廣泛之慣例的例子是以不存在任何因數的乘法單位元素來當作其解。(參閱空積)
- 對於零個物品只有一種排列方式,因為沒有任何東西可以置換,唯一的重新排列就是什麼都不做。
- 它使組合數學中的許多恆等式對所有適用的值皆有效,例如從空集合中選擇0個元素的方法數,可由二項式係數給出:
- .
- 而從空集合中選擇0個元素的方法數為一種,即沒有任何東西可以取,唯一的取法就是什麼都不做。定義 可以滿足:
- .
- 更一般地,在 個相異元素的集合中取出 個相異元素的方法數,可由二項式係數給出:
- .
- 其方法數只有一種,即全部取出。定義 可以滿足:
- 此定義允許將許多公式更嚴謹地表達為冪級數,例如指數函數:
性質 编辑
計算 编辑
由于已知的技术原因,图表暂时不可用。带来不便,我们深表歉意。 |
計算 時,若 不太大,普通的科學計算機都可以計算,能夠處理不超過 (古高爾)數值的計算機可以計算至 ,而雙精度浮點數的計算機則可計算至 。
部分函數值 编辑
n | n! |
---|---|
0 | 1 |
1 | 1 |
2 | 2 |
3 | 6 |
4 | 24 |
5 | 120 |
6 | 720 |
7 | 040 5 |
8 | 320 40 |
9 | 880 362 |
10 | 628800 3 |
11 | 916800 39 |
12 | 001600 479 |
13 | 227020800 6 |
14 | 178291200 87 |
15 | 307674368000 1 |
16 | 922789888000 20 |
17 | 687428096000 355 |
18 | 402373705728000 6 |
19 | 645100408832000 121 |
20 | 432902008176640000 2 |
25 | 1210043331×1025 1.551 |
50 | 4093201713×1064 3.041 |
70 | 857166997×10100 1.197 |
100 | 621544×10157 9.332 |
450 | 368733×101000 1.733 |
000 1 | 872601×102567 4.023 |
249 3 | 337688×1010000 6.412 |
000 10 | 259681×1035659 2.846 |
206 25 | 703438×10100000 1.205 |
000 100 | 229408×10456573 2.824 |
023 205 | 898932×101000004 2.503 |
000000 1 | 931688×105565708 8.263 |
10100 | 1010101.9981097754820 |
非正整數的階乘 编辑
階乘原始的定義是在整數,為離散,然而在部分領域如機率論要探討到連續或其他需求(如組合數當取出的數量大於原有的數量會出現負階乘)時,則需要將階乘從正整數推廣到實數,甚至是複數。
函数和 函数 编辑
除了非負整數之外,還可以為非整數值定義階乘函數,但這需要使用更高級的數值分析方法。
可以透過插值的方式將階乘兩整數之間填入數值,但其插入的數值必須也要滿足階乘的遞迴定義。一個良好的插值結果是 函数,其為所有非負整數和複數給出了定義,而當 的實部為正時,可以透過下列瑕積分來計算 函数值:
它與階乘的關係是對於任何自然數n滿足:
複數的階乘 编辑
可以透過 函數來計算複數的階乘。右圖顯示了複數階乘之模與輻角的等值線
令 為:
右圖顯示了幾個模(絕對值) 與輻角 的幾個等級,圖表的繪製範圍為 , 個單位長。較粗的鉛直線為輻角值為 的等值線。
細線表示模或輻角相等之函數值的位置。在每個負整數的位置為奇點,無法定義其模和輻角,並且在離奇點越近的地方,等值線的密度就越密集。
在|z| < 1時,可使用泰勒級數來計算:
其泰勒級數的前幾項係數為:
n | gn | 近似值 |
---|---|---|
0 | 1 | 1 |
1 | 2156649 −0.577 | |
2 | 0559955 0.989 | |
3 | 4790760 −0.907 |
其中,γ為歐拉-馬斯刻若尼常數
- ζ(z)為黎曼ζ函數
部分計算機代數的系統存在可以直接產生這些展開式係數的語法,例如SageMath。
此種方式甚至可以將階乘推廣至四元數甚至其他數學結構。
z | z! |
---|---|
實數 | |
1、2、3、4、5 | 1、2、6、24、120 (OEIS數列A000142) |
(OEIS數列A019704) | |
複數 | |
(OEIS數列A212877)、(OEIS數列A212878) | |
四元數 | |
較大的階乘值可透過双伽玛函数積分的連續分數來近似,這個方法由T. J. Stieltjes於1894提出。
將階乘寫為 ,其中 為:
Stieltjes給出了其連分數值:
前幾項係數 為[10]:
n an 0 1 2 3 4 5 6
負整數的階乘 编辑
負整數的階乘可透過階乘的遞迴定義 逆推而得:
但由於在此定義下計算負一的階乘會出現除以零(即 ),因此無法直接給出負整數的階乘。
其他數學結構的階乘 编辑
透過伽瑪函數或其展開式亦可以將階乘擴展到其他能定義加法和乘法等基本運算的數學結構,如矩陣[11]。
矩陣的階乘具有如下性質:
- 。
並且 ,其中, 是單位矩陣、 是一個方陣,同時 是一個非奇異矩陣[12]。
換句話說,即矩陣 為單位矩陣的純量 倍,其階乘為 ,例如
對於一個可對角化矩陣 其階乘為:
變化 编辑
定义扩展 编辑
階乘的定義可推廣到複數,其与伽瑪函數的关系为:
- 。
伽瑪函數滿足 ,
另一種定义扩展是阿達馬伽瑪函數,但由於其不在所有實數上皆能滿足階乘的遞迴定義,只有在正整數上滿足階乘的遞迴定義 因此比較少被拿出來討論。
其後面的項 只有在正整數的情形為零。也因為其有加上一項,也因此,此擴展在描述負階乘時不會有除以零的情況,而使阿達馬伽瑪函數是一個處處連續、無奇點的函數。
遞進/遞降階乘 编辑
- 遞進階乘:
- 遞降階乘:
雙階乘 编辑
正整數的雙階乘表示小於等於該數的所有具相同奇偶性的正整數的乘積,即:
廣義的雙階乘 编辑
無視上述定義的 因為即使值的 ,雙階乘為奇數可擴展到最實數和複數 的注意到,當 是一個正的奇數則:
獲得的表達接受一個以上公式 和 並表示在條件發生的階乘函數的 既可以看出(使用乘法定理)等同於一個給定在這裡。
定義為所有複數除負偶數。
比較上式與 的原始定義,廣義的雙階乘在 的計算上須包含 ,即
其中
使用它的定義,半徑為 的n維超球其體積可表示為:
- n=1,3,5,...
- n=2,4,6,...
多重阶乘 编辑
被称为 的 重阶乘,定义为:
廣義的多重階乘 编辑
四次階乘 编辑
所謂的四次阶乘(又称四重阶乘) 不是 ,而是 ,前幾個四次階乘為
- 1, 2, 12, 120, 1680, 30240, 665280, ....
它也等於
過階乘 编辑
hyperfactorial(有時譯作過階乘)寫作 ,其定義為:
hyper階乘和階乘差不多,但產生更大的數。hyper階乘的增長速度卻並非跟一般階乘在大小上相差很遠。 前幾項的hyper階乘為:
超階乘 编辑
1995年,尼爾·斯洛恩和西蒙·普勞夫定義了超階乘(superfactorial)為首 個階乘的積。即 。一般來說
前幾項的超階乘為:
另一種定義 编辑
柯利弗德·皮寇弗在他的書Key to Infinity定義了另一個超階乘,寫作 ( 為!和S重疊在一起): (4),表示hyper4,使用高德納箭號表示法即 。這個數列:
- ,读作6个6重幂。
- = ,一直写24个24,读作24个24重幂。
質數階乘 编辑
質數階乘是所有小於或等於該數且大於或等於2的質數的積,自然數 的質數階乘,寫作 。
目前質數階乘只能用遞迴方式定義,因為尚未找到一個能用基本函數表示所有質數的函數或一條包含所有質數的曲線
一般情況下質數階乘定義為:
其中, 是質數計數函數,小於或等於某個實數 的質數的個數的函數 。
自然数阶幂 编辑
阶幂也称叠幂或者重幂记作 (感叹号!写在自然数的右上角),它的定义是将自然数1至 的数由大到小作幂指数重叠排列,数学定义如下:
其中 ,前几项的重幂数为:
1 , 2 , 9 , 262144 , ... (OEIS數列A049384)
第5个重幂数是一个有183231位阿拉伯数字组成的超大自然数[13][14],其值約為
另外一種定義則是每個阶幂都先取一次階乘:
二次阶幂:
- 前幾個二次阶幂為:
- 1, 2, 81...
- 第4个阶乘阶幂值已大於 ,其值約為 。
相应地, 次阶幂定义如下:
其中 , ,且 。
倒數階乘 编辑
倒數階乘是指所有小於及等於該數的正整數之倒數的積,其值與階乘的倒數相同:
考量階乘可以表示為連續的伽瑪函數,則有
反階乘 编辑
反階乘是階乘的反函數,用於求解指定的數是哪個數的階乘。例如120的反階乘為5,因為5的階乘為120。反階乘可以透過泰勒級數或反伽瑪函數來評估與計算。
符号史 编辑
參見 编辑
註釋 编辑
參考文獻 编辑
- ^ Graham, Ronald L.; Knuth, Donald E.; Patashnik, Oren, Concrete Mathematics, Reading, MA: Addison-Wesley, 1988, ISBN 0-201-14236-8
- ^ Graham,Knuth & Patashnik 1988[1], p.111
- ^ Biggs, Norman L. The roots of combinatorics. Historia Mathematica. May 1979, 6 (2): 109–136. ISSN 0315-0860. doi:10.1016/0315-0860(79)90074-0 –通过ScienceDirect.
- ^ 4.0 4.1 4.2 Stedman, Fabian, Campanalogia, London, 1677[註 2]
- ^ Stedman 1677[4], pp. 6–9.
- ^ Stedman 1677[4], p. 8.
- ^ Higgins, Peter, Number Story: From Counting to Cryptography, New York: Copernicus, 2008, ISBN 978-1-84800-000-1
- ^ Higgins 2008,[7] p. 12
- ^ 潘承洞. 《数论基础》. 现代数学基础 (丛书). 高等教育出版社. 2012年12月. ISBN 9787040364729 (中文(中国大陆)).
- ^ 5.10. Digital Library of Mathematical Functions. [2010-10-17]. (原始内容存档于2010-05-29).
- ^ Abul-Dahab, MA and Bakhet, AK. A certain generalized gamma matrix functions and their properties. J Anal Number Theory: 63––68. 2015. 参数
|journal=
与模板{{cite web}}
不匹配(建议改用{{cite journal}}
或|website=
) (帮助);|volume=
被忽略 (帮助); - ^ 12.0 12.1 12.2 Cardoso, Joao R and Sadeghi, Amir. Computation of matrix gamma function. arXiv preprint arXiv:1806.10554. {2018. 参数
|journal=
与模板{{cite web}}
不匹配(建议改用{{cite journal}}
或|website=
) (帮助); - ^ print len(str(6**(5**(4**(3**2))))) (页面存档备份,存于互联网档案馆)[連結內容執行超時]
- ^ Wolfram, Stephen. " ". from Wolfram Alpha: Computational Knowledge Engine, Wolfram Research. [2018-11-19] (英语).
- ^ Wolfram, Stephen. " ". from Wolfram Alpha: Computational Knowledge Engine, Wolfram Research. [2018-11-19] (英语).
- ^ Sloane, N.J.A. (编). Sequence A073581 (Factorials successively exponentiated). The On-Line Encyclopedia of Integer Sequences. OEIS Foundation.
a(5) > 10^(10^50).
- ^ Iwanami Sūgaku Jiten Fourth, Tokyo: Iwanami Shoten, 2007, ISBN 978-4-00-080309-0, MR 2383190 (日语) 142.D
- ^ Finch, S. R. "Fransén-Robinson Constant." §4.6 in Mathematical Constants. Cambridge, England: Cambridge University Press, pp. 262-264, 2003.