遊びの数論64 

[遊びの数論] 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20
21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40
41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60
61 | 62 | 63 | 64

『遊びの数論63』の続き。誤字脱字・間違いがあるかも。


✿ ✿ ✿ ✿ ✿


2026-08-03 ウォルステンホームの第2命題・再訪 ちょっと目からうろこ

ウォルステンホームの定理といえば、 n が 5 以上の素数のとき
  1/1 + 1/2 + 1/3 + ··· + 1/(n − 1)
の分子は n2 で割り切れる、という命題を指すことが多い。有名な美しい定理ではあるが、本来これは3部構成の命題の一つ目。第2命題は、同じ条件において、
  1/12 + 1/22 + 1/32 + ··· + 1/(n − 1)2
の分子が n で割り切れる、というもの。標準的なアプローチでは、第1命題の証明のとき、とある整数 A, B がどちらも n の倍数であることが示される。「だったら A2 − 2BC も n の倍数だよね」(n の倍数と n の倍数の差なのだから)、というロジックで、第1命題のついでのように、第2命題は証明される。最後の第3命題は、第1命題ほどではないにせよ、それなりに有名(こっちも「ウォルステンホームの定理」と呼ばれる)。3部構成のうち、真ん中の第2命題だけは「おまけ」扱いというか、軽視されている。

理由は「第1命題が証明されると、連動的に証明されてしまい、パズル的な面白さが低い」ということかもしれないし、「第1命題の分母に《2乗》が付いただけで、二番煎じの類似品。 n2 で割り切れるという第1命題と比べ、単に n で割り切れるというだけでは地味」ということかもしれない。

ところが、この不人気の第2命題に、一般には知られていない「意外な事実」が隠されていた! 第2命題は、次の定理と同値なのだが………

定理 q が 5 以上の素数のとき、 q − 1 個の平方数 12, 22, ···, (q − 1)2 の「q − 2 個ずつの積」の和は、 q の倍数。

………この定理、実は q が素数でなくても、奇数の合成数であっても、成立する! ウォルステンホームの定理では、「n が 5 以上の素数なら」という枕詞がお約束。でも、第2命題に関しては、もし仮に分数の足し算結果を約分しないのであれば、「n が 5 以上の素数なら」というお約束をぶち破って門戸を広げ、「n が 5 以上の奇数ならオッケー。素数でない子も一緒に遊ぼっ。 9, 15, 21, ··· みんな、おいでよ☆」とできる!

なんて心温まる話(?)でしょう。っつーか、第2命題がいかに「おまけ扱い」され、深く研究されずに適当にあしらわれてきたかを如実に物語るエピソード、といえるかもしれない。

✿

§43 表記の簡潔化のため、
  1/12 + 1/22 + 1/32 + ··· + 1/(n − 1)2
の代わりに、文字を変えて
  1/12 + 1/22 + 1/32 + ··· + 1/(q − 1)2
として、 q − 1 をあらためて n と置く。すると、問題の和は:
  Hn(2) = 1/12 + 1/22 + ··· + 1/n2

この形の方がちょっとだけシンプルかと。この Hn(2) を機械的に通分した分子を考えよう。すなわち各項の分母を 12⋅22⋅32···n2 = (n!)2 にそろえた場合、第1項の分子は:
  22⋅32⋅42⋅52···n2 = (n!)2/12
第2項の分子は:
  12⋅32⋅42⋅52···n2 = (n!)2/22
第3項の分子は:
  12⋅22⋅42⋅52···n2 = (n!)2/32
等々。従って、通分後の足し算で生じる分子は、
  1, 2, 3, ···, n
の「n − 1 個ずつの積」の和 Sn−1(n) の平方数バージョン。つまり
  12, 22, 32, ···, n2
の「n − 1 個ずつの積」の和 Un−1(n) だ。総和記号で表記するなら:
  ∑{k=1 to n} (n!)2/k2
(この値は Hn(2) の足し算結果ではなく、 Hn(2) の分数たちを機械的に通分して足し算したときの、約分前の分子に当たる。)

〔例〕 12⋅22⋅32⋅42 = (4!)2 = 242 = 576 に留意すると:
  1/12 + 1/22 + 1/32 + 1/42 = (576/12 + 576/22 + 576/32 + 576/42)/576
   = (576 + 144 + 64 + 36)/576
この分子で足し算される四つの数は:
  22⋅32⋅42 = 576
  12⋅32⋅42 = 144
  12⋅22⋅42 = 64
  12⋅22⋅32 = 36
それらの和 820 が素数 n + 1 = 5 で割り切れる、というのが、 Wolstenholme の第2命題の事例。
  820/576 = 205/144
のように既約分数に約分しても、分子が 5 で割り切れるという事実に変わりはない(約分前の分母 (4!)2 は素因子 5 を持たないので、分子の素因子 5 は決して約されない)。

このような Un−1(n) の計算は、あまり見通しが良くない。次のようにすることで、これを比較的なじみ深いスターリング数 Sr(n) の計算に帰着させることができる。上の例でいえば、
  22⋅32⋅42 + 12⋅32⋅42 + 12⋅22⋅42 + 12⋅22⋅32
が欲しい。つまり(項の順序をソートすると)、
  U3(4) = 12⋅22⋅32 + 12⋅22⋅42 + 12⋅32⋅42 + 22⋅32⋅42  ア
が欲しい。各因子に付いている《2乗》さえなければ、これは単なるスターリング数
  S3(4) = 1⋅2⋅3 + 1⋅2⋅4 + 1⋅3⋅4 + 2⋅3⋅4
となり、簡単に操作可能(最も直接的には [5 S 2] = 4! H4 である)。従って U3(4) を直接的に計算して因子を一つ一つ平方する代わりに、
  {S3(4)}2 = (1⋅2⋅3 + 1⋅2⋅4 + 1⋅3⋅4 + 2⋅3⋅4)2  イ
のように全体を平方して、そこから U3(4) を導くのが得策かも、と思われる(実際、それがこの場合の定石)。

イを展開すると、
  (1⋅2⋅3)2 = 12⋅22⋅32 や (1⋅2⋅4)2 = 12⋅22⋅42
等々の、求めるべきアの成分が全て得られる他、
  2[(1⋅2⋅3)(1⋅2⋅4) + (1⋅2⋅3)(1⋅3⋅4) + ···]
の形の不必要な項も発生する。この不要部分を引き算で除去することは(スターリング数の立場からは)易しい。イは、一般的に言えば、
  (n!/1 + n!/2 + n!/3 + ··· + n!/n)2
の形なので、発生する不必要な部分は、次の形式を持つ:
  2[(n!/1)(n!/2) + (n!/1)(n!/3) + ···] = 2(n!) [n!/(1⋅2) + n!/(1⋅3) + ···]
この右辺の [ ] 内は、 1 から n までの数の「n − 2 個ずつの積」の和 Sn−2(n) だ。例えばイから生じるこの部分は 2(4!) S2(4) なので(n = 4)、
  U3(4) = {S3(4)}2 − 2(4!) S2(4)
となり、一般の場合には:
  Un−1(n) = {Sn−1(n)}2 − 2(n!) Sn−2(n)

n = q − 1 と置くと:
  Uq−2(q − 1) = {Sq−2(q − 1)}2 − 2⋅(q − 1)!⋅Sq−3(q − 1)  ウ
別表記 Wm(q) = Sm(q − 1) を使うと:
  Uq−2(q − 1) = {Wq−2(q)}2 − 2⋅(q − 1)!⋅Wq−3(q)  エ
あるいは、同じことだが、 (q − 1)! = Wq−1(q) なので:
  Uq−2(q − 1) = {Wq−2(q)}2 − 2⋅Wq−1(q)⋅Wq−3(q)  オ

q が 5 以上の素数のとき、 Wq−2(q), Wq−3(q) が q の倍数であることは周知(Lagrange の定理)。よってエの右辺は q の倍数、それに等しい Uq−2(q − 1) = Un−1(n) も q の倍数。この Un−1(n) が和 Hn(2) の分子であることから Wolstenholme の第2命題が生じる。

さらに Glaisher は、地味だが繊細な観察を追加した。―― Wolstenholme の定理では「5 以上の素数」ということが大前提。証明に使われるウないしエないしオ(どの式も実質同じ意味)においても「q は 5 以上の素数」という条件が予期される。だが、実は q が素数でなくても、 5 以上の奇数であれば Uq−2(q − 1) は q で割り切れる!

定理8(Glaisher [7], §28) 任意の奇数 q ≥ 5 について(q は素数でも合成数でも構わない)、 q − 1 種類の平方数
  12, 22, 32, ···, (q − 1)2
の q − 2 個ずつの積の和 Uq−2(q − 1) は q の倍数。

q が素数の場合に話を限るなら、これは Wolstenholme の定理の証明ツールとして使われる関連命題に過ぎず、その場合、定理8は定理7の特別な場合に過ぎない。しかし q は素数でなくても構わない――その点が、ちょっと目からうろこ。

証明 仮定により q ≥ 5 は奇数だから q − 2 も奇数。よって Wq−2(q) は q の倍数(命題3)。ゆえにエの右辺・第1項は q の倍数。

もし q が奇素数(q = 5, 7, 11, 13, 17, 19, ···)なら Wq−3(q) は q の倍数(Lagrange の定理)。一方、もし q が奇数の合成数(q = 9, 15, 21, ···)なら (q − 1)! は q の倍数†。どちらの場合でも、エの右辺・第2項は q の倍数。

従ってエの右辺は q の倍数。それに等しい左辺 Uq−2(q − 1) も q の倍数。∎

† もし合成数 q = u2 が(奇数の)平方数なら、整数 1, 2, ···, q − 1 の中には u と 2u が含まれる(もちろん u ≠ 2u)。よって (q − 1)! は u⋅2u = 2u2 の倍数、従って u2 = q の倍数。一方、もし合成数 q が平方数でないなら、その非自明な約数 u を任意に一つ選んで q = uv と置くと、整数 1, 2, ···, q − 1 の中には u と v が含まれる(u ≠ v)。よって (q − 1)! は u⋅v = q の倍数。

Lagrange の定理よりほんの少し広く、 q が素数でも合成数でも、オの第1項 Wq−2(q) は q の倍数。さて q が素数のときは (q − 1)! は q の倍数でないが、そのときは Wq−3(q) が q の倍数。一方、 q が合成数のときは Wq−3(q) は q の倍数でないが、そのときは Wq−1(q) = (q − 1)! が q の倍数。いずれにしても、オの第2項もまた q の倍数――言われてみれば何でもないことだが、見落とされがちな細道かもしれない。


スターリング数
9(ナイン)の段

8! = 40320
109584
(投球後走る)
118124
(いい肺・二死)

心肺機能が
強力な投手が
活躍してるらしい。
スクイズか
バントを
猛ダッシュで捕球
ダブルプレー?


〔例〕 q = 9 のとき、エから:
  U7(8) = {W7(9)}2 − 2⋅8!⋅W6(9)
W7(9) と 8! はどちらも 9 の倍数なので、上記の数 U7(8) は 9 の倍数。参考までに具体的な数値を記すと、 W7(9) = 109584 《投球後走る》は 9 の倍数[直接的にも、桁の和 (1 + 8) + 9 + (5 + 4) は 9 の倍数]。 (q − 1)! = 8! = 40320 もまたしかり[直接的にも、桁の和 4 + 3 + 2 は 9 の倍数だし、単純に考えて 8! = 1⋅2⋅3⋅4⋅5⋅6⋅7⋅8 は明らかに 3⋅6 = 18 の倍数、従って 9 の倍数]。すなわち:
  U7(8) = (109584)2 − 2⋅40320⋅118124
ここで 118124 《いい肺・二死》はスターリング数 W6(9) であるが、 U7(8) が 9 で割り切れるという結論を得るためには、この具体的数値は必要ない。単に 109584 と 40320 がどちらも 9 の倍数であるということから、上記右辺は「9 の倍数(の平方)とら 9 の倍数の差」となり、結果は 9 の倍数。 W7(9) = 109584 自体、具体的数値は必要なく、 W7(9) は 9 の倍数という事実から――より一般的に言えば「k, ℓ が奇数なら Wk(ℓ) は ℓ の倍数」という一般原則から――、具体的な数値を考えるまでもなく、結論が得られる。

✿

§44 定理8を利用して、下記の派生的命題を得ることができる。

t ≥ 1 と q ≥ 2 を整数、 L = 2q とする。 σ の基本公式〘ⅲ〙から:
  S2t(2q − 1) ≡ σt(q − 1; 2q) (mod q2)
一方、 N = n = q − 1 ≥ 1 と L = 2(n + 1) = 2q について、法 (L/2)2 = q2 の下で補題7を使うと:
  σt(q − 1; 2q) ≡ (−1)t Ut(q − 1) − (−1)t (2q)⋅Ũt(q − 1) (mod q2)  カ
従って:
  S2t(2q − 1) ≡ (−1)t Ut(q − 1) − (−1)t (2q)⋅Ũt(q − 1) (mod q2)
  ∴ S2t(2q − 1) ≡ (−1)t Ut(q − 1) (mod q)  キ

ここで q を 5 以上の奇数に限定すると、定理8から Uq−2(q − 1) ≡ 0 (mod q) が成り立つ。キに t = q − 2 を代入すると:
  S2q−4(2q − 1) ≡ 0 (mod q)  ク

同様に、基本公式〘ⅳ〙から:
  S2t+1(2q − 1) ≡ (q − t − 1/2)⋅2q⋅σt(q − 1; 2q) (mod q3)
カを使うと:
  S2t+1(2q − 1) ≡ (2q − 2t − 1)⋅q⋅[(−1)t Ut(q − 1) − (−1)t (2q)⋅Ũt(q − 1)] (mod q3)
  ∴ S2t+1(2q − 1) ≡ (2q − 2t − 1)⋅q⋅[(−1)t Ut(q − 1)] (mod q2)
q を 5 以上の奇数に限定して t = q − 2 と置くと、 Ut(q − 1) は q の倍数(定理8)、よって上記合同式の右辺は q2 の倍数:
  S2(q−2)+1(2q − 1) = S2q−3(2q − 1) ≡ 0 (mod q2)  ケ

ケとクをまとめると:

命題4([7], §29) q が 5 以上の奇数なら:
  S2q−3(2q − 1) = W2q−3(2q) = [2q S 3] ≡ 0 (mod q2)
  S2q−4(2q − 1) = W2q−4(2q) = [2q S 4] ≡ 0 (mod q)

q が素数 p の場合に関しては、この命題は、 Glaisher 自身による追記において、より一般的な定理4に包含される(証明の手法も、定理4の方が直接的でシンプル)。 q が奇数の合成数の場合に関しては、命題4は、定理4とは独立の新しい成果ではあるが、この場合、 W2q−1(2q) = (2q − 1)! が因子 q を何個持つか直接カウントすることによって、
  W2q−1, W2q−2, W2q−3, W2q−4, W2q−5
を統一的に扱うことができ、 W2q−3 と W2q−4 についても、命題4より少し強い結果が得られる。

従って「結果」だけを問題にするのなら、命題4は、「よりシンプルなアプローチによる、より一般的な結果」によって上書きされてしまう。

スターリング数と関連深い「中央階乗数」を利用する手法の面白さは、注目に値する。この場合、その手法で得られる成果(命題4)はパワフルではないけれど、 q が奇素数の場合と奇数の合成数の場合を統一的に扱える点は、一応、メリットともいえる。

✿ ✿ ✿


2026-09-16 ありきたりの問題とその応用 52! = 8065不可思議…

10! = 1 × 2 × 3 × ··· × 10 = 3628800

この整数(3628800)の末尾には 0 が 2 個ある。では整数 100! の末尾には 0 が何個あるか。 200! ならどうか。

これ自体は、ありきたりの問題「N! は素因子 p を何個持つか」の一種であり、簡単な割り算と足し算によってあっさり解決する。同様の発想をスターリング数の研究に応用できる。

ありきたりの部分の具体例。トランプの52種(13 × 4枚)のカードの積み重ね方(デッキ)には、何種類のパターンがあるか?

一番下のカードには、52種の選択肢がある。下から2枚目のカードには、51種の選択肢がある(残りの51枚から選ぶから)。同様に、下から3枚目・4枚目··· のカードには50種類・49種類···の選択肢があって、一番上のカードには、1種類の選択肢しかない。だから:
  52! = 52 × 51 × 50 × 49 × ··· × 1 =
   8065不可思議 8175那由他(なゆた) 1709阿僧祇(あそうぎ) 4387恒河沙(こうがしゃ) 8571極(ごく) 6606載 3685正
   6403澗 7669溝 7528穣 9505𥝱 4408垓 8327京 7824兆 0000億 0000万 0000
[参考リンク: 大きな数詞]

このように実際に掛け算してみて、結果の末尾の 0 の個数を数える――というのは、原理的には最も素直な解法。しかし「実際に掛け算してみる」という方法は、単に「面倒」というだけでなく、一般には「物理的に不可能」。というのも N が大きくなるにつれて整数 N! は急激に増大する。例えば W = 10100 自体は「1 の後ろに 0 が 100 個付いた、たった 101 桁の数」だが、整数 W! は、桁数が長過ぎて、たとえ全宇宙の全原子を総動員してひも状に並べ、一つ一つの原子に一桁ずつ数を刻んだとしても、数値を書き終わる前に書く場所が足りなくなってしまう†。つまり整数 W! は宇宙に入り切らないくらいでかく(桁数が長く)、①その数を実際に書く → ②末尾の 0 の個数を数える、という方針では、①の部分が実行不可能。

さりながら、問題は N! の数値そのものではなく、その数値の「末尾の 0 の個数」。 10 の倍数なら末尾に 0 があり、 102 = 100 の倍数なら末尾に 00 があり、 103 = 1000 の倍数なら末尾に 000 があり、等々。そして末尾が 0 の数を 1 回 10 で割るごとに、末尾の 0 が一つ減ることは明らかだから、「N! を実際に計算」する必要はなく、単に「N! は 10 で何回割り切れるか?」を考えれば十分。それは易しい。すなわち…

† (参考) W! = 1 × 2 × ··· × W は、明らかに
  A = 11 × 12 × ··· × W
より大きい。 A は W − 10 個(この個数を B とする)の整数の積だが、それら一つ一つの整数はどれも 10 より大きいし、個数 B = W − 10 は W ÷ 10 = 1099 個(この個数を C とする)より多いので、 A は 10 を C 個掛けたもの
  10 × 10 × ··· × 10 = 10C
より大きい。さて 10C は 1 の後ろに 0 を C = 1099 個並べた数だから、 1099 + 1 桁。その 10C より大きい A は、当然 1099 桁を超え、その A より大きい W! も 1099 桁を超える。一方、物理学者によると、全宇宙の原子の総数は、ざっと 1080 らしい。整数 W! を記述するには少なくとも 1099 個の桁が必要なので、書く場所が 1080 個程度では、 W! の全桁は書き切れない。

✿

ある数が 10 = 2⋅5 で割り切れるためには、当然その数は、素因子 2 と素因子 5 を持たねばならない。整数
  52! = 1 × 2 × ··· × 52
の例で言うと、掛け算される 1, 2, 3, ··· の中には 5 個に 1 個の割合で 5 の倍数があるのだから、それらの中に 5 の倍数が 10 個ある。具体的には、
  5, 10, 15, 20, 25,
  30, 35, 40, 45, 50
のちょうど 10 個の整数が、素因子 5 の供給源となる(それ以外の整数 1, 2, 3, 4, 6, 7, ··· は、素因子 5 を全く供給しない)。よって 52! は素因子 5 を少なくとも 10 個持つ。のみならず、これら 10 個の整数(5 の倍数)たちのうち、 25 = 52 と 50 = 2⋅52 の 2 個は、それぞれ素因子 5 を二つずつ供給する。
  5, 10, 15, ···, 50 の 10 個 → それぞれ素因子 5 を少なくとも一つ供給
  25 と 50 の 2 個 → 上記に加えて素因子 5 をもう一つずつ追加供給

要するに 52! は素因子 5 をちょうど 12 個含む。一方 52! に含まれる素因子 2 の個数は、具体的に考えるまでもなく、素因子 5 の個数より圧倒的に多い(整数 1, 2, 3, ··· の中には 2 個に 1 個の割合で 2 の倍数があるのだから)。

もはや結論は明らかだろう。一つの素因子 2 と一つの素因子 5 のペアによって「因子 10」が一つ生じるのだから――そして、そのようなペアを作れる素因子 2 は豊富にあるけど、素因子 5 は 12 個しかないのだから―― 52! は「因子 10」を 12 個だけ持つ。よって整数 52! の末尾には 0 が 12 個だけ並ぶ。

そして下から 13 桁目は 0 ではない。なぜなら 52! は因子 212⋅512 = 1012 を含み 10 で 12 回割り切れるが、 因子 213⋅513 = 1013 を含まず 10 で 13 回は割り切れない。

✿

以上の考察を簡潔に式で表すと、次の通り。 52! が持つ素因子 5 の正確な個数は:
  ⌊52/5⌋ + ⌊52/52⌋ = ⌊52/5⌋ + ⌊52/25⌋ = 10 + 2 = 12
ここで記号 ⌊r⌋ は r を超えない最大の整数を意味し、この文脈においては「余りを無視した整数商」、つまり「商の小数点以下切り捨て」。

さて 52 は 53 = 125 より小さいので、積 52! を構成する因子たちの中には「素因子 5 の三重供給源」は含まれていない(簡単に言えば 1 から 52 までの整数の中に 125 の倍数はない)。

もし N が 125 以上になると、 1 と N の間に 53 = 125 の倍数が含まれ、素因子 5 の「三重供給源」が生じる。 N がますます大きくなって 54 = 625 以上、 55 = 3125 以上、等々になると、素因子 5 の「四重供給源」「五重供給源」等々が生じる。それでも問題の本質は少しも変わらず、 52! の例と同様に考えると、 N の大小にかかわらず、簡単な足し算
  ⌊N/p⌋ + ⌊N/p2⌋ + ⌊N/p3⌋ + ···
によって、 N! に含まれる素因子 p の総数を正確に求めることができる(項の値が 0 になったら、そこで足し算を打ち切る。その先の項は全部 0 に等しく、足しても足さなくても値は変わらないので)。

〔例1〕 整数 100! の末尾には 0 が何個あるか。
  ⌊100/5⌋ + ⌊100/25⌋ + ⌊100/125⌋ = 20 + 4 + 0 = 24

〔例2〕 整数 200! の末尾には 0 が何個あるか。
  ⌊200/5⌋ + ⌊200/25⌋ + ⌊200/125⌋ + ⌊200/625⌋ = 40 + 8 + 1 + 0 = 49

〔例3〕 整数 300! は素因子 7 を何個含むか。
  ⌊300/7⌋ + ⌊300/49⌋ + ⌊300/343⌋ = 42 + 6 + 0 = 48

✿

以上、ありきたりの計算法を述べたが、スターリング数の性質の中には、このような考え方を利用して証明可能なものがある。その一例を記す。

問題1 p が 3 以上の素数のとき、
  [2p S 2] = (2p − 1)!/1 + (2p − 1)!/2 + ··· + (2p − 1)!/(2p − 1)
が p の倍数より 1 大きいことを示したい。

例えば p = 3 のとき:
  5!/1 + 5!/2 + 5!/3 + 5!/4 + 5!/5
  = 5⋅4⋅3⋅2 + 5⋅4⋅3⋅1 + 5⋅4⋅2⋅1 + 5⋅3⋅2⋅1 + 4⋅3⋅2⋅1
  = 120 + 60 + 40 + 30 + 24 = 274
は、 3 の倍数より 1 大きい。着目点として、積 5! = 1⋅2⋅3⋅4⋅5 = 120 を構成する五つの因子の中には 3 の倍数は一つしかない(3 自身)。従って 5! を 3 で割った商は、もはや 3 で割り切れない(事実 120/3 つまり 40 は 3 の倍数ではない)。他方において 5!/1 と 5!/2 と 5!/4 と 5!/5 は、どれも明らかに 3 の倍数。よって上記で足し合わされる 5 項のうち、最初の 2 項と最後の 2 項は 3 の倍数で、真ん中の項だけが 3 の非倍数。ゆえに、この問題においては、
  5!/1 + 5!/2 + 5!/3 + 5!/4 + 5!/5 ≡ 0 + 0 + 5!/3 + 0 + 0 ≡ 5!/3 (mod 3)
と見て、真ん中の項だけを考察すれば十分。ところが、
  5!/3 = 1⋅2⋅4⋅5 ≡ 1⋅2⋅1⋅2 = (1⋅2)2 = (2!)2 = ((3 − 1)!)2
であり、この右端の平方数は Wilson の定理から ≡ (−1)2 ≡ 1 (mod 3) であるから、当然 3 の倍数より 1 大きい。以上の議論は、容易に一般化される。すなわち:

問題1の解 2p − 1 個の分数(実際にはどの分数も整数値を持つ)の和
  (2p − 1)!/1 + (2p − 1)!/2 + ··· + (2p − 1)!/(2p − 1)
について、真ん中の項 (2p − 1)!/p 以外の全部の項は p の倍数。ゆえに、
  (2p − 1)!/p ≡ 1 (mod p)
を示せば十分。そして、上記の合同式が成り立つことは明白。なぜなら、
  (2p − 1)!/p = 1⋅2···(p − 1) × (p + 1)(p + 2)···(2p − 1)
   ≡ 1⋅2···(p − 1) × 1⋅2···(p − 1) ≡ ((p − 1)!)2
は、 Wilson の定理により ≡ (−1)2 を満たす。∎

実は、問題1の結論は、補題6の一部として既に証明されている。補題6に比べ、問題1は極めて限定的な内容に過ぎない。しかしながら、補題6が面倒な帰納法(Lagrange の漸化式と二項係数に関する Lucas の定理を組み合わせる)により導かれたのと対照的に、問題1は直接的な計算に基づく。すなわち、この部分だけを取り出すなら、問題1のアプローチの方が簡明で好ましい。整数 (2p − 1)! が素因子 p を何個持つか?という平明な問いに Wilson の定理を組み合わせただけ。のみならず…

✿

問題1のアイデアは、容易に次の命題へと一般化可能。

問題2 p が 3 以上の素数、 m が 2 以上の整数のとき、
  [mp S m] ≡ (−1)m (mod p)
が成り立つ。

m = 2 の場合が問題1に当たる。 m = 3 の場合、証明すべき合同式は次の通り:
  [3p S 3] = ∑ (3p − 1)!/(ij) ≡ −1 (mod p)
ここで i, j は 1 ≤ i < j ≤ 3p − 1 の範囲の全ての整数の組み合わせにわたる。着目点として、積 (3p − 1)! を構成する 3p − 1 個の整数の中に、 p の倍数はちょうど 2 個ある(具体的には p と 2p)。ゆえに、上記の総和で足し合わされる各項は、 i = p, j = 2p の場合を唯一の例外として、どれも p の倍数。よって、合同式
  (3p − 1)!/(p⋅2p) ≡ −1 (mod p)
を示せば十分。それは易しい。実際、この左辺の分数は、整数
  1⋅2···(p − 1) × (p + 1)(p + 2)···(2p − 1) × (2p + 1)(2p + 2)···(3p − 1)
に等しく、この整数について、 Wilson の定理から ≡ ((p − 1)!)3 ≡ (−1)3 (mod p) が成り立つ。

一般の場合も同様。次の通り。

問題2の解 [mp S m] = ∑ (mp − 1)!/(i1i2···im−1) が、法 p の下で (−1)m と合同であることを示す。ここで i たちは、
  1 ≤ i1 < i2 < ··· < im−1 ≤ mp − 1
の範囲の全ての整数の組み合わせにわたる。この総和の各項は、
  i1 = p, i2 = 2p, ···, im−1 = (m − 1)p
の場合を唯一の例外として、どれも p の倍数。ゆえに、
  (mp − 1)!/(p⋅2p···(m − 1)p) ≡ (−1)m (mod p)
を示せば十分。この左辺の分数(整数値を持つ)は、次の m 個の整数の積に等しい。
  A1 = 1⋅2···(p − 1)
  A2 = (p + 1)(p + 2)···(2p − 1)
   ︙
  Am = ((m − 1)p + 1)((m − 1)p + 2)···(mp − 1)
法 p の下で A1 ≡ A2 ≡ ··· ≡ Am であることに留意すると、 Wilson の定理から、これら A たちの積は (−1)m と合同。∎

✿

冒頭で述べた「ありきたりの算数」では
  N! = 1⋅2···N
に含まれる素因子 p の個数
  ⌊N/p⌋ + ⌊N/p2⌋ + ⌊N/p3⌋ + ···
を問題にした。しかしスターリング数への応用では、もっと単純に、
  1, 2, ···, N
の中に p の倍数が何個あるか?を問題にした方が、往々にして話が簡単になる。つまり、単に
  ⌊N/p⌋
だけを考えた方が、むしろ良い。

事実、問題2において、もし m が p より大きければ、積 (mp − 1)! を構成する因子たちの中には、素因子 p を「多重供給」するもの(p2 の倍数や p3 の倍数など)が含まれるけれど、そのことは、問題2の解のロジックに影響を及ぼさない。その理由は次の通り。

今、整数 (mp − 1)! が素因子 p をちょうど x 個持つとしよう。 x がどんなに大きいとしても、 mp − 1 個の整数から成る集合
  S = {1, 2, ···, mp − 1}
の中に p の倍数たちは m − 1 個しかない。集合 S から相異なる m − 1 個の整数 i たちを選んでそれらの積
  D = i1i2···im−1
を考えるとしよう。その場合、 S の中に m − 1 種類ある p の倍数たち全部を(m − 1 種類の i たちとして)選んだとき、 D に含まれる素因子 p の個数が最大になることは、言うまでもない――その選択の場合、仮定により D は素因子 p を x 個持つ。それ以外の選択の場合、 i たちのどれかが p の非倍数に置き換わるのだから、 D に含まれる素因子 p の個数は減って、上記の最大値「x 個」より少なくなる。

言い換えると、分数
  (mp − 1)!/(i1i2···im−1)
の分子には素因子 p が x 個含まれるけれど、分母に含まれる素因子 p の個数 y は、一般には x より小さい。その結果、約分すると分母に p が x − y 個残って、この分数(実際には整数値を持つ)は p の倍数になる。唯一の例外は、 m − 1 種類の i たちとして S に含まれる m − 1 種類の p の倍数を過不足なく選ばれた場合(言い換えれば i たち全部が p の倍数の場合)。そのとき分子と分母はどちらも素因子 p を x 個持つのだから(つまり y = x が成り立つから)、約分すると分母の p は全滅し、上記分数は p の非倍数になる。

この単純な観察が、問題2の解のロジックの核心。素因子 p の正確な個数 x はこの際どうでもよく、正確な個数 x にこだわると問題が複雑化し、解決困難になってしまう。

N! に含まれる素因子 p の正確な個数にこだわらないこと――あえて「大ざっぱに考える」こと――が、この議論の要。

✿

q が合成数の場合、 Lagrange の式からの通常のアプローチは不可能になるが、その場合でも k が小さければ、例えば [2q S k] を mod q あるいは mod q2 等々で考察できる場合がある。その場合にも
  (2q − 1)! には因子 q が何個含まれるか?
を問題にせず、もっと大ざっぱに、
  (2q − 1)! で掛け算される 2q − 1 個の整数の中には q の倍数が何個あるか?
というシンプルな観点が、役立つ。これについては、機会があれば記す。

✿ ✿ ✿


2026-10-19 漫画の数学・まれに見る良問 「飛び石和」再訪

なんらかの形で漫画に数学が登場することは、意外と多い。特に、少女漫画・少年漫画の主人公の多くは学生。必然的に「学校の授業・宿題・試験」などのシーンが含まれる。のび太は、しばしば勉強で困っている――ドラえもんの「アンキパン」で「事前に全部の計算結果を暗記すればいい」という暴挙に出る!

このような場面でチラッと描かれる「数学の問題」の具体的内容は、本編とは大きく関わりの無い物語である!

ところが、この種のどうでもいい埋め草の「問題」が、自分にとっては鬼門。せっかくストーリーに没入できていたのに、往々にして興ざめ。現実に引き戻されてしまう。

例えば「この子は、ものすごい天才少女!」みたいなキャラ紹介として、「こんな超難問をスラスラ解ける!」という描写が時々ある。が、その「難問」が平凡な計算問題だったら、つじつまが合わない。かといって、その「難問」が相対性理論だったら、過ぎたるはなお及ばざるがごとし。漫画・アニメでは、しばしば「平方根」程度が「難問」と設定されたり、逆に「天才といえばアインシュタイン」みたいな安直な設定が使われたりして、つぼを突いた「説得力のある描写」ができていないっ!

納得がいかないっ!!

(こういう点において、「数論愛好家」の読者は面倒くさい。)

そんな中、「これは良問!」と感心したケースがある。

ストーリー展開としては、学校をサボりまくっていたちょっと不良っぽいようなキャラが、なんかのきっかけで、医学部受験を目指して猛勉強を始める――みたいな流れ。絶妙なのは、変身ぶりの描写として、このキャラが解いてみせる問題(下記)。「高校生にとっての難問」としてリアリティーがある。しかも 1 ~ 2 桁程度の引き算・足し算だけで答えが見えるので、「急に真面目になった元不良」が頑張ってこれを解いても不自然ではない。

問題 n は 1 以上の整数です。 a1 = b1 = 1, an+1 = an − bn, bn+1 = an + bn だとすると an = 2100 を満たす n は何でしょう?

↑ 続きを読む前に挑戦してみよう!

以下、この問題の解を 4 通り記す。「その0」は小学生バージョン。「その1」は中学生バージョン、「その2」は高校生バージョン、「その3」はクレイジー・バージョン。検討中、思いがけず、有名定理(四つごとの二項係数の和)の素晴らしい新証明を得た――それについても紹介したい。

✿

第1話「実験」 a1 = 1 は、もちろん 2100 ではない。 a2, a3, a4, ··· の値はよく分からないが、問題文によると、その中に 2100 に等しいものがあるらしい。様子を見るため、最初の幾つかの項を直接計算してみる。 n = 1 とすると、定義から:
  a2 = a1 − b1 = 1 − 1 = 0
  b2 = a1 + b1 = 1 + 1 = 2
従って n = 2 とすると:
  a3 = a2 − b2 = 0 − 2 = −2
  b3 = a2 + b2 = 0 + 2 = 2
従って n = 3 とすると:
  a4 = a3 − b3 = (−2) − 2 = −4
  b4 = a3 + b3 = (−2) + 2 = 0
同様に進めて:
  a5 = (−4) − 0 = −4, b5 = (−4) + 0 = −4
  a6 = (−4) − (−4) = 0, b6 = (−4) + (−4) = −8
  a7 = 0 − (−8) = 8, b7 = 0 + (−8) = −8
  a8 = 8 − (−8) = 16, b8 = 8 + (−8) = 0
  a9 = 16 − 0 = 16, b9 = 16 + 0 = 16
   ︙

このような実直な計算によって、 a2, a3, a4, ··· が
  0, −2, −4, −4; 0, 8, 16, 16; 0, −32, −64, −64; 0, 128, 256, 256; ···  (✽)
であること、つまり符号を無視すると
  0, 21, 22, 22; 0, 23, 24, 24; ···  (✽✽)
であることが、分かる。(✽✽)のうち 2 番目、 4 番目、 6 番目、 8 番目…の項を抜き出すと、
  21, 22, 23, 24, ···
なので、問題の 2100 は(✽✽)の 200 番目の項。(✽✽)において 4 番目、 8 番目…の項(つまり 4 の倍数番目の項)は、直前の項と値が同じなので、 200 番目の項が 2100 なら 199 番目の項も 2100 だ。

従って、解があるとしたら(✽)のうち 199 番目と 200 番目。(✽)は
  a2, a3, a4, a5, ···
なので(すなわち a2 を 1 番目とする数列なので)、(✽)の 199 番目と 200 番目は a200 と a201 に当たる。そのことから、答えは n = 200 と n = 201 だと分かる(符号を検討すると、両者は条件を満たす)。

✿

第2話「平面」 このように、数値実験によって答えを見つけることは易しい。小学生の算数なら、それで十分かも。「解(その0)」である。

今のところ、最初の幾つかの an の観察からパターンを「予想」して、その「予想されたパターン」から a200 と a201 はどちらも値が 2100 だ、と推測しただけ。初めの一歩としては満足すべき成果だが、「本当にそうなのか・なぜその答えが出るのか・他にも条件を満たす an は無いのか」について、厳密に検討しなければなるまい。もう少し観察してみる。

an, bn の最初の幾つかの項を直接計算する際、
  n = 2 のとき (1 − 1, 1 + 1) = (0, 2) で…
  だから n = 3 のとき (0 − 2, 0 + 2) = (−2, 2) で…
のように (an, bn) をペアで考えるのは、自然の成り行きだろう。最初の 12 組のペアは、次の通り:
  (1, 1), (0, 2), (−2, 2), (−4, 0),
  (−4, −4), (0, −8), (8, −8), (16, 0),
  (16, 16), (0, 32), (−32, 32), (−64, 0)

古い a と b の差と和が、次の a と b ――という単純な仕掛けではあるが、出現する数の並び方は少々ミステリアス。少なくとも次のことは分かる。①全部の数は 0 か ±2k の形である(k は 0 以上の整数。 20 = 1 のケースを含む)。②二つに一つの割合で、ペアの一方の数は 0 である。③「どちらの数も 0 ではないペア」は、符号を無視すれば、両方の数が同じ。

要するに (an, bn) は、
  (±2k, 0) または (0, ±2k) または (±2k, ±2k) または (±2k, ∓2k)
のいずれかの形を持つ。

符号を無視して大ざっぱに言うと、数値が徐々に 2 倍され、後ろに行くほど「どんどん大きくなる」。でも、ちょっと妙だ。「だんだん大きくなる」感じなのに、「いつまでたっても、しょっちゅう 0 に戻る」ってのは、どういう現象なのか?

The purpose of life is to conjecture and prove.

(人生の目的は予想して証明することである。)

Paul Erdős

(1, 1), (0, 2), (−2, 2), (−4, 0), ··· の意味を真剣に考えると、やがて電球がともって(秒で分かるか、数分かかるかはともかく)、次の認識に至るだろう――各ペアを「点の座標」だと思えば、片方の座標が 0 になる場合も含めて、だんだん原点から遠ざかっている!

画像: (a1, b1), (a2, b2), ··· の位置

「原点からの距離」を具体的に考えてみる。ただし「距離」だと平方根がうざいので、ここでは「距離の平方」を記す。

ピタゴラスの定理(三平方の定理)によると、それぞれの点の「原点からの距離の平方」は x-座標の平方と y-座標の平方の和。順に
  12 + 12, 02 + (−2)2, (−2)2 + (−2)2, (−4)2 + 02, (−4)2 + (−4)2, ···
つまり、
  2, 4, 8, 16, 32, ···
となっている。要するに:
  21, 22, 23, 24, 25, ···
どの点も原点から見て 45° の倍数の方向にあることは一目瞭然。方位と距離が分かれば、点の位置は確定するので、これで (an, bn) の挙動を完全に見切ったことになる!

an = 2100 になるような n を見つけるには、
  an に対応するような、座標が (2100, y) の形の点
を見つければいい。そのような点があるとしたら、その座標は、
  (2100, 0) 原点からの方位 0° (右の水平方向)
  (2100, 2100) 原点からの方位 45° (右斜め上)
  (2100, −2100) 原点からの方位 −45° (右斜め下)
のどれかだ。

点 (2100, y) は、座標平面の右半分(第1象限または第4象限)のかなたにあるので、方位 ±90° や ±135° や ±180° にはなり得ない。

だいぶ話が見えてきた。あとは数式化して、適当に説明を書くだけ。

✿

第3話「数値」 平面上の点を「数」として扱うため、実質同じことではあるが「座標平面」を「複素平面」と再解釈する。

以降 √−1 を i と記して(従って i2 = −1 である)、平面上の点 (x, y) を「二次元的」な数 x + yi と解釈する。このような「数」は「複素数」とも呼ばれる。数 x + yi を点と見たときの、横の座標値 x を「実部」、縦の座標値 y を「虚部」という。

偏角 45° の点 (1, 1) に相当する 1 + i から始まって、次々と偏角が 45° ずつ増えるのだから、「偏角 45° の何らかの数」が次々と掛け算されている†。原点からの距離の平方、つまり絶対値の平方が、次々と 2 倍されるのだから、この「何らかの数」の絶対値の平方は 2 に等しい‡。「絶対値の平方が 2 で、偏角が 45° の数」は 1 + i 自身。結局、
  点 (an, bn) ↔ 対応する数 an + bni
を考えると、
  (a1, b1) = (1, 1) ↔ 1 + i
  (a2, b2) = (0, 2) ↔ (1 + i)(1 + i) = 0 + 2i
  (a3, b3) = (−2, 2) ↔ (1 + i)(1 + i)(1 + i) = −2 + 2i
   ︙
となって、一般に
  (an, bn) ↔ (1 + i)n = an + bni
という関係。 an の正体は (1 + i)n の実部である!

† 複素数 x + yi の偏角とは、それに対応する点 (x, y) を原点 (0, 0) から見たときの方位。右の真横を 0° として、反時計回りに測る。 360° 回転しても向きは変わらないので、偏角については ±360° や ±720° などの違いを無視していい(例えば 270° と −90° は同じ方位)。偏角 A の数に、偏角 A の数を掛け算すると、積の偏角は 2A になる。その積に、偏角 A の数をもう一度掛けると、結果の数の偏角は 3A になる。以下同様。ここでは A = 45° のケースを考えている。

‡ 複素数 w = x + yi の絶対値とは、それに対応する点 (x, y) の、原点からの距離。‌絶対値 d の数と、絶対値 D の数を掛け算すると、結果の数の絶対値は dD になる。特に w の絶対値が d なら w2 = ww の絶対値は dd = d2 で、 w3 = w2w の絶対値は d2d = d3 (以下同様)。 w の絶対値の平方 d2 を c とすると、 w2 の絶対値の平方 (d2)2 はもちろん c2 に等しく、 w3 の絶対値の平方 (d3)2 は c3 に等しい。ここでは c = 2 のケースを考えている。

✿

第4話「解答」 漫画に出てきた問題を(より正確な形で)再掲する(諸般の事情により「問題3」と呼ぶ)。

問題3 n を正の整数とする。 a1 = b1 = 1, an+1 = an − bn, bn+1 = an + bn のとき、 aN = 2100 を満たす整数 N を全て求めよ。

次の解法では、三角関数も平方根も必要ない。

解(その1) 数列 an, bn の各項の値は、明らかに整数。整数 an, bn は
  (an + bni)(1 + i) = (an − bn) + (an + bn)i
を満たすから、問題の条件は
  (an + bni)(1 + i) = an+1 + bn+1i
を含意し、 n が 1 増えるごとに an + bni は 1 + i 倍される。しかも a1 + b1 i = 1 + i であるから、
  an + bni = (1 + i)n
と書くことができる。(続く)

これだけ見ると天下り的だが、前述の観察から an + bni が次々に 1 + i 倍されることは予想済み。その掛け算をそのまま書いただけ。途中計算を明示するなら:
  (an + bni)(1 + i) = an + ani + bni + bni2
   = an + ani + bni + bn(−1)
右辺の実部と虚部は、それぞれ an − bn と an + bn であり、案の定、問題文にある an+1 と bn+1 の定義と一致する。(予想に沿って多少ヤマ勘で式を立て、計算してみたら、うまくいった。)

解(その1)の続き 1 + i の偏角は 45° なので (1 + i)n の偏角は 45° の倍数(n 倍)に限られる。従って、 aN = 2100 を満たす N があるなら、その N に対応する aN + bNi は次のいずれかを満たす:
  ① 2100 + 0i = (1 + i)N  左辺の偏角 0°
  ② 2100 ± 2100i = (1 + i)N  左辺の偏角 ±45°
1 + i の絶対値の平方は 12 + 12 = 2 なので、①②の右辺 (1 + i)N の絶対値の平方は 2N だ。ところが、①左辺の絶対値の平方は:
  (2100)2 + 02 = 2200
だ。つまり、もし①が成り立つなら、そのとき N = 200。同様に、②左辺の絶対値の平方は、
  (2100)2 + (±2100)2 = 2200 + 2200 = 2200 × 2 = 2201
だ。つまり、もし②が成り立つなら、そのとき N = 201。①②に、それぞれ今述べた N の値を代入すると:
  ①′ 2100 + 0i = (1 + i)200
  ②′ 2100 ± 2100i = (1 + i)201

 これらの式が実際に成り立つか検討する。各式は、両辺の絶対値の平方が等しいので、両辺の偏角が(360° の倍数の違いを無視して)一致するかどうかで成否が決まる。 (1 + i)n の偏角が (45n)° であること、 n が 8 の倍数ならこの偏角は 0° であること(45° × 8 = 360°)に留意すると、 (1 + i)200 の偏角は 0° で、 (1 + i)201 の偏角は 45° だ。よって ①′ と ②′ は(複号で + を選べば)それぞれ両辺の偏角が一致。条件を満たす N は 200 と 201。∎

〔注〕 好みによっては「絶対値の平方」(ガウス整数のノルム)の代わりに「絶対値」そのものを使っても、構わない。絶対値の乗法性(従ってノルムの乗法性)については、自明と見なした。

この解法の長所は、平明なこと。一方、短所として、この方法では、特定の n について an の値を考えるたびに、対応する bn の値も考えなければならない。少々冗長。別解として、道具を制限せず an の値だけを考えてみたい。

✿

第5話「突然」 解(その1)や、それに至る観察から明らかなこととして、 (1 + i)n の絶対値と偏角が、この問題の重要な鍵となり得る。

1 + i の絶対値は √2 だ。 1 + i の偏角は 45° だ(実部と虚部がどちらも 1 なので、傾き 45° の方向)。簡潔化のため、以下ではラジアン表記を使って 180° を π と書く。すると 45° は π/4 であり、 1 + i の極座標表示は:
  1 + i = √2 × (cos (π/4) + i sin (π/4))  (✽)

事実、(✽)の右辺は、次のように、左辺に等しい:
  √2 × (√2/2 + i⋅√2/2) = 2/2 + i⋅2/2 = 1 + i

(✽)の両辺を n 乗すると:
  (1 + i)n = [√2 × (cos (π/4) + i sin (π/4))]n = (√2)n × (cos (π/4) + i sin (π/4))n
この数の実部が an であり、それを抜き出したいのだから、右辺に次の定理を適用すればいい。

ド・モアブル(de Moivre)の定理 任意の実数 θ と任意の整数 m に対して:
  (cos θ + i sin θ)m = cos mθ + i sin mθ

この定理が成り立つことを承認すると(証明については後述)、問題3の別解は、自然と次のような流れになる。

解(その2) an が (1 + i)n の実部であることは、解(その1)の冒頭の通り。今、
  1 + i = √2 × (cos (π/4) + i sin (π/4))
の両辺を n 乗してド・モアブルの定理を使うと:
  (1 + i)n = [√2 × (cos (π/4) + i sin (π/4))]n
   = (√2)n × (cos (π/4) + i sin (π/4))n = (√2)n × (cos (nπ/4) + i sin (nπ/4))
この数の実部が an であるから、
  an = (√2)n × cos (nπ/4)
が成り立つ。(続く)

ここまで来たら、あとは消化試合のようなもの。条件 aN = 2100 を満たすような N を決定すればいいわけだが、どう進めるにせよ最終結果は同じなので(N = 200, 201 という結論は既に分かっている)、本質的には退屈な一本道。

だが、しかしっ!!!

このとき、突然ニューロンが発火して、電撃のように「何か」がひらめいたっ!

この「問題3」とは直接関係ない事柄ではあるが、解(その2)の議論を応用することで、とあるオリンピック・レベルの難問が、鮮やかに解決するのである!!!!

従来の 4 分の 1 くらいの長さで、すっきりと。

圧倒的な簡単化!

例えるなら、他の走者が「1 時間を切れるか?」という熱い勝負をしているとき、こっちは 15 分でゴール。まるで漫画のようだが、プログラマーがちょっとした処理の工夫で高速化に成功したとき、よくある状況だ!

気になるその「オリンピック・レベルの問題」の一部を提示しよう――後述のように、この問題の意味は単純で、ほぼ誰にでも理解可能。でも、問題の意味が分かっても、答えが分かるとは限らない。

問題4 n を正の整数とする。二項係数 (n C k) を Ck と略す。次の U の値と V の値を n の式として表せ。
  U = C0 + C4 + C8 + ···
  V = C2 + C6 + C10 + ···

記号 (n C k) の意味は「n 個の物から k 個を選ぶときの、選択肢の個数」であるが、細かいことはどうでもいい。「選択肢がいくつあるか?」なので、必ず 0 以上の整数。その整数を Ck と略す。

今、仮に 1 + w という二項の和があるとして(w は何らかの数)、それを n 乗したものを展開すると、次の例のような形になる。
  n = 3 の場合 (1 + w)3 = C0⋅w0 + C1⋅w1 + C2⋅w2 + C3⋅w3
  n = 4 の場合 (1 + w)4 = C0⋅w0 + C1⋅w1 + C2⋅w2 + C3⋅w3 + C4⋅w4
より一般的に:
  (1 + w)n = C0⋅w0 + C1⋅w1 + C2⋅w2 + C3⋅w3 + ··· + Cn⋅wn

要するに Ck⋅wk の k が 0 から n まで 1 ずつ増え、それらを全部足すだけ。この右辺の形は、左辺 (1 + w)n の二項展開と呼ばれる。

そうなる理由については、説明を省く。とにかく、そうなる。

係数 C0, C1, C2, ··· は二項係数と呼ばれ、それらの具体的な値は、一般に n によって異なる(C0 だけは常に = 1)。例えば
  (1 + w)3 = 1⋅w0 + 3⋅w1 + 3⋅w2 + 1⋅w3
と書くことでき、 n = 3 のときの C0, C1, C2, C3 は、順に 1, 3, 3, 1。

さて、解(その2)では (1 + i)n の実部 an を問題にした。

もしこの (1 + i)n を二項展開するなら、 w = i に当たり、こうなる:
  (1 + i)n = C0⋅i0 + C1⋅i1 + C2⋅i2 + C3⋅i3 + C4⋅i4 + C5⋅i5 + C6⋅i6 + C7⋅i7 + ···

規約によって数の 0 乗は 1 に等しく i2 は −1 に等しい。従って
  i0, i2, i4, i6, i8, ···
は、順に +1, −1, +1, −1, +1, ··· に等しい[理由は i4 = (i2)2 = (−1)2 = +1 や i6 = (i2)3 = (−1)3 = −1 等々]。
  i1, i3, i5, i7, i9, ···
は、順に +i, −i, +i, −i, +i, ··· に等しい[理由は i3 = i2⋅i = (−1)⋅i = −i や i5 = i4⋅i = (+1)⋅i = +i 等々]。

以上のことから、
  (1 + i)n = C0⋅i0 + C1⋅i1 + C2⋅i2 + C3⋅i3 + C4⋅i4 + C5⋅i5 + C6⋅i6 + C7⋅i7 + ···
   = C0⋅1 + C1⋅i + C2⋅(−1) + C3⋅(−i) + C4⋅1 + C5⋅i + C6⋅(−1) + C7⋅(−i) + ···
   = (C0 − C2 + C4 − C6 + ··· ) + i(C1 − C3 + C5 − C7 + ··· )
と整理でき、 (1 + i)n の実部は、次の形式を持つ:
  C0 − C2 + C4 − C6 + C8 − C10 + ···

そのうち + の項の小計と − の項の小計をそれぞれ
  U = C0 + C4 + C8 + ···
  V = C2 + C6 + C10 + ···
とすると、この実部が U − V に当たることは明らかだろう。
  U + V = C0 + C2 + C4 + C6 + C8 + C10 + ···
であることも、明白。

同様に w = −1 と置けば w0 = w2 = w4 = ··· = +1 で w1 = w3 = w5 = ··· = −1 であるから、
  (1 − 1)n = C0 − C1 + C2 − C3 + C4 − C5 + ···
が成り立つ。一方 w = 1 と置けば w0 = w1 = w2 = ··· は全部 = +1 であるから、
  (1 + 1)n = C0 + C1 + C2 + C3 + C4 + C5 + ···
が成り立つ。

具体的な数値例による説明・図解を挿入する――

✿

第6話「三角」 (説明のナレーション)

画像: パスカルの三角形パスカル(Pascal)の三角形。それは――先頭に数字の 1 を書き、それを出発点として、次の段に「左上の数と右上の数の和」を書くという操作(空欄は 0 と見なす)を次々と続けたもの。

その各段の数値(例えば 1, 2, 1 とか 1, 3, 3, 1 とか 1, 4, 6, 4, 1)の一つ一つは「二項係数」の具体的数値を表している。

今、左端から始めて、各段の数を一つ置きに足してみる。例えば 1, 3, 3, 1 の段を考えると「一つ置きの足し算」の結果は
  1 + 3 = 4
であり、 1, 4, 6, 4, 1 の段を考えると、結果は
  1 + 6 + 1 = 8
だ。次の 1, 5, 10, 10, 5, 1 からは
  1 + 10 + 5 = 16
が生じ、そのまた次の 1, 6, 15, 20, 15, 6, 1 からは
  1 + 15 + 15 + 1 = 32
が生じる。最上段の 1 を無視して、次の段からこのような「一つ置きの足し算」を考えると、和は順に
  1, 2, 4, 8, 16, 32, ···
となる。パターンは明らかだろう。パスカルの三角形の各段を、上から順に第 0 行・第 1 行・第 2 行…と呼ぶと、第 n 行(n ≧ 1)におけるこの和は 2n−1 に等しい。事実、第 1 行からは、ただの 1 が生じ(= 20)、第 2 行からは 1 + 1 = 2 が生じる(= 21)。

画像: (a1, b1), (a2, b2), ··· の位置同様の「一つ置きに抜き出した計算」について、全部足す代わりに、交互に引いたり足したりすると(言い換えると、各項に順に + − + − ··· を付けると):
  第 1 行 ⇒ 1
  第 2 行 ⇒ 1 − 1 = 0
  第 3 行 ⇒ 1 − 3 = −2
  第 4 行 ⇒ 1 − 6 + 1 = −4
  第 5 行 ⇒ 1 − 10 + 5 = −4
  第 6 行 ⇒ 1 − 15 + 15 − 1 = 0
   ︙
この数値(1, 0, −2, −4, −4, 0, ···)のパターンはそれほど明らかではないけれど、これらは漫画に出てきた問題3の
  a1, a2, a3, ···
に他ならない。つまり、
  (1 + i)1, (1 + i)2, (1 + i)3, ···
のそれぞれの実部に等しい。パスカルの三角形の特定の行(第 1 行以降)の数を左端から順に C0, C1, C2, ··· とすると、この計算が
  C0 − C2 + C4 − C6 + C8 − C10 + ···
というわけである。

例えば n = 7 の場合の二項係数は、パスカルの三角形によると:

n = 7 に対する二項係数
C0 C1 C2 C3 C4 C5 C6 C7
1 7 21 35 35 21 7 1

この場合、
  U = C0 + C4 = 1 + 35 = 36
  V = C2 + C6 = 21 + 7 = 28
だ。このように「パスカルの三角形の第 n 行から、四つに一つの割合(の等間隔)で数を抜き出して、足し算した和」が U や V であり、それを n の式として表現せよ、というのが、問題4の意味。上述のように、「二つに一つの割合」で数を抜き出して足したときの和は 2n−1 であり、これは易しいが、「四つに一つの割合」ならどうなるか?

n = 7 の場合の C8 や C10 のような数(パスカルの三角形の各行の右端より、さらに右の空欄)は、全て 0 と見なす。

(説明終わり)

✿

第7話「証明」 ストーリーを再開しよう。結論から言うと、 U や V は、例えば次の形式で表現される(同じ内容の別表現もある)。解(その2)の検討中にひらめいたのは、この有名な定理の新しい証明法であった――その手順だと、導出が従来の約 5 倍(当社比)簡単になるっ!

定理4.1(Cournot, 1829年) (n C k) を Ck と略す。任意の整数 n ≧ 1 について、次が成り立つ:
  U = C0 + C4 + C8 + ··· = 2n−2 + (√2)n−2 cos (nπ/4)
  u = C1 + C5 + C9 + ··· = 2n−2 + (√2)n−2 sin (nπ/4)
  V = C2 + C6 + C10 + ··· = 2n−2 − (√2)n−2 cos (nπ/4)
  v = C3 + C7 + C11 + ··· = 2n−2 − (√2)n−2 sin (nπ/4)

U と V の意味については、既に説明した。小文字の u と v の意味も容易に類推可能だろう。

定理4.1の「簡単化された証明」 仮定 n ≧ 1 に留意すると†、次が成り立つ:
  2n = (1 + 1)n = C0 + C1 + C2 + C3 + ···
  0 = 0n = (1 − 1)n = C0 − C1 + C2 − C3 + ···
この二つの式の和(縦に足す)ないし差(上から下を引く)から:
  和 2n = 2C0 + 2C2 + 2C4 + ···
  差 2n = 2C1 + 2C3 + 2C5 + ···
それぞれ両辺を 2 で割って:
  2n−1 = C0 + C2 + C4 + ···
  2n−1 = C1 + C3 + C5 + ···
  ∴ U + V = u + v = 2n−1  ⓵
一方、
  (1 + i)n = C0i0 + C1i1 + C2i2 + C3i3 + C4i4 + C5i5 + C6i6 + C7i7 + ···
   = (C0 − C2 + C4 − C6 + ···) + i(C1 − C3 + C5 − C7 + ···)
の実部は U − V に等しく、虚部は u − v に等しい[前者が漫画の an で後者が bn だ]。

1 + i = √2 × (cos (π/4) + i sin (π/4)) の両辺を n 乗すると[解(その2)参照]:
  (1 + i)n = (√2)n × (cos (π/4) + i sin (π/4))n = (√2)n × (cos (nπ/4) + i sin (nπ/4))
その右辺の実部と虚部から:
  U − V = (√2)n × cos (nπ/4)  ⓶
  u − v = (√2)n × sin (nπ/4)  ⓷

⓵と⓶の和ないし差から:
  和 2U = 2n−1 + (√2)n × cos (nπ/4)
  差 2V = 2n−1 − (√2)n × cos (nπ/4)
⓵と⓷の和ないし差から:
  和 2u = 2n−1 + (√2)n × sin (nπ/4)
  差 2v = 2n−1 − (√2)n × sin (nπ/4)
これら四つの式それぞれの両辺を 2 で割って‡、定理の四つの式を得る。∎

† 0n を 0 と見なすために、仮定 n ≧ 1 が意味を持つ。 n = 0 のケースも含めて n ≧ 0 と仮定することも可能だが、その場合、 0n = 0 は必ずしも成り立たず、議論の途中で生じる式も、結論として生じる式も、上記のものより少し複雑になる。

‡ 2A を 2 で割ると、指数 A は 1 小さくなる。 (√2)B を 2 = (√2)2 で割ると、指数 B は 2 小さくなる。

この証明法のどこがそんなに良いのか?

✿

第8話「従来」 その疑問にお答えするため、同じ定理4.1について、従来の標準的証明の一部を記す。従来型の証明はトリッキーだが、それなりに面白く、このトリックは応用が利く(一般の場合につながる)。

U についての式の証明(従来型) n を 1 以上の整数とすると:
  C0 + C1 + C2 + C3 + C4 + C5 + C6 + C7 + C8 + ··· = (1 + 1)n = 2n
  C0 − C1 + C2 − C3 + C4 − C5 + C6 − C7 + C8 − ··· = (1 − 1)n = 0
  C0 + iC1 − C2 − iC3 + C4 + iC5 − C6 − iC7 + C8 + ··· = (1 + i)n
  C0 − iC1 − C2 + iC3 + C4 − iC5 − C6 + iC7 + C8 − ··· = (1 − i)n

このうち最初の三つの式の符号等のパターンについては、既に説明した。同様に考えると、第4式の二項展開 Ck の符号等は、
  (−i)k = (i3)k
であり、左から順に i0, i3, i6, i9, i12, ··· に当たる。

これら四つの式を縦に足すと、結果の和において、左辺の C0, C4, C8, ··· はそれぞれ 4 倍されるが、それら以外の項は全て打ち消し合う。

例えば、左から 2 番目の項を縦に足すと:
  C1 + (−C1) + iC1 + (−iC1) = C1 − C1 + iC1 − iC1 = 0

すなわち、四つの式の和から、次の恒等式を得る(n ≧ 1):
  4C0 + 4C4 + 4C8 + ··· = 2n + 0 + (1 + i)n + (1 − i)n  (✽)

(✽)の右辺第3項について、既に見たように、
  (1 + i)n = (√2)n × (cos (nπ/4) + i sin (nπ/4))
が成り立つ。よって(✽)の右辺第4項について、
  (1 − i)n = (√2)n × (cos (nπ/4) − i sin (nπ/4))
が成り立つ(なぜなら 1 + i と 1 − i は共役複素数、つまり虚部の符号だけが反対。 α と β が共役なら αn と βn も共役、つまり虚部の符号だけが反対)。
  ∴ (1 + i)n + (1 − i)n = (√2)n × (2 cos (nπ/4))  (✽✽)
(✽✽)を(✽)に代入して:
  4C0 + 4C4 + 4C8 + ··· = 2n + (√2)n × 2 cos (nπ/4)
両辺を 4 で割ると†:
  C0 + C4 + C8 + ··· = 2n−2 + (√2)n−2 × cos (nπ/4)
U についての式が証明された。∎

† 2A を 4 = 22 で割ると、指数 A は 2 小さくなる。一方 (√2)n × 2 を 4 で割るのは、 (√2)n を 2 で割るのと同じこと。

「簡単化された証明」より少し分かりにくいが、分量的・内容的には、ほぼ同じように見えるかもしれない。ところが、全然違うのである。上記の「従来型証明」は、これだけやって U, V, u, v のうち、一番簡単な U が求まっただけ。定理4.1全体から見ると、まだ 4 分の 1。 U, V, u, v がまとめて一気に求まる「簡単化された証明」が「光速の寄せ」であることが、お分かりいただけるだろう。

しかも従来型の証明は、出発点が分かりにくい。なぜ四つの式を足すのか、これら四つの式はどこから来たのか。その真意を見通すのが Ramus の恒等式だが、その導出はやや難しい。

V についての式の証明(省力バージョン) V を直接求めるより、証明済みの U + V = C0 + C2 + C4 + ··· = 2n−1 から上記で求めた U を引き算する方が、手っ取り早い。 2n−1 − 2n−2 = 2n−2 に留意すると:
  V = (U + V) − U = 2n−1 − [2n−2 + (√2)n−2 × cos (nπ/4)]
   = 2n−2 − (√2)n−2 × cos (nπ/4)

これなら 2 行ほどで済むが、先に U を求める必要があり、トータルでいえばあまり楽ではない。次の方法は長いけど、割と機械的。

V についての式の証明(従来型) U = C0 + C4 + C8 + ··· を求めるために、従来型の証明では、
  C0 + C1 + C2 + C3 + C4 + C5 + C6 + C7 + C8 + ··· = 2n
  C0 − C1 + C2 − C3 + C4 − C5 + C6 − C7 + C8 − ··· = 0
  C0 + iC1 − C2 − iC3 + C4 + iC5 − C6 − iC7 + C8 + ··· = (1 + i)n
  C0 − iC1 − C2 + iC3 + C4 − iC5 − C6 + iC7 + C8 − ··· = (1 − i)n
の四つの式を縦に足して 4C0 + 4C4 + 4C8 + ··· を得て、それを 4 で割った。同様の「縦の足し算」で 4V = 4C2 + 4C6 + 4C10 + ··· が得られるとしたら、上記第3式・第4式の C2 や C6 などの符号が − から + に変わる必要がある。

単純に考えると、第3式・第4式の両辺を −1 倍すれば両式の全部の項の符号が反転して、 C2, C6 などの符号は + になってくれる。

それを実行すると(第1式・第2式は上記のまま):
  C0 + C1 + C2 + C3 + C4 + C5 + C6 + C7 + C8 + ··· = 2n
  C0 − C1 + C2 − C3 + C4 − C5 + C6 − C7 + C8 − ··· = 0
  −C0 − iC1 + C2 + iC3 − C4 − iC5 + C6 + iC7 − C8 − ··· = −(1 + i)n
  −C0 + iC1 + C2 − iC3 − C4 + iC5 + C6 − iC7 − C8 + ··· = −(1 − i)n

新しい四つの式のセットを縦に足すと、結果の左辺は、望み通りの形になる:
  4C2 + 4C6 + 4C10 + ··· = 2n − (1 + i)n − (1 − i)n = 2n − [(1 + i)n + (1 − i)n]

(✽✽)を再利用して:
  4C2 + 4C6 + 4C10 + ··· = 2n − (√2)n × 2 cos (nπ/4)
  ∴ C2 + C6 + C10 + ··· = 2n−2 − (√2)n−2 cos (nπ/4)

V についての式が証明された。∎

同様に、四つの式の符号をうまく調整することによって、 u = C1 + C5 + C9 + ··· と v = C3 + C7 + C11 + ··· も求めることができる(それが従来の標準的なアプローチ)。その場合、もともとの四つの式の虚部を抜き出す必要があるので、 i 倍を単位とする調整が必要。 i は「1 の原始 4 乗根の主値」だが、一般の飛び石和(刻み幅 s)では、「1 の原始 s 乗根の主値」(仮に z とする)を使って (1 + zℓ)n の形の s 種類の二項展開を考え(ℓ = 0, 1, 2, ···, s − 1)、それら s 個の式を縦に足し算することになる。その際、抜き出したい項に応じて z 倍を単位とする調整を行う。これが Ramus の恒等式の急所。

「簡単化された証明」は、そのうち刻み幅 4 限定のショートカット。

✿

第9話「結末」 飛び石和の話題に脱線してしまい、解(その2)が「続く」のまま、中ぶらりんになっている。完結させておく。

解(その2)の続き 従って、整数 N が満たすべき条件は:
  aN = (√2)N × cos (Nπ/4) = 2100 = (√2)200  (✽)
  ∴ cos (Nπ/4) = (√2)200 ÷ (√2)N = (√2)200−N
正の数 √2 の整数乗は正なので、この cos は正。 θ が π/4 の倍数のとき、 cos θ が取り得る正の値は 1 または √2/2 = (√2)−1 に限られる。よって、条件を満たす N が存在するなら、それは次の性質を持つ必要がある:
  1 = (√2)200−N または (√2)−1 = (√2)200−N
  ∴ N = 200 または N = 201
直接計算によると、これら二つの N は実際に(✽)を満たす:
  N = 200 ⇒ aN = (√2)200 × 1 = (√2)200
  N = 201 ⇒ aN = (√2)201 × (√2)−1 = (√2)200
この計算では、 2π = 8π/4 を単位とする三角関数の周期性を根拠に、
  cos (200π/4) = cos (0π/4) = 1
  cos (201π/4) = cos (1π/4) = √2/2 = (√2)−1
が成り立つことを使った(分子の π の係数を 8 で割った余りに置き換えた)。∎

高校の授業という漫画の文脈に合わせ、説明的に書いた。 an だけを抜き出したことで、解(その1)の続きと比べ、多少すっきり。

さて、ここまで来てしまったからには、次の「むちゃ」をやらかすのが、予定調和の結末だろう。すなわち、解(その2)で抽出している an は U − V であり、それを使って定理4.1の U, V を求める道があるのだから、逆に定理4.1の U, V を出発点として U − V = an を導くこともできる。従って、この漫画の問題について、次のようなさらなる別解が考えられる。

問題3の解(その3) 明らかに an は (1 + i)n の実部なので:
  an = (n C 0) − (n C 2) + (n C 4) − (n C 6) + ···
Cournot–Ramus の公式から(n ≧ 1):
  (n C 0) + (n C 4) + (n C 8) + ··· = 2n−2 + (√2)n−2 × cos (nπ/4)
  (n C 2) + (n C 6) + (n C 10) + ··· = 2n−2 − (√2)n−2 × cos (nπ/4)
二つの式の差から:
  an = (√2)n × cos (nπ/4)
ゆえに条件 aN = 2100 を満たす N は 200 と 201。∎

この別解は、ある意味、最も自然ではあるけど、少々ばかげている。比較的シンプルな
  (1 + i)n
を三角関数表示する目的で、定理4.1――それは
  (1 + i)n + (1 − i)n
の三角関数表示に依存する――を使うのは、いかがなものか?

「遊びの数論」としては、それもまた一興。実は「解(その1)」の後で、先にこの「ばかな別解」を考えた。定理4.1の「簡単化された証明」は、それに由来する。「ばかな別解」も使いようである!

✿

付録. 「解(その2)」以降は、 de Moivre の定理
  (cos θ + i sin θ)m = cos mθ + i sin mθ  (✽)
に依存している(θ: 実数、 m: 整数)。

cos θ + i sin θ の形の数は、原点を中心とする半径 1 の円周上にある。すなわち、この定理は「偏角 θ で絶対値 1 の数を m 乗すれば、絶対値は 1m = 1 のままで偏角 θ が m 倍される」という当たり前のことを述べている。 Euler の公式 eix = cos x + i sin x からも、容易に派生する:
  (cos θ + i sin θ)m = (eiθ)m = eiθm = ei(mθ) = cos (mθ) + i sin (mθ)

二つ目の等号は、一見、易しい指数法則 (xA)B = xAB のようだが、複素数が絡む場合、一般にはこの法則は不成立。しかし外側の指数 B が整数の場合には、この法則が普通に成り立つ。

直接的な証明は次の通り。 m = 0 のとき(✽)の左辺は 1 で、右辺は cos 0 + i sin 0 = 1 + i⋅0 = 1 なので、確かに定理は正しい。この m = 0 のケースの正しさを土台として、正の向き(あるいは負の向き)に帰納法を使うことができる。

(✽)が m 乗について成り立つと仮定し、 m + 1 乗についても成り立つことを示す。
  (cos θ + i sin θ)m+1 = (cos θ + i sin θ)m × (cos θ + i sin θ)
帰納法の仮定から、 m 乗について(✽)が成り立つので:
   = (cos mθ + i sin mθ) × (cos θ + i sin θ)
展開すると:
   = (cos mθ)(cos θ) + (cos mθ)(i sin θ) + (i sin mθ)(cos θ) + (i sin mθ)(i sin θ)
i2 = −1 に留意しつつ、実部と虚部に整理(見やすいように角度が mθ のやつを前に書くことにする):
   = [cos (mθ) cos θ − sin (mθ) sin θ] + i⋅[sin (mθ) cos θ + cos (mθ) sin θ]
mθ を α と思い θ を β と思うと、加法定理からこうなる:
   = [cos (mθ + θ)] + i⋅[sin (mθ + θ)]
   = [cos (m + 1)θ] + i⋅[sin (m + 1)θ]
等号の左端と右端は等しいので、結局
  (cos θ + i sin θ)m+1 = cos (m + 1)θ + i⋅sin (m + 1)θ
となって、つまり、定理は m + 1 乗についても成り立つ。

〔参考〕 上記の証明(n が正の場合)の教科書的記述。

解(その2)への応用上は、これで十分だが(m が正の場合だけで足りる)、ついでに m が負の場合にも(✽)が成り立つことを示しておこう。 m > 0 と仮定して、
  (cos θ + i sin θ)−m = cos (−m)θ + i sin (−m)θ
を証明すれば同じこと。つまり、
  [(cos θ + i sin θ)m]−1 = cos mθ − i sin mθ
を証明すればいい。ところが、絶対値 1 の数の逆数は、当然、絶対値 1 であり、偏角の符号だけがあべこべになるのだから、この場合「逆数」と「共役複素数」は同じ意味。上記最後の等式の右辺は cos mθ + i sin mθ の共役複素数なので、 cos mθ + i sin mθ の逆数でもある。よって、証明すべき上記の式は、次と同じ意味:
  [(cos θ + i sin θ)m]−1 = [cos mθ + i sin mθ]−1  (✽✽)

ここでは m > 0 と仮定しているので、(✽✽)は、既に証明済みの(✽)について、両辺の逆数を考えたものに当たる。等しい二つの数それぞれの逆数は、もちろん互いに等しいので、(✽✽)は確かに成り立つ。

共役うんぬんの議論を省いて、単に cos A + i sin A と cos A − i sin A が互いの逆数であることを確かめてもいい。「互いに逆数」とは「両者の積が 1」という意味。実際に掛けてみると、
  (cos A + i sin A)(cos A − i sin A) = cos2 A + sin2 A = 1
となって(残りの二つの項 ±i cos A sin A は打ち消し合う)、確かにそうなっている。

別案。(✽)が m 乗について正しいと仮定して m − 1 乗についても正しいことを示す――という「逆方向への帰納法」:
  (cos θ + i sin θ)m−1 = (cos θ + i sin θ)m × (cos θ + i sin θ)−1
今 cos θ + i sin θ の逆数が cos θ − i sin θ であるという事実に留意しつつ、帰納法の仮定を使うと、
   = (cos mθ + i sin mθ) × (cos θ − i sin θ)
となる。あとは最初と同様、展開して加法定理(のマイナス・バージョン)を使うだけ。

✿

付記. 「飛び石和」小史

Pascal の三角形の第 n 行から、一定間隔で(s 個ごとに一つ)数値を取り出して足し合わせた和。便宜上 s を刻み幅(step)と呼ぶことにする。

s = 1, 2 のケースは自明に近い。歴史上、 s = 3, 4 の公式を最初に得たのは Cournot で、1829年。それを継承して Ramus が、刻み幅が一般の場合を解決した。 Ramus の成果は Crelle に掲載され、 TAOCP もこの式の発見者として Ramus の名を明記している。しかしこの事実は、必ずしも周知の事柄とはなっていない。同じ式が何度も独立に再発見されているようだ。

1968年、 Riordan は、より一般的に「数列から一定間隔で項を抜き出した和」について論じ、これを multisection of series と呼んでいる。いわく「年代物の芳醇なワイン」(=古人の知恵)、「数列を複数のセクションに分けるために 1 の原始根を利用」――例えば「偶数番目の項」と「奇数番目の項」への分割を指す。

Riordan は、関連する話題において、 lacunary(隙間がある)という表現も使っている。この形容詞から、自然と lacunary (binomial) sum(飛び飛びの(二項係数の)和)のような用語が生じ得る。一方 Knuth たちは、これを wraparound binomial coefficients と呼んだ。「周期化された二項係数たち」「二項係数の周期的選択」――「s 個に 1 個の飛び飛びの選択」というコンセプトを現代化して、「mod s による類別」と捉えたのだろう。

1998年、 Howard & Witt は、 Lacunary Sums of Binomial Coefficients と題する論文を記し、 s = 3, 4, 5, 6 などについて、具体的・明示的に検討した。それはフィボナッチ数列の応用に関するジャーナルに掲載された。二項係数の lacunary sum という言い方は、この論文が起源だろう(lacunary という形容だけなら、上述のように既に Riordan も使っている)。若干の著者たち(例えば Dobson)は、これを継承して同じ用語を使う――直訳で「間隙和」(かんげき・わ)。飛び石和(とびいし・わ)は仮の意訳。「ガウス和」のように「ラームス和」(Ramus sum)と呼んでもよいと思われる。中国の研究者 Zhi-Hong Sun は「組合和」という表現を使っている。特別な名前がなくても、普通に「s 個ごとの二項係数の和」とか the sum of every s-th binomial coefficient とか表現できるけど、コンセプトを表すキーワードが決まっていない現状は、検索などの上で不便。この話題についての資料では、少なくとも Ramus の名を含めるべきだろう。

メモ本文では、上側インデックス n の二項係数 (n C k) = Ck の飛び石和(刻み幅 4)について、オフセット 0, 2 の場合をそれぞれ U, V と呼び、オフセット 1, 3 の場合をそれぞれ u, v と呼んだ(オフセット 0 とは C0 から足し始める、という意味。オフセット 2 とは C2 から足し始める、という意味。等々)。以下 n を明示して、これらを Un, Vn, un, vn と記す。1829年の Cournot の公式は次の形式であった。
  Un, Vn = (1/4)⋅2n ± (1/2)⋅(√2)n cos (1/4)⋅πn
  un, vn = (1/4)⋅2n ± (1/2)⋅(√2)n sin (1/4)⋅πn

1834年、 Ramus はこれを一般化したが、 s = 2, 3, 4 のケースについて Cournot の結果をそのまま引用している。

この初期バージョンは、定理4.1の式
  Un, Vn = 2n−2 ± (√2)n−2 cos (nπ/4)
  un, vn = 2n−2 ± (√2)n−2 sin (nπ/4)
と実質同じ†。 n を n + 2 に置き換えるなら:
  Un+2, Vn+2 = 2n ∓ (√2)n sin (nπ/4)  ⓸
  un+2, vn+2 = 2n ± (√2)n cos (nπ/4)  ⓹
この変換では、次の関係を使った‡:
  cos ((n + 2)π/4) = −sin (nπ/4)
  sin ((n + 2)π/4) = cos (nπ/4)

† Cournot/Ramus のもともとの式では、オフセット 0 の和が 1 小さい(「100円玉つかみ取り」参照)。ここでは現代の定義と一致するように、この −1 を省いた。

‡ α と β が 90° ずれているとき、 cos α と sin β は絶対値が等しい。座標を 90° 回転させて縦軸と横軸の役割を入れ替えると、 cos と sin の役割が入れ替わるから。符号を考えると、 cos の角度の方が「前方」なら符号が逆、「後方」なら符号が同じ。単に「n = 0, 1, ···, 7 について真なので任意の n について真」と論じてもいい。

1901年、 Netto は Cournot や Ramus の名を明記して、 Ramus の恒等式の導出法を解説した(Lehrbuch der Combinatorik, §12)。

1954年、 Яглом (Yaglom) 兄弟は、平明な三角関数表現
  Un, Vn = 2n−2 ± 2(n−2)/2 cos (n⋅45°)
を使い、 n を mod 8 で場合分けして、極めて具体的な表現(整数演算のみで完結)を与えた(un, vn についても同様)。

名著『初等的ではない難問の初等的解法』の問題56(英語版では問題58)の一部であり、そこでは刻み幅 2, 3, 4 の飛び石和が詳細に扱われている。本書は高校生・大学生・教師などのために重要な問題・面白い問題を集め、軽快な解法を説明したもの。なかんずくバーゼル問題の「神証明」を含む。2巻に分けて英訳され、下記URLで自由に参照できる(飛び石和は第1巻に)。
https://archive.org/details/yaglom-yaglom-challenging-mathematical-problems-with-elementary-solutions-vol.-1
https://archive.org/details/yaglom-yaglom-challenging-mathematical-problems-with-elementary-solution-vol.-2

1964年、 Кречмар (Krechmar) は、次の形式を使った(un, vn についても同様):
  Un, Vn = (1/2)(2n−1 ± 2n/2 cos (nπ/4))

1968年、 Riordan は前記「マルチ・セクション」の具体例として、オフセット t = 0, 1, 2, 3 の四つのケースを統一的に
  (1/4)[2n + (i4−t + i3n+t)(1 + i)n]
と表現した(n ≧ 1)。これによれば:
  Un, Vn = (1/4)[2n + (±1 + (∓i)n)(1 + i)n] 等々

Knuth たちの Concrete Mathematics には、「刻み幅 3」に関連する応用問題と「刻み幅 5」に関連する応用問題が収録されている。組み合わせ論についての Lovász の著書には「刻み幅 7」の計算問題が含まれている。 TAOCP では、任意の刻み幅(Ramus の恒等式)の扱いが、練習問題となっている。「刻み幅 3 または 4」を扱った文献は、かなり多いだろう。

2016年、 Dobson は Ramus の恒等式の行列表現を検討した。「飛び石和はさまざまな文献において、研究対象となってきた」と指摘、20種類もの資料を参照している。その参考文献リストは有用かもしれない。
https://arxiv.org/abs/1610.09361

OEIS の関連ページの URL。飛び石和は、いろいろな事柄と関連するため、ページのタイトルはばらばら。オフセット 0, 1, 2 には、続き番号 A038503, A038504, A038505 が与えられている。オフセット 3 は既に昔から別の文脈で収録されていたらしく、小さい番号の A000749 になっている。定理4.1などは n ≧ 1 を前提とする。第 0 項(n = 0)については、 OEIS 掲載の正確な値と一致しないことがある。

https://oeis.org/A146559 問題3(漫画)の an = Un − Vn
https://oeis.org/A009545 問題3(漫画)の bn = un − vn
https://oeis.org/A038503 定理4.1 の Un (刻み幅 4、オフセット 0)
https://oeis.org/A038504 定理4.1 の un (刻み幅 4、オフセット 1)
https://oeis.org/A038505 定理4.1 の Vn (刻み幅 4、オフセット 2)
https://oeis.org/A000749 定理4.1 の vn (刻み幅 4、オフセット 3)

A038505 のページに次の予想が記されている。われわれは今、この予想を容易に証明できる立場にある。

問題5(Dement 予想: 2005年) 2Vn+2 = un+2 + vn+2 + 2bn

解 刻み幅 2 の飛び石和の性質から un + vn = 2n−1 なので:
  un+2 + vn+2 = 2n+1  ア
bn = un − vn について、定理4.1の証明の⓷から:
  2bn = (√2)n+2 sin (nπ/4)  イ
⓸から:
  2Vn+2 = 2n+1 + (√2)n+2 sin (nπ/4)  ウ
予想の内容「ウ = ア + イ」は明白。 n = 0 の場合を検討する。 (1 + i)0 = 1 の虚部から b0 = 0 なので、 n = 0 のとき、この予想の意味は 2V2 = u2 + v2 だ。それは「二項係数 1, 2, 1 の右端の 2 倍が真ん中に等しい」という主張であり、真。∎

✿

刻み幅 3 のケースと一般のケースについて、既に三つのメモを記したが(そちらの文献欄も参照)、もう少し考えてみたい。

✿ ✿ ✿


2026-10-20 100円玉つかみ取り・確率でびっくり 直観はあなたを 2 度裏切る

コインが入った袋に手を突っ込んで、コインをつかめるだけつかみ(あるいは無作為につかんで)取り出したとき、ゲットしたコインの枚数は偶数でしょうか、奇数でしょうか?

(あるいは、米びつから、お米をひとつかみ取り出したとき、その米粒の数は偶数でしょうか、奇数でしょうか?)

自然な第一印象は――「無作為につかむという前提なら、結果はランダム。偶数か奇数かは確率 1/2 ずつ」。

もう少し考えると「でも、もしかして、袋の中のコインの合計枚数が奇数なら、取り出したとき奇数になりやすいかな…?」

話を単純化して、袋の中のコインが 3 枚だけだとすると、そこから取り出せるのは「1 枚」「2 枚」「3 枚」のどれか。純粋にランダムに取り出すなら、「1 枚」「2 枚」「3 枚」のどれも起こり得るから、奇数(1枚 or 3枚)の可能性が 2/3 で、偶数(2枚)の可能性が 1/3 かも?

そして思うのです。袋の中のコインが 4 枚なら、取り出せるのは「1 枚」「2 枚」「3 枚」「4 枚」のどれか。その場合、「奇数枚」の選択肢と「偶数枚」の選択肢は同数だから、確率は 1/2 ずつ。同様に考えて、一般に「袋の中の合計枚数が偶数なら、確率半々。合計枚数が奇数なら、ちょっとだけ奇数になりやすい」と。

果たして、この考えは、正しいでしょうか?!

✿

袋の中に合計 3 枚の100円玉が入っているとして、それらをア・イ・ウとすると、ランダムに取り出した結果が…
  「1枚」だったらそのコインは ア、イ、ウの 3 パターンのどれか
  「2枚」だったらそのコインは アイ、アウ、イウの 3 パターンのどれか
  「3枚」だったらそのコインは アイウの 1 パターン
この考え方によると、奇数枚をゲットする確率は 4/7 で偶数枚をゲットする確率は 3/7 のようです!

最初の単純計算とは結果が違うけど、やっぱり奇数になりやすい?!

「硬貨に区別があること」をイメージしにくければ「アは未使用新品のピカピカ硬貨、イは普通の硬貨、ウは少し古い硬貨、エはとても古い硬貨」と思ってください(硬貨に記されている発行年が異なる)。例えば、アイをゲットすることと、アウをゲットすることは、別の選択肢。

袋の中に合計 4 枚の100円玉が入っているとして、それらをア・イ・ウ・エとすると、ランダムに取り出した結果が…
  「1枚」だったらそのコインは ア、イ、ウ、エの 4 パターンのどれか
  「2枚」だったらそのコインは アイ、アウ、アエ、イウ、イエ、ウエの 6 パターンのどれか
  「3枚」だったらそのコインは アイウ、アイエ、アウエ、イウエの 4 パターンのどれか
  「4枚」だったらそのコインは アイウエの 1 パターン
合計 15 パターンのどれかが起き、奇数枚をゲットする確率は 8/15 で偶数枚をゲットする確率は 7/15 です!

この考え方によると、袋の中の合計枚数が奇数でも偶数でも、取り出したコインの枚数は奇数になりやすい!!??

(ヒント: その考えには、まだ見落としがあるかも?)

この問題を最初にきちんと検討し、一般の場合を考えたのは、1829年、フランスのクールノ(Cournot)でした。クールノの論文を引用・要約すると…

一定数の品物から無作為に幾つかを取り出したとき、それが「偶数個あるいは奇数個になる確率」の問題は、メラン(Mairan†)によって提起された。その観点は、必ずしも満足できるものではない――取り出された個数を考えるだけではなく、取り出しの状況・方法も考慮するべきだ。例えば、袋から麦粒を取り出す場合、取り出された麦粒は(個数が同じでも)同じ組み合わせとは限らない。

続けていわく…

確率の問題はさておき、組み合わせの部分を検討すると、 Mairan の考えた問題は、より一般的な問題のうち最も簡単な例に過ぎない。すなわちそれは、「n 個の物から幾つかの物を取り出すとき、取り出された個数 y が偶数になるパターンの数と奇数になるパターンの数はどうなるか」という問題である。われわれはこの問題を発展させ y が「3 の倍数」になるパターンの数、「3 の倍数 + 1」になるパターンの数、「3 の倍数 + 2」になるパターンの数をそれぞれ考える。さらに y が「4 の倍数」「4 の倍数 + 1」「4 の倍数 + 2」「4 の倍数 + 3」になるパターンの数をそれぞれ考える。

例えば「コインつかみ取り」の結果の枚数が偶数か奇数か(枚数が 2 で割り切れるか)だけでなく、「4 の倍数」か「4 の倍数より 1 大きいか」等々についても考えましょう――と。

† Jean-Jacques Dortous (D'Ortous) de Mairan, 1743–1777。この遊びは「偶数・奇数ゲーム」(le jeu de pair ou non)と呼ばれていたという。

前回「漫画の数学・まれに見る良問」の中で紹介した「飛び石和」の研究は、歴史的には、そんな半分遊びのような感じで始まったのでした。5年後の1834年、デンマークのラームス(Ramus)によって、より一般的に y が「s の倍数 + t」になるパターンの数の一般公式が確定されました(文献 [3][4])。

さて、例えば n = 4 のときの二項係数…

C0 C1 C2 C3 C4
1 4 6 4 1
◎ ★ ◎ ★ ◎

これに関連して、刻み幅 2 の飛び石和(一つ置きの和)は:
  ◎ C0 + C2 + C4 = 1 + 6 + 1 = 8
  ★ C1 + C3 = 4 + 4 = 8

★ の和 8 は、「4 枚のコインが入った袋からランダムにコインを取り出すとき、結果が奇数枚になるような選択肢の数」(前述)とぴったり一致します。一方 ◎ の和 8 は、「結果が偶数枚になるような選択肢の数」より、ちょうど 1 大きいようです。C0 から足し始める飛び石和と比べて、対応する「コインつかみ取り」のパターン数 7 が 1 小さいのは、なぜでしょうか。――実は、この研究のパイオニアである Cournot と Ramus の公式を使った場合も、結果は「コインつかみ取り」のパターン数 7 と一致し、飛び石和 8 より 1 小さいのです。

理由は「定義の違い」とも「理論的な見落とし」とも言えるのですが…

厳密に言うと、「コインつかみ取り」では「ゲットしたコインが 0 枚」ということも起こり得ます。例えば、小さい子がつかみ取りに挑戦したとき、うまくつかめずコインを取り出せないかも…。お金に執着のないロボットが真に無作為(ランダム)につかみ取りを行うとすると、「0 枚ゲット」も全くランダムに(他の選択肢と同様に確からしく)発生する、と考える必要があるかも。そう考え直した場合:

袋の中に合計 4 枚のコイン(ア・イ・ウ・エ)があるとき、真にランダムに取り出した結果は…
  「0枚」だったらそのコインは 「空集合」(収穫なし)の 1 パターン
  「1枚」だったらそのコインは ア、イ、ウ、エの 4 パターンのどれか
  「2枚」だったらそのコインは アイ、アウ、アエ、イウ、イエ、ウエの 6 パターンのどれか
  「3枚」だったらそのコインは アイウ、アイエ、アウエ、イウエの 4 パターンのどれか
  「4枚」だったらそのコインは アイウエの 1 パターン
以上の合計 16 パターンのどれかが起きます。再計算すると、奇数枚をゲットする確率は 8/16 で、偶数枚をゲットする確率も 8/16 です。真に無作為であれば、偶数か奇数かは 1/2 ずつ!

結局、第一印象のままで合ってたのか?

「無作為」の意味について、哲学的な問題もありそうな…

いずれにせよ「0枚」~「4枚」それぞれのパターン数は順に 1, 4, 6, 4, 1 であり、これが n = 4 のときの二項係数。「二項係数の飛び石和」というと無味乾燥に思えるかもしれませんが、もしかしたら、こんな切り口から、ちょっぴり親しみが湧くかも…?

上記の研究者たちは C0 = 1 の可能性を計算に含めていません。ですが――おおらかな19世紀の人が、「穀物の粒をひとつかみ」みたいな例え話の問題において「0 粒つかみました」という可能性を除外したとしても、大きな問題ではないでしょう。違いは、公式の末尾に「− 1」という項が付くか付かないか、という、ささいなことで、議論の本質とは無関係。「飛び石和」小史の中に「Cournot/Ramus のもともとの式では、オフセット 0 の和が 1 小さい。ここでは現代の定義と一致するように、この −1 を省いた」という注釈があるのは、この件。

✿

「漫画の数学・まれに見る良問」では、漫画に出てきた「リアルな高校数学の問題」をネタにしつつ、その真のテーマは「刻み幅 4 の飛び石和」。従来の証明法を簡単化するとともに、従来の論法も紹介してますが、機会があれば「一般の場合の Ramus の恒等式」の導出も簡単化してみたい。

✿ ✿ ✿


<メールアドレス>