階乘
在數學中,正整数的階乘(英語:)是所有小於及等於該數的正整數的積,計為n!,例如5的階乘計為5!,其值為120:
並定義,1的階乘1!為1、0的階乘0!亦為1,其中,0的階乘表示一個空積[2]。
1808年,基斯頓·卡曼引進這個表示法:,符號表示連續乘積,亦即n!=1×2×3×...×n。階乘亦可以遞迴方式定義:0!=1,n!=(n-1)!×n。除了自然數之外,階乘亦可定義于整個實數(負整數除外),其与伽瑪函數的关系为:
階乘應用在許多數學領域中,最常應用在組合學、代數學和数学分析中。在組合學中,階乘代表的意義為n個相異物件任意排列的數量,例如前述例子,5!=120其代表了5個相異物件共有120種排列法。在正整數的情形下,n的階乘又可以稱為n的排列數。
歷史
早在12世紀,印度學者就已有使用階乘的概念來計算排列數的紀錄[3]。1677年時,法比安·斯特德曼使用Change ringing來解釋階乘的概念[5], pp. 6–9.</ref>。在描述遞迴方法之後,斯特德將階乘描述為:「現在這些方法的本質是這樣的:一個數字的變化數包含了所有比他小的數字(包括本身)的所有變化數……因為一個數字的完全變化數是將較小數字的變化數視為一個整體,並透過將所有數字的完整變化聯合起來。」,其原話如下:
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的階乘
為了將遞歸關係擴展到n = 0,因此需要定義0的階乘:
可以得到
有幾個獨立的理由認為這個定義是和諧的。 其中包括:
- 在n = 0的情況,n!定義為「沒有任何數字相乘的結果」,所以更廣泛之慣例的例子是以不存在任何因數的乘法單位元素來當作其解。(參閱空積)
- 對於零個物品只有一種排列方式,因為沒有任何東西可以置換,唯一的重新排列就是什麼都不做。
- 它使組合數學中的許多恆等式對所有適用的值皆有效,例如從空集合中選擇0個元素的方法數,可由二項式係數給出:
- .
- 而從空集合中選擇0個元素的方法數為一種,即沒有任何東西可以取,唯一的取法就是什麼都不做。定義可以滿足:
- .
- 更一般地,在n個相異元素的集合中取出n個相異元素的方法數,可由二項式係數給出:
- .
- 其方法數只有一種,即全部取出。定義可以滿足:
- 此定義允許將許多公式更嚴謹地表達為冪級數,例如指數函數:
計算
計算n!時,若n不太大,普通的科學計算機都可以計算,能夠處理不超過(古高爾)數值的計算機可以計算至69!,而雙精度浮點數的計算機則可計算至170!。
當n很大時,可用斯特林公式估計:
更精确的估计是:
其中
部分函數值
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 | 355,687,428,096,000 |
18 | 402373705728000 6 |
19 | 645100408832000 121 |
20 | 432902008176640000 2 |
25 | 121004×1025 1.551 |
50 | 409320×1064 3.041 |
70 | 857167×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 |
非正整數的階乘
階乘原始的定義是在整數,為離散,然而在部分領域如機率論要探討到連續或其他需求(如組合數當取出的數量大於原有的數量會出現負階乘)時,則需要將階乘從正整數推廣到實數,甚至是複數。
Γ函数和Π函数
除了非負整數之外,還可以為非整數值定義階乘函數,但這需要使用更高級的數值分析方法。
可以透過插值的方式將階乘兩整數之間填入數值,但其插入的數值必須也要滿足階乘的遞迴定義。一個良好的插值結果是Γ函数,其為所有非負整數和複數給出了定義,而當z的實部為正時,可以透過下列瑕積分來計算Γ函数值:
它與階乘的關係是對於任何自然數n滿足:
複數的階乘
可以透過Γ函數來計算複數的階乘。右圖顯示了複數階乘之模與輻角的等值線
令f為:
右圖顯示了幾個模(絕對值)ρ與輻角φ的幾個等級,圖表的繪製範圍為−3 ≤ x ≤ 3, −2 ≤ y ≤ 2個單位長。較粗的鉛直線為輻角值為φ = ±π的等值線。
細線表示模或輻角相等之函數值的位置。在每個負整數的位置為奇點,無法定義其模和輻角,並且在離奇點越近的地方,等值線的密度就越密集。
在|z| < 1時,可使用泰勒級數來計算:
其泰勒級數的前幾項係數為:
n | gn | 近似值 |
---|---|---|
0 | 1 | 1 |
1 | −γ | 2156649 −0.577 |
2 | π212 + γ22 | 0559955 0.989 |
3 | −ζ(3)3 − π212 − γ36 | 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提出。
將階乘寫為z! = eP(z),其中P(z)為:
Stieltjes給出了其連分數值:
前幾項係數an為[10]:
n an 0 112 1 130 2 53210 3 195371 4 999 22737 22 5 944523 29733142 19 6 535241009 109264275462 48
變化
定义扩展
階乘的定義可推廣到複數,其与伽瑪函數的关系为:
- 。
伽瑪函數滿足,
另一種定义扩展是阿達馬伽瑪函數,但由於其不在所有實數上皆能滿足階乘的遞迴定義,只有在正整數上滿足階乘的遞迴定義n! = n × (n − 1)!因此比較少被拿出來討論。
其後面的項只有在正整數的情形為零。也因為其有加上一項,也因此,此擴展在描述負階乘時不會有除以零的情況,而使阿達馬伽瑪函數是一個處處連續、無奇點的函數。
遞進/遞降階乘
- 遞進階乘:
- 遞降階乘:
双階乘
表示双階乘,其定義為:
廣義的雙階乘
無視上述定義的n!!因為即使值的N,雙階乘為奇數可擴展到最實數和複數z的注意到,當z是一個正的奇數則:
獲得的表達接受一個以上公式和並表示在條件發生的階乘函數的γ既可以看出(使用乘法定理)等同於一個給定在這裡。
z!!定義為所有複數除負偶數。
比較上式與的原始定義,廣義的雙階乘在的計算上須包含,即
其中
使用它的定義,半徑為R的n維超球其體積可表示為:
- n=1,3,5,...
- n=2,4,6,...
多重阶乘
被称为n的k重阶乘,定义为:
四次階乘
所謂的四次阶乘(又称四重阶乘) 不是 n!(4),而是 (2n)!/n!,前幾個四次階乘為
- 1, 2, 12, 120, 1680, 30240, 665280, ....
它也等於
hyper階乘
hyper階乘(hyperfactorial有時譯作過度階乘)寫作H(n),其定義為:
hyper階乘和階乘差不多,但產生更大的數。hyper階乘的增長速度卻並非跟一般階乘在大小上相差很遠。 前幾項的hyper階乘為:
另一種定義
柯利弗德·皮寇弗在他的書Key to Infinity定義了另一個超階乘,寫作(實際上應該是!和S重疊在一起):,(4)表示hyper4,使用高德納箭號表示法即。這個數列:
- ,读作6个6重幂。
- = ,一直写24个24,读作24个24重幂。
質數階乘
質數階乘是所有小於或等於該數且大於或等於2的質數的積,自然數n的質數階乘,寫作n#。
目前質數階乘只能用遞迴方式定義,因為尚未找到一個能用基本函數表示所有質數的函數或一條包含所有質數的曲線
一般情況下質數階乘定義為:
其中, π(n)是質數計數函數,小於或等於某個實數n的質數的個數的函數≤n。
自然数阶幂
阶幂也称叠幂或者重幂记作(感叹号!写在自然数的右上角),它的定义是将自然数1至n的数由大到小作幂指数重叠排列,数学定义如下:
其中n ≥ 1,前几项的重幂数为:
1 , 2 , 9 , 262144 , ... (OEIS中的数列A049384)
第5个重幂数是一个有183231位阿拉伯数字组成的超大自然数[13][14],其值約為
另外一種定義則是每個阶幂都先取一次階乘:
二次阶幂:
- 前幾個二次阶幂為:
- 1, 2, 81...
- 第4个阶乘阶幂值已大於,其值約為。
相应地,m次阶幂定义如下:
其中n,m≥1,且n,m∈Z。
符号史
註釋
參考文獻
- Graham, Ronald L.; Knuth, Donald E.; Patashnik, Oren, , Reading, MA: Addison-Wesley, 1988, ISBN 0-201-14236-8
- Graham,Knuth & Patashnik 1988[1], p.111
- Biggs, Norman L. . Historia Mathematica. May 1979, 6 (2): 109–136. ISSN 0315-0860. doi:10.1016/0315-0860(79)90074-0 –ScienceDirect.
- Stedman, Fabian, , London, 1677<ref group='註'>The publisher of Stedman 1677 is given as "W.S." who may have been William Smith, possibly acting as agent for the Society of College Youths, to which society the "Dedicatory" is addressed.
- Stedman 1677[4]
- Stedman 1677[4], p. 8.
- Higgins, Peter, , New York: Copernicus, 2008, ISBN 978-1-84800-000-1
- Higgins 2008,[7] p. 12
- 潘承洞. . 现代数学基础 (丛书). 高等教育出版社. 2012年12月. ISBN 9787040364729 (中文(中国大陆)).
- . Digital Library of Mathematical Functions. [2010-10-17]. (原始内容存档于2010-05-29).
- Abul-Dahab, MA and Bakhet, AK. . J Anal Number Theory: 63––68. 2015.
- Cardoso, Joao R and Sadeghi, Amir. . arXiv preprint arXiv:1806.10554. {2018.
- print len(str(6**(5**(4**(3**2)))))
- . wolframalpha. [2018-11-19].
- . wolframalpha. [2018-11-19].
- Sloane, N.J.A. (编). . The On-Line Encyclopedia of Integer Sequences. OEIS Foundation.
a(5) > 10^(10^50).
- 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.