第1章 STAGE 4
部分群とラグランジュの定理
群をきれいに等分割する
🎯 ミッション
剰余類が群を同じ個数ずつ重ならずに分けることを3段階で説明し、ラグランジュの定理(部分群の個数は群の個数を割り切る)から、フェルマーの小定理 ap−1 ≡ 1 (mod p) を導こう。
未達成

ねこ博士
前のステージの終わりで、要素の位数(くり返して初めて単位元になる回数)が、いつも群の個数の約数になっていた。今日はその理由を証明する。これが分かると、mod p(p で割った余りで考える世界)の累乗について、フェルマーの小定理という強い道具が手に入る。次のステージの暗号の心臓部になる定理だ。まず、群の中の小さな群を考えよう。正三角形の6つの操作のうち、回転だけを集めた e, r, r² を調べてごらん。

うさ美
回転どうしの積はまた回転で、rr²=e、r²r²=r のように、e, r, r² の中に収まっています。単位元 e も入っていて、r の逆元 r² も、r² の逆元 r も入っています。結合法則は、もとの6つの操作で成り立っているので、この3つでも成り立ちます。3つだけで、群の4つの条件がそろっています。

ねこ博士
そう。群 G の一部分で、同じ計算でそれだけで群になっているものを、G の部分群という。e, r, r² は正三角形の群の部分群だ。部分群を調べるのは、大きな群を、小さな群の組み合わせとして理解するためだよ。整数を素因数に分けて調べるのに似ているね。では、e と s₁ の2つは部分群かな? e と r の2つはどうかな?

うさ美
s₁s₁=e なので、e と s₁ の2つは閉じていて、s₁ の逆元は s₁ 自身です。部分群です。e と r の2つは、rr=r² が入っていないので閉じていません。部分群ではありません。

ねこ博士
そう。mod 12 の足し算の群でも探してみよう。0 から 11 を「足して 12 で割った余り」で計算する群だったね。集まりを { } でくくって書くことにしよう。H={0, 4, 8} は部分群かな?

うさ美
4+4=8、4+8=12 ≡ 0、8+8=16 ≡ 4 で、閉じています。単位元 0 が入っていて、4 の逆元は 8、8 の逆元は 4 です。部分群です。同じように調べると、{0, 6} や {0, 3, 6, 9} も部分群です。

ねこ博士
そう。では、H={0, 4, 8} の全部に 1 を足してみよう。2 を足したら? 3 を足したら?

うさ美
1 を足すと {1, 5, 9}、2 を足すと {2, 6, 10}、3 を足すと {3, 7, 11} です。4 を足すと {4, 8, 0} で、H に戻ります。0 から 11 の 12 個が、3 個ずつの 4 つの組に、重ならずにぴったり分かれました。
mod 12 の時計の等分割。部分群 H={0, 4, 8} と、それに 1, 2, 3 を足した組を色分けした。どの組も 3 個ずつで、時計の上では向きの違う正三角形になる。12 個が 4 組にぴったり分かれるので 12=4×3

ねこ博士
そう。部分群 H を「ずらしたコピー」で、群全体がきれいに等分割されたね。H の全部の要素の前に同じ g をつけた集まりを、H の剰余類(じょうよるい)という。積で書く群なら gH={gh(h は H の要素)}、つまり「g をしてから、H のどれかをする」操作の集まりだ。足し算の群なら g+H と書く。正三角形の群で、H={e, s₁} の剰余類を全部作ってごらん。

うさ美
eH={e, s₁}。rH={r, rs₁}={r, s₂}。r²H={r², r²s₁}={r², s₃}。s₁H={s₁, s₁s₁}={s₁, e} は H と同じ。s₂H={s₂, s₂s₁}={s₂, r} は rH と同じで、s₃H={s₃, s₃s₁}={s₃, r²} は r²H と同じです。6 個が、2 個ずつの 3 つの組に分かれます。
ラグランジュの等分割。群と部分群 H を選ぶと、剰余類(H をずらしたコピー)を1行ずつ色分けして並べる。どの行も H と同じ個数で、群の要素はちょうど1回ずつどこかの行に入る。だから「群の個数=剰余類の個数×H の個数」になる

ねこ博士
そう。どんな群でも、どんな部分群でも、こうなる。それを3つの段階で確かめよう。1つ目。剰余類 gH の要素の個数は、いつも H と同じかな?

うさ美
H の要素を h₁, h₂, … とすると、gH は gh₁, gh₂, … です。もし gh₁=gh₂ なら、両方の前に g⁻¹ をすると、結合法則で (g⁻¹g)h₁=(g⁻¹g)h₂、つまり h₁=h₂ です。だから、異なる h からは異なる gh ができて、gH の個数は H の個数と同じです。

ねこ博士
そう。2つ目。群のどの要素 g も、どこかの剰余類に入っているかな?

うさ美
H は部分群なので単位元 e を含みます。g=ge なので、g は gH に入っています。

ねこ博士
そう。3つ目がいちばん大事だ。2つの剰余類 gH と kH が1つでも共通の要素をもったら、2つはまったく同じ集まりになる。これを確かめよう。共通の要素を x とすると、x=gh=kh′ と書ける。h と h′ は H の要素だ。

うさ美
gh=kh′ の両辺のうしろに h⁻¹ をすると、g=kh′h⁻¹ です。h⁻¹ も h′ も H に入っていて、H は閉じているので、h′h⁻¹ も H の要素です。それを h″ と書くと g=kh″。すると、gH の要素 gh₁ は kh″h₁ と書けて、h″h₁ も H の要素なので、gh₁ は kH に入ります。gH は kH にふくまれます。g と k の役目を入れかえて同じことをすれば kH も gH にふくまれるので、gH=kH です。

ねこ博士
その通り。まとめると、剰余類はどれも H と同じ個数で、群の全部をおおい、1つでも重なるなら丸ごと一致する。だから群全体は、H と同じ個数の組に、重ならずにぴったり分かれる。
① どの剰余類 gH も、H と同じ個数(gh₁=gh₂ なら前に g⁻¹ をして h₁=h₂)
② どの要素 g も、自分の剰余類 gH に入る(g=ge)
③ 剰余類どうしは、重ならないか、丸ごと一致する(共通の要素があれば g=kh″ と書けて gH=kH)
よって群は、H と同じ個数の剰余類に、重ならずに分かれる:
(群の個数)=(剰余類の個数)×(H の個数)
(群の個数)=(剰余類の個数)×(H の個数)

うさ美
群の個数は、部分群の個数と剰余類の個数の積です。だから、部分群の個数は、群の個数を割り切ります。正三角形の群は 6 個なので、部分群の個数は 1, 2, 3, 6 のどれかで、4 個や 5 個の部分群はありません。

ねこ博士
そう。これをラグランジュの定理という。ラグランジュは1770年ごろ、方程式の解の入れ替えを研究するなかで、この定理のもとになる事実を見つけた。だから彼の名前で呼ばれている。では、前のステージの謎に戻ろう。群の個数が有限なら、a, a², a³, … と掛けていくと、いつか同じものが出てくる。ai=aj(i<j)となったら、両辺の前に a⁻¹ を i 回すれば aj−i=e。だから、くり返せばいつか必ず e になり、位数が決まる。a の位数が k なら、e, a, a², …, ak−1 の k 個は、どんな集まりになるかな?

うさ美
まず、この k 個は全部違います。もし ai=aj(0≦i<j<k)なら、さっきと同じように aj−i=e となって、k より少ない回数で e に戻ってしまうからです。それから、ak=e なので、aiaj=ai+j は、i+j が k 以上なら k を引いた回数と同じで、また e, a, …, ak−1 のどれかです。閉じています。e が入っていて、ai の逆元は ak−i です。だから k 個の部分群で、ラグランジュの定理から、位数 k は群の個数を割り切ります。

ねこ博士
そう。群の個数を m とすると、m は k で割り切れる。すると am はどうなるかな?

うさ美
m=kt と書けるので、am=(ak)t=et=e です。どの要素も、群の個数の回数だけ掛けると単位元になります。

ねこ博士
そう。これを、mod p の掛け算の群(p は素数)にあてはめてごらん。

うさ美
mod p の掛け算の群は 1 から p−1 の p−1 個なので、p で割り切れないどの整数 a についても ap−1 ≡ 1 (mod p) です。p=7 で確かめると、2⁶=64=7×9+1 で余り 1、3⁶=729=7×104+1 で余り 1。本当です。
mod p の掛け算の群:1 から p−1 の p−1 個
a の位数を k とすると、e, a, …, ak−1 は k 個の部分群 → ラグランジュの定理で、k は p−1 を割り切る:p−1=kt
ap−1=akt=(ak)t ≡ 1t=1 (mod p)(ak ≡ 1 を t 回掛ける)
フェルマーの小定理:p が素数で、a が p で割り切れないとき ap−1 ≡ 1 (mod p)

ねこ博士
それがフェルマーの小定理だ。1640年、フェルマーは友人への手紙にこの事実を書いた。証明は書かなかったけれど、群の考え方を使うと、いまのように数行で示せる。使い道を1つ見てみよう。3¹⁰⁰ を 7 で割った余りは?

うさ美
3⁶ ≡ 1 で、100=6×16+4 なので、3¹⁰⁰=(3⁶)¹⁶×3⁴ ≡ 1×81=81 です。81=7×11+4 なので、余りは 4 です。
累乗の表。a の k 乗を p で割った余りを並べた(行が a、列が k)。緑のマスが 1。右の「位数」の列は、その行で初めて 1 になる k。位数はどれも p−1 の約数で、いちばん右の列(k=p−1)はどの行も 1 になる。これがフェルマーの小定理

ねこ博士
そう。巨大な累乗の余りも、指数を p−1 で割った余りまで縮められる。次のステージでは、素数でない n についても同じことを考え、それを鍵にした暗号を作ろう。
【このステージの成果】
部分群:群の一部分で、同じ計算でそれだけで群になっているもの(例:{e, r, r²}、{e, s₁}、mod 12 の {0, 4, 8})
剰余類 gH:部分群 H をずらしたコピー。どれも H と同じ個数で、重ならないか丸ごと一致する → 群をぴったり等分割する
ラグランジュの定理:部分群の個数は群の個数を割り切る(正三角形の群に 4 個や 5 個の部分群はない)
要素 a の位数 k は群の個数を割り切る(e, a, …, ak−1 が部分群)→ 群の個数を m とすると am=e
フェルマーの小定理:ap−1 ≡ 1 (mod p)。例:3¹⁰⁰ ≡ 3⁴ ≡ 4 (mod 7)
確認クイズ
Q1. 12 個の要素からなる群に、部分群としてありえない個数は?
正解! ラグランジュの定理から、部分群の個数は群の個数 12 を割り切る。12 の約数は 1, 2, 3, 4, 6, 12 なので、5 個の部分群はない。
Q2. 剰余類 gH と kH に共通の要素が1つでもあると、どうなる?
正解! 共通の要素を gh=kh′ とすると、g=kh′h⁻¹ で、h′h⁻¹ は H の要素。だから gH の要素はすべて kH に入り、逆も同じなので gH=kH。
Q3. フェルマーの小定理を使うと、2²⁰ を 7 で割った余りは?
正解! 2⁶ ≡ 1 (mod 7)。20=6×3+2 なので 2²⁰=(2⁶)³×2² ≡ 1×4=4。