Factorial

n!

n の階乗を与える.

詳細

  • 記号操作・数値操作の両方に適した数学関数である.
  • 整数ではない n については,Gamma[1+n]によって与えられる n!の数値的な値が与えられる.
  • 整数と半整数については,Factorialは,自動的に厳密値を計算する.
  • Factorialは任意の数値精度で評価できる.
  • Factorialは自動的にリストに縫い込まれる.
  • FactorialIntervalオブジェクトおよびCenteredIntervalオブジェクトに使うことができる. »

予備知識

  • Factorialは階乗関数を表す.具体的に言うと,Factorial[n]は与えられた数 の階乗 を返す.これは,正の整数については,と定義される.n1,2,の最初のいくつかの値は1,2,6,24,120,720,となる.特殊ケースの は1と定義される.この定義は,0個のオブジェクトを並べる方法は厳密に1通りであるという組合せ論の解釈と矛盾しない.一般的な複素数 については,z!=TemplateBox[{{z, +, 1}}, Gamma]となる.ここに含まれるGamma関数 TemplateBox[{z}, Gamma]は, が負の整数である場合(この場合の は複素無限大となる)を除く, のすべての複素値について,TemplateBox[{z}, Gamma]=int_0^inftyⅇ^(-t) t^(z-1)dt と定義される.半整数の階乗はの有理数倍で表される.
  • 階乗は,置換として知られる,リストの元の一定の順序への並べ替えを数える場合がよく知られている.置換はPermutationsで生成することができる.相異なる 個の元のリストには 通りの置換がある.これは,最初の元が置ける場所は 個,最初の元の場所が決まった後で2番目の元が置ける場所は 個,最初の2個の元の場所が決まった後で3番目の元が置ける場所は 個と言う具合にして,最後に残った場所に最後に残った元を置くまで続ける.これに従うと,の置換は 通りで,となる.
  • より一般的に言うと,相異なる 個の元( 番目の元は 個のコピーを持つ)の 個の多重集合(したがって,)の置換数は,Multinomialが与える多項係数に等しい.多項係数(n;n_1,...,n_(k))もまた, 個の元を,大きさが n1,,nkのラベル付きの 個の部分集合に分割する方法を数える.これは,Binomialが与える二項係数TemplateBox[{n, m}, Binomial]と同じで, 元の集合の 元部分集合を数えると定義され,TemplateBox[{n, m}, Binomial]=(n;m,n-m)=(n!)/(m! (n-m)!)を満足する.
  • 階乗関数は,再帰関数 および を満足する.階乗関数は,スターリング(Stirling)の近似 が示すように,他のどの指数関数よりも急激に増大する.階乗は整数論とその解析の基本的な結果にも出現する.ウィルソン(Wilson)の定理には, が素数のときかつそのときに限りTemplateBox[{{{{(, {n, -, 1}, )}, !}, =, {-, 1}}, n}, Mod],とある.が無限に微分可能なスカラー関数であれば,点 Seriesで計算可)の周りのテイラー(Taylor)級数表現は で与えられる.指数関数 のテイラー級数でおよび と設定すると,E(自然対数の底)についての美しい恒等式 が与えられる.
  • Factorialと関連がある,あるいはこれの一般化である関数には,Factorial2FactorialPowerTemplateBox[{Subfactorial, paclet:ref/Subfactorial}, RefLink, BaseStyle -> {InlineFormula}]QFactorialBarnesGPochhammerがある.

例題

すべて開くすべて閉じる

  (7)

最初のいくつかの整数の階乗を計算する:

実数値で評価する:

実数の部分集合上でプロットする:

複素数の部分集合上でプロットする:

原点における級数展開:

Infinityにおける級数展開:

特異点における級数展開:

スコープ  (34)

数値評価  (6)

数値的に評価する:

高精度で評価する:

出力精度は入力精度に従う:

複素数入力:

高精度で効率的に評価する:

IntervalオブジェクトとCenteredIntervalオブジェクトを使って最悪の場合に保証される区間を計算する:

Aroundを使って平均的な場合の統計区間を計算することもできる:

配列の要素ごとの値を計算する:

MatrixFunctionを使って行列のFactorial関数を計算することもできる:

特定の値  (5)

固定点におけるFactorialの値:

0における値:

大きい引数について評価する:

半整数の引数について評価する:

Factorial[x]の正の最小値を求める:

可視化  (2)

Factorial関数をプロットする:

の実部をプロットする:

の虚部をプロットする:

関数の特性  (10)

階乗の実領域:

複素領域:

Factorialは要素単位でリストに縫い込まれる:

階乗は鏡特性を持つ:

Factorialは解析関数ではない:

しかし,複素平面では有理型関数である:

Factorialは非減少でも非増加でもない:

Factorialは単射ではない:

Factorialは全射ではない:

Factorialは非負でも非正でもない:

Factorialは負の整数について特異点と不連続点の両方を持つ:

Factorialは凸でも凹でもない:

微分  (2)

z についての導関数を求める:

z についての高次導関数:

z についての高次導関数をプロットする:

級数展開  (5)

Seriesを使ってテイラー(Taylor)展開を求める:

の周りの最初の3つの近似をプロットする:

Infinityにおける級数展開(スターリング(Stirling)の近似)を求める:

における級数:

任意の記号方向 についての級数展開を求める:

生成点におけるテイラー展開:

再帰恒等式と簡約  (2)

漸化式:

正の整数(n-1)! = TemplateBox[{n}, Gamma]について:

関数表現  (2)

階乗関数の積分表現:

TraditionalFormによる表示:

一般化と拡張  (4)

高精度で評価する:

出力精度は入力精度に従う:

無限大の引数は記号的な結果を与える:

Factorialは導関数を許容する:

アプリケーション  (6)

半整数の階乗の表を作る:

6個の要素の順列の数:

複素平面におけるFactorialの絶対値のプロット:

階乗の割合の漸近展開を求める:

n次元の単位超球の体積:

低次元の場合:

単位超球の体積を次元の関数としてプロットする:

-における級数展開を求める:

特性と関係  (9)

FullSimplifyを使ってFactorialを含む式を簡約する:

Factorialを含む母関数の総和を計算する:

Factorialを含む数値的な総和を計算する:

母関数は発散する:

正規化を使って母関数の閉じた形を求める:

母関数を形式的ベキ級数とみなす:

いくつかの積分が可能である:

階乗関数の積:

FactorialDifferenceRootとして表すことができる:

FindSequenceFunctionFactorial数列を認識する:

Factorialの指数母関数:

考えられる問題  (2)

大きい引数は,たとえ近似的にでも明示的に計算するのには大きすぎる結果を与えることがある:

値を小さくするとちゃんと動く:

機械数の入力で高精度の結果が得られることがある:

おもしろい例題  (3)

複素平面におけるネストした階乗:

Factorialを無限大でプロットする:

Wolfram Research (1988), Factorial, Wolfram言語関数, https://reference.wolfram.com/language/ref/Factorial.html (2022年に更新).

テキスト

Wolfram Research (1988), Factorial, Wolfram言語関数, https://reference.wolfram.com/language/ref/Factorial.html (2022年に更新).

CMS

Wolfram Language. 1988. "Factorial." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/Factorial.html.

APA

Wolfram Language. (1988). Factorial. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Factorial.html

BibTeX

@misc{reference.wolfram_2024_factorial, author="Wolfram Research", title="{Factorial}", year="2022", howpublished="\url{https://reference.wolfram.com/language/ref/Factorial.html}", note=[Accessed: 22-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_factorial, organization={Wolfram Research}, title={Factorial}, year={2022}, url={https://reference.wolfram.com/language/ref/Factorial.html}, note=[Accessed: 22-November-2024 ]}