完全順列

完全順列（かんぜんじゅんれつ、英: complete permutations）、もしくは攪乱順列（かくらんじゅんれつ、英: derangement）とは、整数 1, 2, 3, …, n を要素とする順列において、i 番目 (i ≦ n) が i でない順列である。順列を置換とみると、完全順列は不動点の個数が 0 の置換に対応している。乱列、混乱順列ともいう。 完全順列の総数をモンモール数 (英: Montmort number) という。モンモール数はしばしば !n と書かれる。これはフランスの数学者 ピエール・モンモール（フランス語版） に因んで名づけられた。 モンモール数を小さい順に並べると 0, 1, 2, 9, 44, 265, 1854, 14833, 133496, 1334961, …（オンライン整数列大辞典の数列 A166） である。 例えば 1, 2, 3, …, n の要素を並べるとき、1 番左端には 1 以外の数字が来るように、左から 2 番目には 2 以外の数字が来るように、同様に左から n 番目には n 以外の数字が来るように並べ替える。 n = 1 のとき完全順列はなし。 n = 2 のとき完全順列は (2, 1) の 1 通り。 n = 3 のとき完全順列は (2, 3, 1), (3, 1, 2) の 2 通り。 n = 4 のとき完全順列は (2, 1, 4, 3), (2, 3, 4, 1), (2, 4, 1, 3), (3, 1, 4, 2), (3, 4, 1, 2), (3, 4, 2, 1), (4, 1, 2, 3), (4, 3, 1, 2), (4, 3, 2, 1) の 9 通りになる。 モンモール数の一覧表 モンモール数 an を与える漸化式を考える。 n番目に置く数の選び方は 1 から(n - 1)までの(n - 1)通りである。ここで選んだ数を i とする。次に、i番目が n かどうかで場合分けをする。i番目が n であれば、i番目に置かれた n とn番目に置かれた i を除く(n - 2)個の数の並べ方の総数は、(n - 2)個の数による完全順列の数、すなわち an-2に等しい。i番目が n でない場合は、n番目に置かれた i を除く(n - 1)個の数の並べ方の総数は、(n - 1)個の数による完全順列の数、すなわち an-1となる。 以上をまとめると、以下の漸化式が得られる。 a n = ( n − 1 ) ( a n − 1 + a n − 2 ) , n ≧ 3 {\displaystyle a_{n}=(n-1)(a_{n-1}+a_{n-2}),\quad n\geqq 3} a1 = 0, a2 = 1 は#例のように計算できて、漸化式に n = 2 を代入して a0 = 1 が得られるので、この条件の下で漸化式を解くと、一般項は a n = ∑ k = 0 n ( − 1 ) k n ! k ! , n ≧ 0 {\displaystyle a_{n}=\sum _{k=0}^{n}{\frac {(-1)^{k}n!}{k!}},\quad n\geqq 0} となる。この一般項から、別の漸化式が得られる。 a n = n a n − 1 + ( − 1 ) n , n ≧ 1 {\displaystyle a_{n}=na_{n-1}+(-1)^{n},\quad n\geqq 1} また、n個のものを並べ替える順列をランダムに作ったとき完全順列になる確率は、一般項の式の両辺を n! で割った a n n ! = ∑ k = 0 n ( − 1 ) k k ! , n ≧ 0 {\displaystyle {\frac {a_{n}}{n!}}=\sum _{k=0}^{n}{\frac {(-1)^{k}}{k!}},\quad n\geqq 0} で表される。さらに n → ∞ とすると、指数関数のマクローリン展開 e x = ∑ n = 0 ∞ x n n ! {\displaystyle e^{x}=\sum _{n=0}^{\infty }{\frac {x^{n}}{n!}}} に x = -1 を代入した式になっているので、自然対数の底 e の逆数 1/e となる。パーセントで表すとおよそ36.788%である。 例えば 5 人でプレゼントを持ち寄ってランダムに分け直したとき、誰かが自分の持ってきたプレゼントに当たってしまう確率 p5 は p 5 = 5 ! − 44 5 ! = 76 120 = 19 30 = 0.6333 ⋯ {\displaystyle p_{5}={\dfrac {5!-44}{5!}}={\dfrac {76}{120}}={\dfrac {19}{30}}=0.6333\cdots } となる。 人数が 10 人の場合の確率 p10 は p 10 = 10 ! − 1334961 10 ! = 2293839 3628800 = 0.63212053571428571428571428571429 ⋯ {\displaystyle p_{10}={\dfrac {10!-1334961}{10!}}={\dfrac {2293839}{3628800}}=0.63212053571428571428571428571429\cdots } となる。 人数が n 人の場合の確率 pn の極限は lim n → ∞ p n = 1 − 1 e = 0.63212055882855767840447622983854 ⋯ {\displaystyle \lim _{n\to \infty }p_{n}=1-{\frac {1}{e}}=0.63212055882855767840447622983854\cdots } となる。 上記の式におけるの n 人のときの分子の数 (n! - an) はオンライン整数列大辞典の数列 A002467を参照。 包除原理を用いてもモンモール数の一般項を求めることができる。1 ≦ k ≦ n を満たす自然数 k に対して、集合 A k {\displaystyle A_{k}} を n 個の数字 {1, 2, …, n} を自分自身に写す置換の中で、k 番目の数字を固定する（すなわち、k を k に写した）順列の集合とする。i 個の集合の共通部分は i 個の数字を固定する置換を施した順列になるので、その元の個数は ( n − i ) ! {\displaystyle (n-i)!} に等しくなる。このとき、共通部分の選び方は n C i = ( n i ) {\displaystyle _{n}\mathrm {C} _{i}={\tbinom {n}{i}}} 通りになるので、包除原理により以下の式が成り立つ。 | A 1 ∪ ⋯ ∪ A n | = ∑ i | A i | − ∑ i < j | A i ∩ A j | + ∑ i < j < k | A i ∩ A j ∩ A k | + ⋯ + ( − 1 ) n + 1 | A 1 ∩ ⋯ ∩ A n | = ( n 1 ) ( n − 1 ) ! − ( n 2 ) ( n − 2 ) ! + ( n 3 ) ( n − 3 ) ! − ⋯ + ( − 1 ) n + 1 ( n n ) 0 ! = ∑ i = 1 n ( − 1 ) i + 1 ( n i ) ( n − i ) ! = n !   ∑ i = 1 n ( − 1 ) i + 1 i ! {\displaystyle {\begin{aligned}|A_{1}\cup \cdots \cup A_{n}|&=\sum _{i}\left|A_{i}\right|-\sum _{i<j}\left|A_{i}\cap A_{j}\right|+\sum _{i<j<k}\left|A_{i}\cap A_{j}\cap A_{k}\right|+\cdots +(-1)^{n+1}\left|A_{1}\cap \cdots \cap A_{n}\right|\\&={n \choose 1}(n-1)!-{n \choose 2}(n-2)!+{n \choose 3}(n-3)!-\cdots +(-1)^{n+1}{n \choose n}0!\\&=\sum _{i=1}^{n}(-1)^{i+1}{n \choose i}(n-i)!\\&=n!\ \sum _{i=1}^{n}{(-1)^{i+1} \over i!}\end{aligned}}} このとき、完全順列は n 個の数字の中、どれも固定しない置換による順列になるので、以下の式を得る。 a n = n ! − | A 1 ∪ ⋯ ∪ A n | = n ! ∑ i = 0 n ( − 1 ) i i ! . {\displaystyle a_{n}=n!-|A_{1}\cup \cdots \cup A_{n}|=n!\sum _{i=0}^{n}{\frac {(-1)^{i}}{i!}}.} モンモール数 anを与える母関数は以下のようになる。 ∑ n = 0 ∞ a n x n = e − ( 1 + 1 x ) x E i ( 1 + 1 x ) = 1 + x 2 + 2 x 3 + 9 x 4 + 44 x 5 + 265 x 6 + ⋯ {\displaystyle {\begin{aligned}\sum _{n=0}^{\infty }a_{n}x^{n}&={\frac {e^{-\left(1+{\frac {1}{x}}\right)}}{x}}\mathrm {Ei} \left(1+{\frac {1}{x}}\right)\\&=1+x^{2}+2x^{3}+9x^{4}+44x^{5}+265x^{6}+\cdots \end{aligned}}} ここで、Ei は指数積分である。また、指数型母関数は以下のようになる。 ∑ n = 0 ∞ a n x n n ! = e − x 1 − x = 1 + 1 2 x 2 + 1 3 x 3 + 3 8 x 4 + 11 30 x 5 + 53 144 x 6 + ⋯ {\displaystyle {\begin{aligned}\sum _{n=0}^{\infty }a_{n}{\frac {x^{n}}{n!}}&={\frac {e^{-x}}{1-x}}\\&=1+{\frac {1}{2}}x^{2}+{\frac {1}{3}}x^{3}+{\frac {3}{8}}x^{4}+{\frac {11}{30}}x^{5}+{\frac {53}{144}}x^{6}+\cdots \end{aligned}}} ここで、係数の分子の列はオンライン整数列大辞典の数列 A053557を参照、分母の列はオンライン整数列大辞典の数列 A053556を参照。 その他の計算式としては、以下のような式がある。 a n = ⌊ n ! e ⌉ , n ≧ 1 {\displaystyle a_{n}=\left\lfloor {\frac {n!}{e}}\right\rceil ,\quad n\geqq 1} ここで、⌊ x ⌉ は x の小数点以下を四捨五入した値である。さらに、 a n = ⌊ n ! + 1 e ⌋ , n ≧ 1 {\displaystyle a_{n}=\left\lfloor {\frac {n!+1}{e}}\right\rfloor ,\quad n\geqq 1} ここで、⌊ x ⌋ は床関数の値である。 モンモール数は不完全ガンマ関数 Γ(a, x) を用いて以下のように表される。 a n = Γ ( n + 1 , − 1 ) e . {\displaystyle a_{n}={\frac {\Gamma (n+1,-1)}{e}}.} これは、不完全ガンマ関数の積分表示により以下のように表される。 a n = ∫ − 1 ∞ x n e − ( x + 1 ) d x = ∫ 0 ∞ ( x − 1 ) n e − x d x . {\displaystyle a_{n}=\int _{-1}^{\infty }x^{n}e^{-(x+1)}dx=\int _{0}^{\infty }(x-1)^{n}e^{-x}dx.} 以下のような連分数が得られる。 a n = n ! e + ( − 1 ) n n + 2 − 1 n + 3 − 2 n + 4 − 3 n + 5 − ⋱ {\displaystyle a_{n}={\frac {n!}{e}}+{\cfrac {(-1)^{n}}{n+2-{\cfrac {1}{n+3-{\cfrac {2}{n+4-{\cfrac {3}{n+5-\ddots }}}}}}}}} [脚注の使い方] ^ a b c d e f Weisstein, Eric W. "Subfactorial". mathworld.wolfram.com (英語). ^ a b c d e Weisstein, Eric W. "Derangement". mathworld.wolfram.com (英語). 階乗 組合せ数学 包除原理 Graham, Ronald L.; Knuth, Donald E.; Patashnik, Oren (1994), Concrete Mathematics (2nd ed.), Addison-Wesley, Reading MA, ISBN 978-0-201-55802-9  ロナルド・L・グレアム、ドナルド・E・クヌース、オーレン・パタシュニク 著、有澤誠 ほか 訳『コンピュータの数学』（第2版）共立出版、2020年9月。ISBN 978-4-320-12464-6。  『攪乱順列（完全順列）の個数を求める公式』 - 高校数学の美しい物語 『モンモールの問題の応用』 - 高校数学の美しい物語 完全順列とモンモール数 Baez, John (2003), Let's get deranged!, https://math.ucr.edu/home/baez/qg-winter2004/derangement.pdf 2012年10月11日閲覧。  Bogart, Kenneth P.; Doyle, Peter G. (1985), Non-sexist solution of the ménage problem, http://www.math.dartmouth.edu/~doyle/docs/menage/menage/menage.html 2012年10月11日閲覧。  Dickau, Robert M., “Derangement diagrams”, Mathematical Figures Using Mathematica, http://mathforum.org/advanced/robertd/derangements.html 2012-10-11閲覧。  Hassani, Mehdi, Derangements and Applications, Journal of Integer Sequences (JIS), Volume 6, Issue 1, Article 03.1.2, 2003, http://www.cs.uwaterloo.ca/journals/JIS/VOL6/Hassani/hassani5.html 2012年10月11日閲覧。  Weisstein, Eric W. "Derangement". mathworld.wolfram.com (英語).