[logo] Web連載「数学ガールの秘密ノート」
Share

第474回 シーズン48 エピソード4
フェルマーの小定理(後編)

$ \newcommand{\REMTEXT}[1]{\textbf{#1}} \newcommand{\LEQ}{\leqq} \newcommand{\NEQ}{\neq} \newcommand{\COMMA}{,\,} \newcommand{\VDOTSX}{\,\,\,\vdots} \newcommand{\NOTOKI}{\quad\text{のとき}\quad}% \newcommand{\NARABA}{\quad\text{ならば}\quad}% \newcommand{\KATSU}{\quad\text{かつ}\quad}% \newcommand{\LONGIMPLIES}{\quad\Longrightarrow\quad} \newcommand{\LONGREVIMPLIES}{\quad\Longleftarrow\quad} \newcommand{\notLONGREVIMPLIES}{\quad\not\Longleftarrow\quad} \newcommand{\LONGBOTHIMPLIES}{\quad\Longleftrightarrow\quad} \newcommand{\REDTEXT}[1]{\textcolor{red}{\text{#1}}} \newcommand{\BULLET}{\blacktriangleright\,\,} \newcommand{\ABS}[1]{\left|#1\right|} \newcommand{\GCD}[2]{\gcd(#1,#2)} \newcommand{\AMARI}{\,\text{余り}\,} \newcommand{\REDTEXT}[1]{\textcolor{red}{\text{#1}}} \definecolor{CUD-GREEN}{rgb}{0.012,0.686,0.478}% 3,175,122 \newcommand{\MARK}[1]{\textcolor{red}{#1}} \newcommand{\MARKB}[1]{\textcolor{blue}{#1}} \newcommand{\MARKC}[1]{\textcolor{CUD-GREEN}{#1}} \newcommand{\PEM}[3]{{#1}^{#2}\equiv{\MARK{#3}}} \newcommand{\SET}[1]{\{#1\}} \newcommand{\SETM}{\,|\,} \newcommand{\BAR}[1]{\overline{#1}} \newcommand{\NSET}[1]{\SET{\BAR{{#1}^1}\COMMA\BAR{{#1}^2}\COMMA\ldots\COMMA\BAR{{#1}^d}}} \newcommand{\MSET}[1]{\SET{\BAR{\MARKB{#1}\,n^1}\COMMA \BAR{\MARKB{#1}\,n^2}\COMMA \ldots\COMMA \BAR{\MARKB{#1}\,n^{d}}}} $

登場人物紹介

:数学が好きな高校生。

テトラちゃんの後輩。 好奇心旺盛で根気強い《元気少女》。言葉が大好き。

フェルマーの小定理

ここはの高校。いまは放課後。

テトラちゃんフェルマーの小定理の証明に挑戦している(第473回参照)。

証明の終盤、いよいよ《ラスボス》と戦うところだ。

フェルマーの小定理

$p$ は素数で、 $n$ は $p$ と互いに素な整数とする。

このとき、

$$ \large n^{p-1}\equiv 1\pmod p $$

が成り立つ。

「うん、 $n^0,n^1,n^2,\ldots$ をそれぞれ $p$ で割った余りを観察すれば、 テトラちゃんが見つけたような予想ができる。 でもそれはあくまで予想だ。 でも、これを証明できれば、 《フェルマーの小定理》が証明できたことになる」

問題

次の命題を証明せよ。

命題

$p$ を素数とする。 $n$ を $p$ と互いに素な整数とする。

いま $d$ を、 $$ n^d \equiv 1 \pmod p $$ を満たす正整数のうち、最小のものとする。

このとき $d$ は $p - 1$ の約数である。

テトラ「あとはこれを証明すればいい?」

「そういうことだね。 すでに《鳩の巣論法》でこの $d$ が必ず存在することは示した(第473回参照)。 だから、 $d$ が $p-1$ の約数であることを示すのがラスボスだよ!」

テトラ「ラスボス!」

そう言うと、テトラちゃんは真剣な顔になり、ノートに向かって何かを書き始めた。 どうやら具体的な数で証明の糸口を探ろうとしているようだ。

この命題の主張自体はシンプルだし、具体的な数で確かめられる。


たとえば、 $p = 7, n = 2$ として、 $n^1,n^2,n^3,n^4,n^5,n^6$ をそれぞれ $7$ で割った余りを並べる。 《$n$ を掛けて $p$ で割った余りを得る》ことを $\to$ による《ジャンプ》と見ると、 $$ \overbrace{ \underbrace{2\to4\to\MARK1}_{d = 3} \to 2\to4\to\MARK1 }^{p-1=6} $$ となる。最初の $\MARK1$ に《着地》するまで $2,4,1$ の $3$ 個あるから $d = 3$ だ。 そして確かに $d = 3$ は $p - 1 = 6$ の約数になっている。


たとえば、 $p = 7, n = 6$ として、同じことをすると、 $$ \overbrace{ \underbrace{6\to\MARK1}_{d = 2} \to 6\to\MARK1 \to 6\to\MARK1 }^{p-1=6} $$ でやはり $d = 2$ は $p - 1 = 6$ の約数になっている。


パターンはわかる。でも $d$ が必ず $p-1$ の約数になる証明はどうだろう。

「……」

テトラ「具体的なパターンははっきりわかります。 $p = 7$ で $n = 2$ のとき、 $$ 2\to4\to\MARK1 $$ のように $\MARK1$ に着地したら、 あとはまた $n = 2$ から始まりますので、 $2\to4\to\MARK1$ がループとなって繰り返されることはわかります」

$p = 7, n = 2$ のとき、 $2\to4\to\MARK1$ がループする

「そうだね」

テトラ「$d$ というのはこのループの長さということですよね。 $d=3$ が $p-1=6$ の約数になるのはすぐわかりますけれど、 一般的に証明するのは難しいです。 もどかしい……」

「$2,4,\MARK1$ 以外はどうだろう? つまりループ外にある数」

テトラ「$2,4,\MARK1$ 以外?」

「$p = 7$ で考えているから、 $1$ から $p-1$ までの整数は $$ 1,2,3,4,5,6 $$ という $6$ 個になる。 そのうち、ループの $2,4,\MARK1$ に入ってないループ外の数は $3,5,6$ の $3$ 個ある」

ループ内の $2,4,\MARK1$ と、ループ外の $3,5,6$($p=7, n=2$ の場合)

テトラ「そうですね。でもそれはループ外ですから、あまり $d$ とは関係ないような……」

「そんなことはないよ。 だって、もしもループの長さ $d$ が $p-1$ の約数になるというなら、 ループの長さ $d$ は、 $(p-1)-d$ の約数でもある。つまり、 $d$ は、 ループ外に取り残された数の個数 の約数になるはずだよね」

テトラ「えっえっ?」

「たとえば、 $p=7, n=2$ なら、 全体の $p-1=6$ 個から ループ内にある $2,4,\MARK1$ の $d=3$ 個を引くと、 残りは $3,5,6$ の $3$ 個で、 $d=3$ はその約数になっている」

テトラ「それはそうですね」

「それからたとえば、 $p = 7, n = 6$ なら、ループ内に $6,\MARK1$ の $d=2$ 個があって、 ループ外には $2,3,4,5$ の $4$ 個がある。そして $d=2$ は $4$ の約数になっている」

ループ内の $6,\MARK1$ と、ループ外の $2,3,4,5$($p=7,n=6$ の場合)

テトラ「あっあっあっ! 待って待って待って! あたし、わかったかも! 別のループができそう!」

「おっ?」

テトラ「あたしたちが作った $$ 6\to\MARK1\qquad(\cdots\to6\to\MARK1\to\cdots) $$ とは別のループとして、 $$ 2\to5\qquad(\cdots\to2\to5\to\cdots) $$ というループができます! それから、 $$ 3\to4\qquad(\cdots\to3\to4\to\cdots) $$ というループも! ぜんぶ、《$6$ を掛けて $7$ で割った余り》で《ジャンプ》するループです!」

ループ $6,\MARK1$ と、ループ $2,5$ と、ループ $3,4$($p=7,n=6$ の場合)

「なるほど、なるほど。 《$6$ を掛けて $7$ で割った余り》を使って 新たなループを作り出したんだね。出発点を $2$ にしたらループ $2,5$ ができて、 出発点を $3$ にしたらループ $3,4$ ができる。つまり、テトラちゃんのいう《ジャンプ》は、 《$p=7$ を法とする世界》での《$n=6$ 倍》なんだ!」

テトラ「そうですね」

「うん、これで一般化した証明ができるよ。 $n^1,n^2,\ldots,n^d$ というループに対して……」

テトラ「あっ、すっ、すみません。 $p=7,n=2$ で具体例を確かめたいです。本当に別のループができるかどうか」

「そうだね、さすがテトラちゃんだ」

テトラ「すぐにできます。 まず最初のループは、 $2\to4\to\MARK1$ でした。 これは $2$ から始めて《$p=7$ を法とする世界》での《$n=2$ 倍》です。 $$ 1,2,3,4,5,6 $$ の中からループ $2,4,\MARK1$ 以外の数として $3$ を選びます。 $3$ から始めて《$p=7$ を法とする世界》での《$n=2$ 倍》を繰り返すと、 $$ 3\to6\to5 $$ になりますね。 $5$ は $6\times 2=12$ を $7$ で割った余りです。 そして $5\times2 = 10$ を $7$ で割った余りは $3$ でループになります!」

ループ $2,4,\MARK1$ と、ループ $6,5,3$($p=7,n=2$ の場合)

「いいね! じゃあ、一般化した証明を作ろう。 $$ n^1,n^2,\ldots,n^d $$ というループに対して、ループ外の数 $m$ を一つ選んで、 $$ mn^1,mn^2,\ldots,mn^d $$ という数列を作る。すると……」

問題(再掲)

次の命題を証明せよ。

命題

$p$ を素数とする。 $n$ を $p$ と互いに素な整数とする。

いま $d$ を、 $$ n^d \equiv 1 \pmod p $$ を満たす正整数のうち、最小のものとする。

このとき $d$ は $p - 1$ の約数である。

テトラ「ちょっとお待ちください。 ループとなるのは、 $$ n^1\COMMA n^2\COMMA \ldots\COMMA n^d $$ ではないですよね。単なる冪乗ではなく、 $p$ で割った余りを考える必要があります」

「あっと、確かにそうだなあ……一般的に書くときに面倒だから、 余りを表す表記の約束を決めよう」

テトラ「表記の約束?」

整数 $a$ を $p$ で割った余り $\BAR{a}$

「うん、これから 整数 $a$ を $p$ で割った余りを $$ \BAR{a} $$ と表記することにしよう」

表記の約束

$p$ を法としたときの整数 $a$ の剰余を、 $\BAR{a}$ と表記する。

このとき、 $$ a\equiv\BAR{a} \pmod p $$ であり、 $$ \BAR{a}\in\SET{0,1,2,\ldots,p-1} $$ である。

テトラ「なるほど。 具体例で確かめます。 $p = 7$ で $n = 2$ のときのループは $2,4,\MARK1$ ですが、それを $$ \BAR{2^1}\COMMA\BAR{2^2}\COMMA\BAR{2^3} = \MARK1 $$ と書けるということですね。 $2^3 = 8$ ですけれど、 $8$ を $7$ で割った余りは $1$ なので $\BAR{8} = 1$ になる」

「そういうこと。 $\overline{\text{この表記}}$を使うと、 $n$ から始まって $\MARK1$ に着地するループは、 $$ \BAR{n^1}\COMMA\BAR{n^2}\COMMA\ldots\COMMA\BAR{n^d} = \MARK1 $$ と書ける。 これで一般化する証明が書きやすくなる」

テトラ「そうですね。 $a\equiv b\pmod p$ が $\BAR{a}=\BAR{b}$ と書けます」

「もしも、たまたま・・・・ このループが $1,2,\ldots,p-1$ のすべてを巡ってくれたなら、うれしい。 その場合は $d = p-1$ になって、 $d$ は $p-1$ の約数になっているから」

テトラちゃんがそこで手を広げてに向けた。ストップの合図だ。

すべてを巡るループ

テトラ「ちょっとお待ちください。 あたしの理解を確認させてください。 すべてを巡るというのは、 たとえば、 $p = 7, n = 3$ のときのような場合ですね? ループは、 $$ \BAR{3^1}\COMMA \BAR{3^2}\COMMA \BAR{3^3}\COMMA \BAR{3^4}\COMMA \BAR{3^5}\COMMA \BAR{3^6}=\MARK1 $$ で、具体的には $$ 3\COMMA 2\COMMA 6\COMMA 4\COMMA 5\COMMA \MARK1 $$ です。いまおっしゃったのはこのような場合のことですよね?」

すべてを巡るループ $3,2,6,4,5,\MARK1$($p=7,n=3$ の場合)

「そういうこと。 $d = p-1$ の場合は $d$ は $p-1$ の約数になるから、 もう考えなくていい」

テトラ「はいはい、わかります。 ラスボスの一部を撃破しました!」

別のループを作る

「$d = p-1$ の場合は済んだから、 証明の残りでは $d < p-1$ の場合を考えることになる」

テトラ「はい。 ループ外の数からスタートして 別のループ を作るんです!」

無料で「試し読み」できるのはここまでです。 この続きをお読みになるには「読み放題プラン」へのご参加が必要です。

ひと月500円で「読み放題プラン」へご参加いただきますと、 470本以上の記事がすべて読み放題になりますので、 ぜひ、ご参加ください。


参加済みの方/すぐに参加したい方はこちら

結城浩のメンバーシップで参加 結城浩のpixivFANBOXで参加

(2026年7月17日)

[icon]

結城浩(ゆうき・ひろし) @hyuki


『数学ガール』作者。 結城メルマガWeb連載を毎週書いてます。 文章書きとプログラミングが好きなクリスチャン。2014年日本数学会出版賞受賞。

Twitter note 結城メルマガ Mastodon Bluesky Threads Home