ガウス和の平方と相互法則(遊びの数論35)

[遊びの数論] 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35

1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20


きちんとまとまった記事ではなく、雑多なメモ。誤字脱字・間違いがあるかもしれません。


✿ ✿ ✿ ✿ ✿


2024-11-17 相互法則: ガウスの第六証明・アイゼンシュタイン版

#遊びの数論 #相互法則 #1 の原始根 #円分多項式 #ガウス和 #(35)

平方剰余の相互法則は、数論の最重要テーマの一つ。法則自体もネット社会の一つの基礎ツールだが(Jacobi 記号など)、何より、法則をいろいろな角度から検討する過程で、新たな境地が開けてきた。ガウスは六つの証明を公開したが、現代の初等整数論では、第三証明アイゼンシュタイン版やそのバリエーションが紹介される。第三証明は平易でアクセス性が高い半面、処理がトリッキーで天下り的。

ガウス和を経由する第六証明は、透明度が高い。このメモでは、「ガウスの第六証明のアイゼンシュタイン版」(アイゼンシュタインの第二証明)を紹介する。途中、代数的整数を使うと大幅なショートカットができる部分があるので、参考として、そのショートカットと、アイゼンシュタインのオリジナルを併記。

ガウスの第六証明には他にも複数のバージョンがあり、アイゼンシュタインのアレンジが最善とは限らない。たまたまゲッチンゲン大学のサーバーで1844年の原論文を見つけ、参考までにそれを検討してみた。第三証明の簡単化でもアイゼンシュタインのアイデアは「神」で、現代の教科書でもそのまま採用されてるくらいだしネ。別のメモでは、同じガウスの第六証明の現代版を記す。

† G. Eisenstein (1844). “La loi de réciprocité tirée des formules de Mr. Gauss sans avoir déterminé préalablement le signe du radical”. Journal für die reine und angewandte Mathematik [“Crelle”], Band 28. S. 41–43.
https://resolver.sub.uni-goettingen.de/purl?243919689_0028|log9

✿

p を 3 以上の素数とする。 z を 1 の原始 p 乗根(xp = 1 の非実数解)として、 q を整数とすると、
  ガウス和 Sp(q) = { from k=1 to p−1 } [(k/p) zqk]
は、次の関係を満たす:
  ア Sp(q) = (q/p) × Sp(1)
  イ [Sp(1)]2 = (−1/p) × p = p⋅(−1)(p−1)/2

別の文脈では与えられた p に対して特定の p 乗根を z とする必要があるが、ここでは(1 自身を別にすれば)どの p 乗根を z としても構わない。例えば p = 5 の場合、偏角 ±72°, ±144° の四つの原始5乗根のうち、どれを z としても差し支えない。

〔注〕 Eisenstein 自身は z の代わりに文字 r を使っている。変数名や表記はほぼ原文通りだが、他のメモとの統一や読みやすさを優先して少し変えてる部分もある。

以下 q を「p とは異なる 3 以上の素数」とする。便宜上、 p より q の方が大きいとしておく(この仮定は、不当な制約とはならない。何なりと任意に選んだ相異なる奇素数について、単に小さい方を p、 大きい方を q とすればいい)。 (q+1)/2 は自然数。イの両辺を (q+1)/2 乗すると:
  [Sp(1)]q+1 = [p⋅(−1)(p−1)/2](q+1)/2

q+1 乗は、 1 乗と q 乗の積。 (q+1)/2 乗は、 1 乗と (q−1)/2 乗の積。よって、上の等式をこう書くことができる:
  Sp(1)⋅[Sp(1)]q = [p⋅(−1)(p−1)/2] × [p⋅(−1)(p−1)/2](q−1)/2
この右辺に、指数法則 (A⋅B)C = AC × BC を適用すると:
  Sp(1)⋅[Sp(1)]q = [p⋅(−1)(p−1)/2] × p(q−1)/2 × (−1)(p−1)/2⋅(q−1)/2
つまり:
  ウ Sp(1)⋅[Sp(1)]q = [p⋅(−1)(p−1)/2] × p(q−1)/2 × (−1)(p−1)(q−1)/4

一方、アの両辺を Sp(1) 倍すると:
  Sp(1)⋅Sp(q) = [Sp(1)]2 × (q/p)
その右辺にイから代入して:
  エ Sp(1)⋅Sp(q) = [p⋅(−1)(p−1)/2] × (q/p)

等式ウから等式エを引き算すると:
  オ Sp(1)⋅{[Sp(1)]q − Sp(q)} = [p⋅(−1)(p−1)/2] × {p(q−1)/2 × (−1)(p−1)(q−1)/4 − (q/p)}

〔注〕 原文ではオ左辺の指数 q が p になっている(誤植)。

オの(等しい両辺の)値が整数であることは右辺から明白だが、実はオの値は q の倍数(後述)。右辺については、素数(またはその −1 倍)の因子 [p⋅(−1)(p−1)/2] は q の倍数ではないので、必然的に { } 内が q の倍数。すなわち:
  p(q−1)/2 × (−1)(p−1)(q−1)/4 − (q/p) ≡ 0 (mod q)
この左端の p(q−1)/2 は、 p mod q についての Euler の基準になっている。左辺の −(q/p) を移項すると:
  (p/q) × (−1)(p−1)(q−1)/4 ≡ (q/p) (mod q)

この最後の合同式は、右辺が Legendre 記号、左辺が Legendre 記号の ±1 倍なので、両辺とも +1 または −1 の値しか取り得ない。仮定により q は 3 以上なので、この合同式が成り立つということは、「両辺とも +1 に等しいか、または両辺とも −1 に等しい」ということ。

(−1)(p−1)(q−1)/4 が +1 になる場合と −1 になる場合について検討すると、次の結論に至る(補足1参照): 素数 p, q の少なくとも一方が「4 の倍数より 1 大きい数」なら、 (p/q)(q/p) は符号(と値)が一致し、さもなければ両者は符号が一致しない。すなわち、平方剰余の相互法則が示される。

残る問題は、オの数が q の倍数であることの証明だが、代数的整数の考え方(Eisenstein の時代には未確立だった!)を使えば、数行で片付く。

[Sp(1)]q = [(1/p)z1 + (2/p)z2 + ··· + ((p−1)/p)zp−1]q(1/p)z1q + (2/p)z2q + ··· + ((p−1)/p)z(p−1)q (mod q)

合同式は「新入生の夢」による補足2参照)。合同記号の右側は Sp(q) の定義そのものなので、
  [Sp(1)]q ≡ Sp(q) つまり [Sp(1)]q − Sp(q) ≡ 0 (mod q)
となるが、これはオの左辺の { } 内が q の倍数ということに他ならない。∎

〔追記〕 本来 (1/p), (2/p) などの係数も q 乗されるが、それらの値は (+1)q = (+1) か (−1)q = (−1) かのどちらか(なぜなら q は奇数)。よって、係数に対する q 乗を無視する(1 乗と見なす)ことができる。

✿

「形式的にこのようにできる」ということを Eisenstein も承知していたかもしれないが、当時はまだ理論的な裏付けが曖昧だったのだろう。われわれ自身まだ代数的整数の理論を厳密には導入してないことだし、以下では Eisenstein による当時の証明を記す。

[Sp(1)]q を展開して生じる (p−1)q 個の項において、二項係数の性質上、ほとんどの係数は q の倍数になるが(新入生の夢)、例外として、
  [(k/p)zk]q = (k/p)q⋅zkq = (k/p)zkq
の形の p−1 項は、そうならない(k = 1, 2, ···, p−1)。しかし例外の p−1 項の和は Sp(q) と同じなので、 [Sp(1)]q を展開して Sp(q) を引いた残りの項の和を Y とすると、
  Y = [Sp(1)]q − Sp(q)
に関しては、各項の係数が q の倍数。もし代数的整数としての議論が使えるなら Y ≡ 0 (mod q) となって直ちに話は終わるのだが、普通の意味で Y が q の倍数になるかどうかは、明らかではない。なぜなら Y は非実数 z, z2, z3 などの線型結合であり、個々の係数は整数 q の倍数だとしても、それらの和は(一般には)普通の意味の整数にならない――それどころか実数にすらならない。

〔例〕 1 の 3 乗根 z = (−1 + −3)/2 と関連して、
  5z + 10z2 = (−15 − 5−3)/2 = −7.5 − i⋅4.330127…
という数を考えると、「個々の係数」は 5 の倍数だが、「数自体」は、普通の意味で 5 の倍数ではない。

しかし上記 Y を構成する各項は、
  z ± z2 ± ··· ± zp−1
を q 乗(自然数乗)したものから生じるので、必ず、
  ±z自然数
の形を持つ。 zp = 1, zp+1 = z, zp+2 = z2, ··· なので、「z の指数が p 以上の項」については、(指数を p で割った余りに置き換えることにより) p−1 次以下の項として表現できる。この簡約を行い同類項をまとめるなら、 Y は z の p−1 次式として表現可能:
  Y = A0 + A1z + A2z2 + ··· + Ap−1zp−1  各係数 Ak は整数
同類項をまとめる前の各係数は q の倍数; 「係数が q の倍数の同類項」をまとめても、結果として生じる各係数は依然 q の倍数。よって、こう書くことができる。
  Y = q(B0 + B1z + B2z2 + ··· + Bp−1zp−1)  各係数 Bk (= Ak/5) は整数

今、問題のオの数 Sp(1)⋅{[Sp(1)]q − Sp(q)} を X とする(それが q の倍数であることを示したい)。 X は、各係数 が q の倍数である Y に、 Sp(1) = z ± z2 ± ··· ± zp−1 を掛けたもの; 多項式の掛け算の結果として生じる各係数は再び q の倍数となり、その性質は同類項をまとめた後でも維持される:
  カ X = Sp(1)⋅{[Sp(1)]q − Sp(q)} = q(C0 + C1z + C2z2 + ··· + Cp−1zp−1)  各係数 Ck は整数

さて、この計算では、任意に一つ選んだ原始 p 乗根 z を基準としている。この z の代わりに、別の原始 p 乗根(例えば z2 や z3)を使っても、上記 X の値は変わらない。なぜならば、第一に、ある素数 p に対する Gauß 和の平方は、どの原始 p 乗根を基準にしても一定、従って Gauß 和の偶数乗は一定。第二に Sp(1) と Sp(q) の相対関係も一定で、 q が mod p の平方剰余か非剰余かに応じて、 Sp(1) と Sp(q) は符号が一致し、あるいは逆になる。つまり、ある z を基準に Sp(1)⋅Sp(q) = [Sp(1)]2 ならば別の z を基準にしてもそうなるし、ある z を基準に Sp(1)⋅Sp(q) = −[Sp(1)]2 ならば別の z を基準にしてもそうなる。

よって、
  X = Sp(1)⋅{[Sp(1)]q − Sp(q)} = [Sp(1)]q+1 − Sp(1)⋅Sp(q) = [Sp(1)]偶数 − Sp(1)⋅Sp(q)
は、 z の選択と無関係に一定の値を持つ。

〔注〕 z として自明な p 乗根 1 を選択した場合、自明な Gauß 和 0 が生じ、上記の規則の例外となるが、ここでは z ≠ 1 と仮定している。

z を z2 や z3 に置き換えてもカの値は変わらないのだから:
  キ X = q[C0 + C1z1 + C2z2 + ··· + Cp−1zp−1]  ← カと同じ
  ク X = q[C0 + C1z2 + C2z4 + ··· + Cp−1z2(p−1)]  ← 代わりに z2 を使用
  ケ X = q[C0 + C1z3 + C2z6 + ··· + Cp−1z3(p−1)]  ← 代わりに z3 を使用
  ···
  コ X = q[C0 + C1zp−1 + C2z(p−1)⋅2 + ··· + Cp−1z(p−1)(p−1)]  ← 代わりに zp−1 を使用

キ~コの p−1 個の等式を縦に足すと:
  (p−1)X = q[(p−1)C0 + C1(z1 + z2 + z3 + ··· + zp−1) + C2(z2 + z4 + z6 + ··· + z(p−1)⋅2) + ···]

ここで z1 + z2 + z3 + ··· + zp−1 = −1 が成り立つ(補足3参照)。 z2 + z4 + z6 + ··· + z(p−1)⋅2 なども、指数を mod p で考えると、同じ値の p−1 項を別の順序で足したものに過ぎず(曜日ばらばらの原理)、従って −1 に等しい。要するに:
  サ (p−1)X = q[(p−1)C0 + C1(−1) + C2(−1) + ··· + Cp−1(−1)]

サの右辺の [ ] 内は整数なので、サの右辺は素数 q の整数倍; それに等しい左辺ももちろん q で割り切れるが、左辺の p−1 は、自分より大きい q では割り切れないので(仮定により p < q である)、 X が q で割り切れる。 X つまりオの数が q の倍数であることが示された。∎

〔注〕 カ~コなどは z についての p−1 次式だが、 Eisenstein は代わりに p−2 次式を使っている。
  1 + z + z2 + ··· + zp−2 + zp−1 = 0
  ∴ zp−1 = −1 − z − z2 − ··· − zp−2
この最後の式からカに代入すれば、 p−1 次の項を除去できる。変形結果の各係数も q の倍数であり、本質的な議論の流れに違いは生じない。原文では、コに当たる式の右辺冒頭の q が p になっている(誤植)。

以上が “La loi de réciprocité tirée des formules de Mr. Gauss” のメイン部分。この論考には、第二補充法則の証明も付記されている(後述)。

✿

補足1 平方剰余の相互法則は、
  −1 の [(p−1)/2][(q−1)/2]
あるいは同じことだが、 −1 の (p−1)(q−1)/4、という累乗を使って表現されることも多い。その真意は次の通り。

仮定により p, q は 3 以上の相異なる素数。従って p−1 と q−1 はどちらも偶数(2 の倍数)。だから積 (p−1)(q−1) は、因子 2 を最低でも二つ持つ(要するに 4 の倍数); p−1 か q−1 の少なくとも一方がそれ自身 4 = 22 の倍数なら、積 (p−1)(q−1) は、因子 2 を三つ以上持つ(8 の倍数)。

①もし (p−1)(q−1) が 4 の倍数 × 偶数なら、つまり 8 の倍数なら、 (p−1)(q−1)/4 は偶数で、 (−1)(p−1)(q−1)/4 は +1 に等しい。他方、②もし (p−1)(q−1) が 4 の倍数 × 奇数なら、つまり 4 の倍数だが 8 の倍数ではないのなら、 (p−1)(q−1)/4 は奇数で、 (−1)(p−1)(q−1)/4 は −1 に等しい。 p−1 と q−1 の少なくとも一方が 4 の倍数なら、①になる。 ②は、p−1 と q−1 が両方とも 4 の倍数でないときに限って発生する。

p−1 が 4 の倍数なら、 p は 4 の倍数より 1 大きい。同様に、 q−1 が 4 の倍数なら、 q は 4 の倍数より 1 大きい。そのどちらか一方(または両方)が成り立つ場合には、 (p/q) = (q/p) が成り立つ。すなわち、 p mod q と q mod p は、両方とも平方剰余か、または両方とも非剰余。

一方、 p−1 と q−1 が、どちらも「4 の倍数より 1 大きい数」でない場合――言い換えると、両方とも「4 の倍数より 3 大きい数」である場合――(p/q)(q/p) は一致せず、符号が逆に。すなわち p mod q と q mod p は、どちらか一方が平方剰余で、他方が非剰余。

これが、平方剰余の相互法則であるっ! p, q それぞれについて「4 の倍数より 1 大きいか・3 大きいか」で区別すると、四つのケースに分かれる。そのうち「両方とも 4 の倍数より 3 大きいケース」だけが特別で、 p mod q と q mod p の特性が一致しない。残りの三つのケースでは、両者の特性は一致。

✿

補足2 「新入生の夢」は二項展開に限らず、三項以上の展開においても成立。

p が素数のとき (A + B)p ≡ Ap + Bp (mod p) であることは、二項係数から直ちに明らか。文字を変えて、
  (A + x)p ≡ Ap + xp とか (B + C)p ≡ Bp + Cp
ともいえる。では (A + B + C)p はどうなるか。 B + C = x と置けば:
  (A + B + C)p = (A + x)p ≡ Ap + xp
   = Ap + (B + C)p ≡ Ap + Bp + Cp (mod p)
つまり、任意の 3 項の p 乗についても、 mod p の世界では「指数の分配法則」が成り立つ。

従って C + D = y と置けば:
  (A + B + C + D)p = (A + B + y)p ≡ Ap + Bp + yp
   = Ap + Bp + (C + D)p ≡ Ap + Bp + Cp + Dp (mod p)
つまり、任意の 4 項の p 乗についても、 mod p の世界では「指数の分配法則」が成り立つ。

一般に、「この現象が n 項までの p 乗については成り立つ」と仮定して An + An+1 = z と置くと:
  (A1 + A2 + ··· + An + An+1)p = (A1 + A2 + ··· + An−1 + z)p
これは n 項の p 乗なので、仮定により、
   ≡ (A1)p + (A2)p + ··· + (An−1)p + zp
   = (A1)p + (A2)p + ··· + (An−1)p + (An + An+1)p
   ≡ (A1)p + (A2)p + ··· + (An+1)p
となって n+1 項の p 乗についても同じ現象が成立。帰納法により、任意の項数について、この現象が成立。

Gauß 和の q 乗の場合(q: 素数)、例えばこうなる。
  [(1/p)z1 + (2/p)z2 + ··· + ((p−1)/p)zp−1]q
   ≡ [(1/p)z1]q + [(2/p)z2]q + ··· + [((p−1)/p)zp−1]q (mod q)
   = (1/p)zq + (2/p)z2q + ··· + ((p−1)/p)z(p−1)q

✿

補足3 p を 3 以上の素数とする。 1 の p 乗根 x は xp = 1 つまり xp − 1 = 0 を満たす。この最後の式の左辺は、次のように分解される:
  xp − 1 = (x − 1)(xp−1 + xp−2 + ··· + x2 + x + 1) ☆

〔証明〕 ☆の右辺 = (x − 1)(xp−1 + xp−2 + ··· + x2 + x + 1)
   = x(xp−1 + xp−2 + ··· + x2 + x + 1) − 1(xp−1 + xp−2 + ··· + x2 + x + 1)
   = (xp + xp−1 + ··· + x3 + x2 + x) − (xp−1 + xp−2 + ··· + x2 + x + 1)
   = xp − 1 = ☆の左辺 ∎
この分解自体は p が素数でなくても成立。 p が素数だと、これで分解完了だが(有理係数の範囲では)、 p が合成数の場合、さらに細かい因子に分解されるかもしれない。

従って xp − 1 = 0 の解は、 x − 1 = 0 または xp−1 + xp−2 + ··· + x2 + x + 1 = 0 を満たす。「または」の前の式の解は x = 1 (それは 1 の自明な p 乗根)。それ以外の p 乗根は非実数で、「または」の後ろの式を満たす:
  xp−1 + xp−2 + ··· + x2 + x + 1 = 0
よって x = z が 1 の非実数 p 乗根なら(逆順に指数が小さい方から書くと)、
  1 + z + z2 + ··· + zp−2 + zp−1 = 0
となり、定数項 1 を移項すると、こうなる:
  z + z2 + ··· + zp−2 + zp−1 = −1

✿ ✿ ✿


2024-11-28 アイゼンシュタインの第二証明と第二補充法則

#遊びの数論 #相互法則 #1 の原始根 #ガウス和 #(35)

1 の 8 乗根を利用した第二補充法則の証明については、既に現代的に整理したが(予想の 45° 斜め上をいく  i  の活用!)、あえて19世紀のアイゼンシュタインの第二証明を読む。この古風な証明は、クロネッカー記号について、ある種の洞察を与えてくれる。

x8 = 1 の解、つまり 1 の 8 乗根は、八つある。そのうち四つは明らか: 1 自身も 8 乗すれば = 1 だし、 (−1)8 も = 1。さらに i4 = (−1)2 = 1 だし (−1)4 も = 1 なので (±1)8 = 1 となり、 ±1, ±i の四つは 1 の 8 乗根。残りの四つは、それほど明らかではない。

画像: 単位円に内接する正八角形

幾何学的考察から、あるいは4次方程式から、単位円上の偏角 45° の点に当たる複素数、
  z = 2/2 + i⋅2/2
は、 1 の 8 乗根の一つ。 z の共役複素数、
  z7 = z−1 = 2/2 − i⋅2/2
や、 z7 の −1 倍(180° 反対側の点に当たる)、 z の −1 倍も、 1 の 8 乗根。
  z3 = −z7 = −z−1 = −2/2 + i⋅2/2
  z5 = −z = z−3 = −2/2 − i⋅2/2

平方剰余の相互法則の証明を、ガウスは生前6種類公表し、アイゼンシュタインは5種類公表した。アイゼンシュタインの第二証明は、ガウスの第六証明(1818年)を簡単化したもの。それは、1844年、ベルリン大学1年生だったアイゼンシュタインが記した 3 ページの短い論文であった。相互法則の証明(論文の本題)については既に紹介したが、論文末尾に、類似の方法による第二補充法則の証明が付記されている。その部分を検討したい。

✿

【1】 1 の 8 乗根のうち ±1, ±i は、確かに 8 乗すれば = 1 だが、 8 乗しなくても(例えば i は 4 乗するだけで)早々に = 1 になる。一方、 z1; z3 = −z1; z5 = −z3; z7 = z−1 の四つは 8 乗して初めて 1 になる複素数で、原始 8 乗根と呼ばれる。

1 の原始 8 乗根を一つ選んで ζ とする。そして ζ1 − ζ3 − ζ5 + ζ7 という値を考えよう(この 4 項の + − − + という符号設定については後述)。

もし ζ = z = 2/2 + i⋅2/2 なら、次が成り立つ(なぜなら −ζ3 = −z3 = −(−z7) = −(−z−1) = z−1 等々):
  ζ1 − ζ3 − ζ5 + ζ7 = z1 + z−1 + z1 + z−1 = 22 = 8
代わりに、別の原始 8 乗根 z7 を使って ζ = z7 = z−1 としても、上の途中計算の z1 と z−1 が入れ替わるだけで、結果は同じ。

さらに別の 8 乗根 z3 を使って ζ = z3 とすると:
  ζ1 − ζ3 − ζ5 + ζ7 = z3 − z9 − z15 + z21 = z3 − z1 − z7 + z5 = z3 + z−3 + z3 + z−3 = 2(−2) = −8
代わりに ζ = z5 = z−3 としても、上の途中計算の z3 と z−3 が入れ替わるだけで、結果は同じ。

よって、 4 種類ある 1 の原始 8 乗根 z1, z3, z5, z7 のどれを ζ としても:
  ζ = z1 または ζ = z7 ⇒ ζ1 − ζ3 − ζ5 + ζ7 = 8  ‥‥①
  ζ = z3 または ζ = z5 ⇒ ζ1 − ζ3 − ζ5 + ζ7 = −8  ‥‥②
  いずれにしても (ζ1 − ζ3 − ζ5 + ζ7)2 = 8  ‥‥③

【2】 これは次の事実と似ている―― 4 種類ある 1 の原始 5 乗根 x1, x2, x3, x4 のどれを ε としても:
  ε = x1 または ε = x4 ⇒ S = ε1 − ε2 − ε3 + ε4 = 5
  ε = x2 または ε = x3 ⇒ S = ε1 − ε2 − ε3 + ε4 = −5
  いずれにしても S2 = (ε1 − ε2 − ε3 + ε4)2 = 5

この場合 S = { from k=1 to 4 } [ ±εk ] は素数 5 に関連する Gauß 和で、「原始 5 乗根 ε の k 乗」の前の符号は、 k が mod 5 の平方剰余ならプラス、非剰余ならマイナスだった。すなわち:
  S = { from k=1 to 4 } [ (k/5k ]

そのことから類推すると、【1】で考えている和、
  T = { for k=1,3,5,7 } [ ±ζk ]
は、 8(それは素数ではないが)に関連する Gauß 和のようなもので、「原始 8 乗根 ζ の k 乗」の前の符号は……「k が mod 8 の平方剰余ならプラス、非剰余ならマイナス」……と言いたいところだが、それではつじつまが合わない: 12 ≡ 32 ≡ 52 ≡ 72 ≡ 1 (mod 8) なので、 mod 8 では 1 は平方剰余だが 3, 5, 7 は非剰余(それ以外の 0, 2, 4, 6, 8 の平方は mod 8 では、偶数にしかなり得ない)。でも、第二補充法則を既に知っている人がこれを見るなら、 ζk の符号の選択(k ≡ ±1 ならプラス、 k ≡ ±3 ならマイナス)が、「k が素数の場合の 2 mod k が、平方剰余か非剰余か」に対応していることは、察しがつくだろう。

実は「Legendre 記号を拡張した Jacobi 記号[これについてはそのうち]」をさらに拡張した Kronecker 記号 を使うと、上記 T は S と全く同様の形式で記述可能:
  T = { from k=1 to 7 } [ (k/8k ]
Kronecker 記号は Jacobi 記号とほぼ同様に振る舞うので:
  (k/8) = (k/2)(k/2)(k/2) = (k/2)
この右端の等号の根拠は、 (k/2) が −1, 0, +1 のどの値でも、その 3 乗は 1 乗と等しいこと。結局、
  T = { from k=1 to 7 } [ (k/8k ] = { from k=1 to 7 } [ (k/2k ]
となるが、「分子」が「分母」の倍数の場合(この場合で言えば「分子」が偶数の場合)に値が 0 になるのは Legendre 記号(拡張版)と同じで、よって k が偶数の項はないのと同じ。実質的には、こうなる:
  T = { for k=1,3,5,7 } [ (k/2k ]

k が奇数の場合の (k/2) の値については k ≡ ±1 ≡ 1, 7 (mod 8) なら +1 で k ≡ ±3 ≡ 3, 5 (mod 8) なら −1 と約束する。この規約は、より深い文脈において意味を持つのだが、ここでは第二補充法則との関係において「これで、つじつまが合う」と感じられれば十分、感じられなくても「便宜上の規約」と割り切っていい。

【3】 Leopold Kronecker が Kronecker 記号を導入したのは1880年代だというので、1844年の Eisenstein の論文に、その概念・記号が直接的に使われているわけではない。 Eisenstein は、同じ意味のことを次のように記述した:
  T = { for k=1,3,5,7 } [ (−1)(kk−1)/8 ζk ]
(kk−1)/8 つまり (k2 − 1)/8 の値は k = 1, 7 ならそれぞれ 0, 6 で、 k = 3, 5 ならそれぞれ 1, 3 なので、前者は (−1) の偶数乗、後者は (−1) の奇数乗を生じ、「分母」が 2(あるいは 8)の Kronecker 記号と結果は同じ。より一般的に、 mod 8 で k ≡ ±1 ≡ 1, 7 なら前者と同じで k ≡ ±3 ≡ 3, 5 なら後者と同じ。

仮に Kronecker 記号を使い、 (k/2) または同じことだが (k/8) という表記によって k ≡ 1, 7 なら (+1)、 k ≡ 3, 5 なら (−1) を表すことにするなら、 T = ζ1 − ζ3 − ζ5 + ζ7 = (ζ1 + ζ−1) − (ζ3 + ζ−3) の符号の背景は、もはや明らか: ±ζk の符号設定(k = 1, 3, 5, 7)は、単に (k/8) というわけ。

〔注〕 これは「参考までに」のコメントであり、既に述べたように、原論文では Kronecker 記号もその概念も使われていない。

【4】 さて、 ζ の指数の 1, 3, 5, 7 をそれぞれ 1q, 3q, 5q, 7q に置き換えると何が起きるか(q は 3 以上の素数)。あるいは同じことだが、指数 ±1, ±3 を ±1q, ±3q に置き換えると?

ζ が 1 の 8 乗根で指数が実質 mod 8 であることから(つまり 8 周期で循環: ζ−1 = ζ7 = ζ15 等々)、もし q ≡ ±1 (mod 8) なら ζ の指数 ±1, ±3 を ±1q, ±3q に置き換えても、実質的に何も変化しない。もともと T = 8 なら、指数置換後も引き続き T = 8 だし、もともと T = −8 なら指数置換後も同じ値。一方、もし q ≡ ±3 (mod 8) なら、
  T = (ζ1 + ζ−1) − (ζ3 + ζ−3)
の一つ目の丸かっこ内は ζ3 + ζ−3 に変わり(ζ−3 + ζ3 になるかもしれないが、和は同じ)、二つ目の丸かっこ内は ζ9 + ζ−9 = ζ1 + ζ−1 に変わるので、上記 T の引き算の順序が反転して、もともと T = 8 なら、指数置換後は T = −8 になり、もともと T = −8 なら、やはり符号が反転して T = 8 になる。

よって、
   { for k=1,3,5,7 } [ (k/8k ]  と   { for k=1,3,5,7 } [ (k/8kq ]
は、どちらも 8 または −8 の値を持つが、 mod 8 において q ≡ ±1 なら符号が一致し、 q ≡ ±3 なら符号が一致しない。「符号が一致」とは、両方 8 に等しいか、または両方 −8 に等しい――という意味。言い換えると、前者と後者は互いに相手から見て (q/8) 倍の関係(符号が一致するなら、どちらからどちらを見ても +1 倍だし、符号が一致しないなら、どちらからどちらを見ても −1 倍)。

Kronecker 記号を使うなら、これを、
   { for k=1,3,5,7 } [ (k/8kq ] = (q/8 { for k=1,3,5,7 } [ (k/8k ]
と表現できるが、 Kronecker 記号がなかった時代の Eisenstein は、同じことをこう表現した(実質的意味な同じ):
   { for k=1,3,5,7 } [ (−1)(kk−1)/8 ζkq ] = (−1)(qq−1)/8  { for k=1,3,5,7 } [ (−1)(kk−1)/8 ζk ]  サ
簡潔化のため、以下、「k = 1, 3, 5, 7」の指定を省き ∑ だけを記す。サは、
  ∑ (−1)(kk−1)/8 ζkq = (−1)(qq−1)/8 ∑ (−1)(kk−1)/8 ζk  シ
となる。さらなる簡潔化のため、
  ∑ (−1)(kk−1)/8 ζk = ζ1 − ζ3 − ζ5 + ζ7
を単に T と書くと、サ(シ)はこうなる:
  ∑ (−1)(kk−1)/8 ζkq = (−1)(qq−1)/8 T  ス
他方、出発点となる【1】の ③ をこう書くことができる:
  T2 = 8  セ

【5】 今、セを (q+1)/2 乗すると:
  Tq+1 = 8(q+1)/2  ソ
スを T 倍し、セの関係に注意すると:
  T ∑ (−1)(kk−1)/8 ζkq = (−1)(qq−1)/8 T2
  ∴ T ∑ (−1)(kk−1)/8 ζkq = 8⋅(−1)(qq−1)/8  タ

ソからタを辺々引いて:
  T[Tq − ∑ (−1)(kk−1)/8 ζkq] = 8[8(q−1)/2 − (−1)(qq−1)/8]  チ

チの右辺は明らかに整数。それに等しいチの左辺も整数だが、それは q で割り切れる。実際、左辺 [ ] 内の、
  Tq = (ζ1 − ζ3 − ζ5 + ζ7)q
を展開すると ζ についての多項式が得られるが、そのほとんどの項の係数は q の倍数(新入生の夢)。例外として、
  ζ1q, (−ζ3)q = −ζ3q , (−ζ5)q = −ζ5q, ζ7q
の 4 項の係数は ±1 であり q の倍数ではないが、これら 4 項は、チの左辺の後半の、
  ∑ (−1)(kk−1)/8 ζkq = ζ1q − ζ3q − ζ5q + ζ7q
と完全に同じなので、この [ ] 内の引き算によって消滅。よって、この [ ] 内には、係数が q の倍数の項しか残らず、 Eisenstein の論法によって(詳細は次回)、あるいは代数的整数の理論によって、チの左辺が q の倍数であることが示される。

それと等しいチの右辺も q で割り切れるが、右辺冒頭の因子 8 は q で割り切れないので、その後ろの[ ] 内が q で割り切れる。すなわち:
  8(q−1)/2 ≡ (−1)(qq−1)/8 (mod q)
この左辺に Euler の基準と Legendre 記号の性質を適用すると:
  (8/q) = (2/q)(2/q)(2/q) = (2/q) ≡ (−1)(qq−1)/8 (mod q)
両辺とも値は +1 or −1 なので、合同記号を等号に置き換えることができる。その結果は、第二補充法則に他ならない。 ∎

✿ ✿ ✿


2024-11-30 アイゼンシュタインの第二証明(続き)

#遊びの数論 #相互法則 #1 の原始根 #ガウス和 #(35)

大学入学後10カ月目の一年生。だが彼の「砂時計」の残り時間は「8年半」。病弱だった天才は、自分には時間がないことを本能的に察していたのだろうか。21歳になったアイゼンシュタインの、たった2ページ半の論文は、簡潔過ぎるとすら感じられる。

前回に続き、原論文末尾の部分(第二補充法則の別証明)を検討する。それは1844年5月、ベルリンで記された。ガウスの第六証明の簡単化。――ガウスの「第三」を簡単化したアイゼンシュタインの第三証明は、今でも世界中の教科書に載っている。あれが書かれる2カ月ほど前。

✿

【6】 第二補充法則は、相互法則そのものと比べると補足のようなものだが、 Eisenstein の記述には独特の趣がある。執筆当時から見て約40年未来の理論である Kronecker 記号を、ある意味、先取りしているのだ(この件については、前回記した)。

さて、問題は 3 以上の素数 q について、
  T(Tq − Tq)  ツ
が q の倍数であることの証明に帰着するのであった。ただし、 ζ を 1 の原始 8 乗根のどれか一つとして、
  T = ζ1 − ζ3 − ζ5 + ζ7 そして Tq = ζ1q − ζ3q − ζ5q + ζ7q
とする。どちらも 8 または −8 であり、もし素数 q が 8m±1 型なら両者は等しく、もし素数 q が 8m±3 型なら T と Tq の一方は 8 で他方は −8 だ(【4】参照)。

T が 8 でも −8 でも Tq+1 は T の偶数乗なので、正の整数。具体的には = 8(q+1)/2 だ。

第一に、もし T と Tq が一致し、両方とも 8 または両方とも −8 の場合、つまり q が 8m±1 型の場合、ツは、
  Tq+1 − 8 = 8(q+1)/2 − 8
に等しいので、第二補充法則を先に仮定すれば、
  8(q+1)/2 − 8 ≡ 0 (mod q)
は明白。というのも、 −8 を移項して両辺を 8 で割れば、その結果は「8 が平方剰余か非剰余か」という特性に関する Euler の基準に他ならない; 8 の特性は 2 の特性と同じ。

第二に、もし T と Tq が一致せず、一方が 8 で他方が −8 の場合、つまり q が 8m±3 型の場合、ツは、
  8(q+1)/2 + 8
になるが、これが ≡ 0 (mod q) であることも、第二補充法則を先に仮定すれば明白。

よって、第二補充法則を既知とするなら、ツは確かに q の倍数。しかしここでは、第二補充法則を先に仮定するのではなく、それを導出したい。そのためには逆に、「第一・第二どちらのケースでも必ずツが q の倍数であること」を、第二補充法則を使わずに示せばいい。

以下それを行う。ツの値 8(q+1)/2 ± 8 について、複号の選択がどうなるにせよ、値が整数ということは明らか。

【7】 Tq − Tq は、
  Aζ1 + Bζ3 + Cζ5 + Dζ7
の形を持つ。ここで A, B, C, D はそれぞれ整数で(必ずしも正ではない)、どれも q の倍数。

その理由は次の通り。

例えば q = 3 の場合:
  T3 = (ζ1 − ζ3 − ζ5 + ζ7)(ζ1 − ζ3 − ζ5 + ζ7)(ζ1 − ζ3 − ζ5 + ζ7)
もしこれを機械的に展開すると 43 = 64 個の項が生じるが、その一つ一つの項はどれも、
  第一の丸かっこから一つの項 ζ奇数 を選択し、
  第ニの丸かっこから一つの項 ζ奇数 を選択し、
  第三の丸かっこから一つの項 ζ奇数 を選択し、
  それらを掛け合わせた ζ奇数ζ奇数ζ奇数 = ζ奇数+奇数+奇数
の形だから、決して ζ の偶数乗は発生しない。 ζ8 = 1 なので、いつでも(特に指数が 8 以上になったときには)指数から 8 を引くことができるが(例: ζ11 = ζ8ζ3 = ζ3)、奇数の指数から 8 を(何回)引き算しても、指数は奇数のまま。

64 個の積の中で ζ1ζ1ζ1 = ζ3 という掛け算は、たとえ交換法則を考慮しても、ちょうど 1 回しか生じない(三つの丸かっこ全てで同一の項を選択しなければならないので、一つ目の丸かっこ内での選択が済めば、残りの選択も確定してしまい、交換法則によって選択肢を増やすことは不可能)。同様に、
  (−ζ3)(−ζ3)(−ζ3) = −ζ3⋅3
  (−ζ5)(−ζ5)(−ζ5) = −ζ3⋅5
  (+ζ7)(+ζ7)(+ζ7) = +ζ3⋅7
という掛け算も、それぞれちょうど 1 回しか生じない。しかしこれら 4 個の項は、
  T3 = ζ3⋅1 − ζ3⋅3 − ζ3⋅5 + ζ3⋅7
として T3 から引き算されるので、 Tq − Tq = T3 − T3 の中には、もはや存在しない。他方において、それらを除いた 60 個の項の中には、交換法則を考慮すると、同一の積がちょうど 3 回ずつ、またはちょうど 6 回ずつ、生じる。例えば、最初の二つの丸かっこで左端の項を選び、最後の丸かっこで三つ目の項を選ぶと、
  (+ζ1)(+ζ1)(−ζ5)
という積が生じるが、それと等しい積は、
  (+ζ1)(−ζ5)(+ζ1) あるいは (−ζ5)(+ζ1)(+ζ1)
としても生じてくる――これは、二つの項の指数が等しく、もう一つの項の指数がそれとは異なる場合だ。三つの指数がどれも異なる場合には、次の例のように、交換法則の観点において、等しい積がちょうど 6 回ずつ生じる。
  (+ζ1)(−ζ5)(+ζ7) あるいは (+ζ1)(+ζ7)(−ζ5)
  (−ζ5)(+ζ7)(+ζ1) あるいは (−ζ5)(+ζ1)(+ζ7)
  (+ζ7)(+ζ1)(−ζ5) あるいは (+ζ7)(−ζ5)(+ζ1)

指数が同じ項は符号が同じなので、交換法則によって同一の積が複数個生じる場合、その複数個の積はどれも同じ符号を持ち、一つにまとめると、
  (3 の倍数) × ζ奇数
の形になる。ここで「3 の倍数」というのは、 0 や負の倍数(−3, −6, −9 など)も含む。

よって T3 − T3 は、次の形を持つ:
  (3 の倍数)⋅ζ1 + (3 の倍数)⋅ζ3 + (3 の倍数)⋅ζ5 + ··· + (3 の倍数)⋅ζ21
ζ7ζ7ζ7 = ζ21 より高い次数が生じ得ないことは明らか。この和は、
  ζ1 = ζ9 = ζ17 そして ζ3 = ζ11 = ζ19
  ζ5 = ζ13 = ζ21 そして ζ7 = ζ15 = ζ23
…等々の関係によって、4 種類の項にまとめられるが、こうして同類項が整理されるとき、係数としては 3 の倍数たちが加減されるのだから、結果として生じる係数は引き続き 3 の倍数。すなわち:
  T3 − T3 = Aζ1 + Bζ3 + Cζ5 + Dζ7 ここで A, B, C, D は整数で 3 の倍数

q が 5 以上の素数でも、同様のことが生じる。すなわち Tq − Tq の引き算によって、係数 ±1 の項は除去され、係数 ±1 以外の項は、どれも係数が q の倍数(新入生の夢)。係数が q の倍数の項を簡約し、相互に加減しても、結果として生じる係数は依然として q の倍数なので:
  Tq − Tq = Aζ1 + Bζ3 + Cζ5 + Dζ7 ここで A, B, C, D は整数で q の倍数

【8】 いったん項の係数が q の倍数になると、そのような項に何かを掛けて生じる項の係数も、もちろん q の倍数。あるいは「q の倍数の係数を持つ項」同士を加減しても、結果は依然として「q の倍数の係数を持つ項」。よって、
  T(Tq − Tq) = (ζ1 − ζ3 − ζ5 + ζ7)(Aζ1 + Bζ3 + Cζ5 + Dζ7)  テ
を展開したもの、あるいは展開して整理したものは、どの項の係数も q の倍数。ところが、われわれは、テの値 T(Tq − Tq) = Tq+1 − T⋅Tq が(普通の意味での)整数であることを知っている(【6】参照)。どの項も q の倍数と複素数 ζk の積であるような和、
  m1ζ1 + m2ζ2 + ···  ここで mk は q の倍数
が「普通の整数」に等しいとき、その「普通の整数」自身も q の倍数――ということは、感覚的には当たり前のようにも思える。

事実、現代では代数的整数として流してしまう部分だが、 Eisenstein は、丹念な式変形でそれを論証した。ここでも、代数的整数を使わない証明を二通り記す。

テの右辺を機械的に展開して生じる 16 個の項は、どれも (q の倍数) × ζ偶数 の形を持ち、しかも ζ偶数 は、次のどれか一つに等しい:
  「い」 i = ζ2 = ζ10 = ζ18 = ···
  「ろ」 −1 = ζ4 = ζ12 = ζ20 = ···
  「は」 −i = ζ6 = ζ14 = ζ22 = ···
  「に」 1 = ζ8 = ζ16 = ζ24 = ···
よって、テの右辺は、次の形の 4 項の和に整理される:
  ト E⋅i + F⋅(−1) + G⋅(−i) + H⋅1  ここで E, F, G, H は整数で q の倍数

トの 4 項の和は「普通の整数」(Gauß 整数などと対比的に 0, ±1, ±2, ··· のどれか)なので、トにおいて、虚数単位を含む成分つまり (E − G)i は = 0 でなければならない(これは単に E = G を意味し、 E, G がそれぞれ q の倍数であるという前提と矛盾しない)。結局、トでは実部だけが残り、テの和は −F + H に等しい。 F, G はそれぞれ q の倍数だから、 −F + H も q の倍数。これが証明されるべき事柄だった。 ∎

【9】 この値が q の倍数であることから、
  T(Tq − Tq) = T[Tq − ∑ (−1)(kk−1)/8 ζkq] = 8[8(q−1)/2 − (−1)(qq−1)/8]
は q の倍数で(【5】チ参照)、従って、
  8[8(q−1)/2 − (−1)(qq−1)/8]
は q で割り切れるが、左端の因子 8 は q で割り切れないので、その右の [ ] 内が q で割り切れる:
  8(q−1)/2 − (−1)(qq−1)/8 ≡ 0 (mod q)
  ∴ 8(q−1)/2 ≡ (−1)(qq−1)/8 (mod q)

この最後の左辺は、 mod q において 8 が平方剰余か否かの Euler の基準。ところが 2 が平方剰余であることは、 8 が平方剰余であることと同値。

実際 u2 ≡ 2 (mod q) を満たす u が存在すれば w = 2u は w2 ≡ 8 を満たす(なぜなら w2 = (2u)2 = 4u2 ≡ 4⋅2)。逆に w2 ≡ 8 を満たす w が存在すれば、 u = w⋅2−1 は u2 ≡ 2 を満たす。

要するに、 2 が mod q の平方剰余か否かは、 (−1)(qq−1)/8 が +1 か −1 かに応じて定まる。より具体的には、素数 q が 8 の倍数 ±1 なら 2 は平方剰余だし、 q が 8 の倍数 ± 3 なら 2 は非剰余。言うまでもなく、これが第二補充法則である。

【10】 T(Tq − Tq) = Tq+1 − T⋅Tq が q で割り切れることの別証明。以下は、 Eisenstein 自身が第二証明の本体で使った論法により近い。

T = ζ − ζ3 − ζ5 + ζ7 は定数ではなく、 1 の原始 8 乗根 ζ の選び方に応じて 8 または −8 の値を持つ(【1】参照)。どちらの値を取る場合でも、その偶数乗 Tq+1 は、正の整数 8(q+1)/2 に常に等しい。

Tq も定数ではないが、その値は T の値と連動する(【4】参照)。すなわち、①素数 q が 8 の倍数 ± 1 なら、相対的に常に Tq = T が成り立ち、②素数 q が 8 の倍数 ± 3 なら、相対的に常に Tq = −T が成り立つ。①と②の区別は、素数 q の性質によって定まり、 ζ の選択とは関係ない。どちらのケースでも、 ζ を選び直したとき、それによってもし T の符号が変わるなら同時に Tq の符号も変わり、もし T の符号が保たれるなら同時に Tq の符号も保たれる。よって 2 因子の積 T⋅Tq は、 ζ の選び方と無関係に、一定の値を持つ(なぜなら ζ を選び直したとき、両因子とも値が変化しないか、さもなければ、両因子のそれぞれが同時に −1 倍される)。

以上のことから、
  ナ T(Tq − Tq) = Tq+1 − T⋅Tq = Eζ2 + Fζ4 + Gζ6 + H  ここで E, F, G, H は整数で q の倍数
の値(【8】ト参照)は、原始 8 乗根 ζ を別の 3 種類の原始 8 乗根 ζ3, ζ5, ζ7 のどれに置き換えても、変化しない。今、ナの ζ を ζ3, ζ5, ζ7 に置き換えたものをそれぞれニ・ヌ・ネとすると、次の等式が成り立つ:
  ニ T(Tq − Tq) = Eζ6 + Fζ12 + Gζ18 + H = Eζ6 + Fζ4 + Gζ2 + H
  ヌ T(Tq − Tq) = Eζ10 + Fζ20 + Gζ30 + H = Eζ2 + Fζ4 + Gζ6 + H
  ネ T(Tq − Tq) = Eζ14 + Fζ28 + Gζ42 + H = Eζ6 + Fζ4 + Gζ2 + H

ナ・ニ・ヌ・ネの左辺が同一なのは、値が等しい(変化しない)から。四つの式の左辺同士・右辺同士をそれぞれ足し合わせると:
  4T(Tq − Tq) = E(2ζ2 + 2ζ6) + F(4ζ4) + G(2ζ6 + 2ζ2) + 4H
ζ がどの原始 8 乗根でも ζ4 = −1、従って ζ6 = −ζ2 なので、上の等式は、
  4T(Tq − Tq) = −4F + 4H
と整理される。その両辺を 4 で割って:
  T(Tq − Tq) = −F + H

これは【8】の結論とも一致する。 F, H はそれぞれ q の倍数なので T(Tq − Tq) は q の倍数。 ∎

【11】 数値例。画像: 単位円に内接する正八角形

ζ = exp (2πi/8) とすると(画像の z):
  T = ζ − ζ3 − ζ5 + ζ7 = (ζ + ζ7) − (ζ3 + ζ5)
   = 2 − (−2) = 22 = 8

例1 q = 5 のとき:
  Tq+1 = (8)6 = 83 = 512
  Tq = T5 = ζ5 − ζ15 − ζ25 + ζ35 = ζ5 − ζ7 − ζ1 + ζ3 = −8
  T⋅Tq = −8
  ∴ T(Tq − Tq) = 512 − (−8) = 520  ← q = 5 で割り切れる!

その結果として 8(5−1)/2 = 64 ≡ −1 は(これは 2 が mod 5 の非剰余という Euler の基準である)、次の値と一致:
  (−1)(5⋅5−1)/8 = (−1)24/8 = (−1)3 = −1

例2 q = 7 のとき:
  Tq+1 = (8)8 = 84 = 4096
  Tq = T7 = ζ7 − ζ21 − ζ35 + ζ49 = ζ7 − ζ5 − ζ3 + ζ1 = +8
  T⋅Tq = +8
  ∴ T(Tq − Tq) = 4096 − (+8) = 4088  ← q = 7 で割り切れる!

その結果として 8(7−1)/2 = 512 ≡ +1 は(これは 2 が mod 7 の平方剰余という Euler の基準である)、次の値と一致:
  (−1)(7⋅7−1)/8 = (−1)48/8 = (−1)6 = +1

例3 q = 5 のとき:
  T2 = (ζ1 − ζ3 − ζ5 + ζ7)2
   = ζ2 + ζ6 + ζ10 + ζ14 + 2(−ζ4 − ζ6 + ζ8 + ζ8 − ζ10 − ζ12)
   = ζ2 + ζ6 + ζ2 + ζ6 + 2(−ζ4 − ζ6 + 1 + 1 − ζ2 − ζ4) = 2ζ2 + 2ζ6 + 4 − 2ζ2 − 4ζ4 − 2ζ6
   = 4 − 4ζ4  ← これは 4 − 4(−1) = 8 で (8)2 に他ならない
  T4 = (4 − 4ζ4)2 = 16 − 32ζ4 + 16 = 32 − 32ζ4  ← 64 = 82
  ∴ T5 = (32 − 32ζ4)(ζ − ζ3 − ζ5 + ζ7)
   = 32ζ − 32ζ3 − 32ζ5 + 32ζ7 − 32ζ5 + 32ζ7 + 32ζ − 32ζ3
   = 64ζ7 − 64ζ5 − 64ζ3 + 64ζ  ← これは 648

q = 5 のとき、例3と例1を組み合わせると:
  T5 − T5 = 65ζ7 − 65ζ5 − 65ζ3 + 65ζ
確かに各係数は 5 の倍数だが、式の値 658 は普通の意味での 5 の倍数ではない。
  T(T5 − T5) = 65(ζ − ζ3 − ζ5 + ζ7)(ζ − ζ3 − ζ5 + ζ7)
   = 65(4 − 4ζ4) = 260 − 260ζ4  ← 例3の T2 を再利用

この最後の値は、例1に現れた 5 の倍数 520 と一致。【8】や【10】の表記で言えば F = −260, H = 260 に対する −F + H = 520。

✿

Tq − Tq の各係数が q の倍数――という事実を具体例で直接的に確認しようとすると、ややこしく、非効率であることが感じられる。というのも、 T の値は整数の平方根に過ぎない。根号一つで表現できるものを、原始 q 乗根たちの線型結合として扱う――というのは、実用上の観点からは、無駄な遠回りだろう。

けれど「そのような遠回りができる」という事実それ自体が、重大なのだ! 原始 q 乗根たちが作る「高次元の世界」(円分体)の中に、比較的身近な「平方根の世界」(二次体)が埋め込まれている。だからこそ、正17角形の計算の最初のステップで、数十項の複雑な掛け算の結果が、結局、単なる2次方程式の2解になる。あの「魔法のような簡約」を逆方向から眺めている。

内部の住民にとってはカオスのように、星が入り乱れている銀河系。だが遠く離れて外側から見ると、それはきれいな「円盤状」の構造を持つ。円分体の中の二次体というのは、そんな「銀河平面」といえるかもしれない、例えるなら。

✿ ✿ ✿


2024-11-19 相互法則: ガウスの第六証明・現代版

#遊びの数論 #相互法則 #1 の原始根 #円分多項式 #ガウス和 #(35)

「平方剰余の相互法則の第六証明」を現代化した形で記す。アイゼンシュタイン版(1844年)と比べさらに透明で、ほとんど一点の曇りもない。

「30日の月の(5・10・15・20・25・30日)は全部曜日が違う」という程度の、たわいもない日常的事実もまた、群論の立派な応用。抽象代数をうまく使うと、話が簡潔・明快になる。ブルバキ以降、少々やり過ぎと思われる事例も散見されるが…

このメモでは「乗法群」という言葉すらあえて使わず「普通に掛け算ができる・逆数がある」などとのんきな表現を使っている。しかし「整数の平方根」のようなものを「整数の仲間」と考えた場合、「約数」「互いに素」「素因数」といった基本的な(はずの)概念にも、微妙な陰影が生じる…

1 の原始 p 乗根から派生する無理数の世界。その世界の数をうまく組み合わせると、「整数の平方根」になること――つまり「難解そうなタイプの無理数の世界の中に、比較的身近な(一見異なるタイプの)別の無理数の世界が、寄せ木細工のように含まれている」こと。

解と係数の関係からすれば、そう驚くことでもないのだが、そのような2次式が存在するということ自体が――「11乗根のような浮世離れした数たち」を足したり引いたりして必ず「普通の平方根」を作れる、というメカニズムは――、神秘的ですらあるっ!

一見意味不明な「無理数同士の足し算・掛け算」などの結果が、思いがけずシンプルな数になるという事例(Morrie の法則の類い)は、好奇心を刺激する。少なくともその一部は、上記の現象(円分体の中の二次体)と関係しているのだろう。

✿

p を 3 以上の素数とする。 1 の原始 p 乗根 z を任意に選択して、固定する。 Gauß 和
  Sp(n) =  { from k=1 to p−1 } (k/p) zkn
は、 n = 0 のとき、またはより一般的に n が p の倍数のとき、 0 に等しく、それ以外のとき ±p あるいは ±−p のどれかに等しい。従って、 0 に等しくないケースでは、 Gauß 和の平方は p または −p に等しい。どちらに等しくなるかは、 −1 が mod p の平方剰余か非剰余かに応じて決まる(第一補充法則によれば、それは p が 4k+1 型か 4k−1 型かという区別だ)。

以下では上記の事実を二つに分けて証明し、それを使って、平方剰余の相互法則を導く(Gauß の第六証明の現代化)。

定理1自明な Gauß 和
  (i) n ≡ 0 (mod p) なら:
   Sp(n) = (1/p) + (2/p) + ··· + ((p−2)/p) + ((p−1)/p) = 0
   特に Sp(0) = 0
  (ii) (1/p) + (2/p) + ··· + ((p−2)/p) = −((p−1)/p) = −((−1)/p)

証明 n = 0 なら各 k に対して、 zkn = z0 = 1 なので、 Sp(n) の定義の右辺はこうなる:
  (1/p) + (2/p) + ··· + ((p−1)/p)
より一般的に n ≡ 0 (mod p) のとき、つまり n が p の倍数 pm のときも(m: 整数)、 z が 1 の p 乗根という仮定から zkn = zkpm = (zp)km = 1km = 1 となり、同じ結論に。

G = {1, 2, ···, p−1} の要素の半数は mod p の平方剰余、残りの半数は非剰余なので、上記 p−1 個の Legendre 記号の和は 0 に等しい。これが (i) だ。 (ii) は (i) の式の左辺から移項しただけ。最後の等号は Legendre 記号の性質による。 Legendre 記号の値は、「分母」を法として「分子」を合同な別な数に置き換えても変わらない。この場合でいえば p−1 ≡ −1 (mod p) だ。 ∎

(i) を次のように証明することもできる。 n ≡ 0 という条件の下で、任意に選んだ Gauß 和 Sp(n) の値を、
  y =  { for k∈G } (k/p)  ただし G = {1, 2, ···, p−1}
とする。 mod p の任意の平方非剰余 c を選択して、固定すると:
  (−1)y = (c/p) { for k∈G } (k/p) =  { for k∈G } (ck/p) =  { for k∈G } (k/p) = y  ❶
  ∴ −y = y つまり y = 0

(i) があらためて示された。❶の後ろから2番目の等号は、「曜日ばらばらの原理」に基づく。すなわち mod p において k が G = {1, 2, ···, p−1} の範囲を動くとき、 ck も同じ範囲を過不足なく動く(なぜなら非剰余 c は p の倍数ではない)。言い換えると、「各 k ∈ G をちょうど1回ずつ考えること」と「各 k ∈ G に対して ck をちょうど1回ずつ考えること」は mod p では全く同じ。

定数 c が p の倍数でない限り、これは常に成り立つ。この種の考え方は、「それ自体」をテーマとすると無味乾燥かもしれないけど、応用上すごく役に立つ。

✿

表記の簡潔化のため、記号 p で (−1/p)p を表すことにする。つまり mod p で −1 が平方剰余なら p は p そのものを表し、 −1 が非剰余なら p は −p を表すものとする。

定理2Gauß 和の平方) 自明でない Gauß 和 Sp(n) の平方は、次の値に等しい:
  S2 = (−1/p)p = p
 ここで S は Sp(n) そのものか、またはその −1 倍を表すが、 S の符号の区別は当面どうでもいい(下記)。

証明 考えているのは、「自明な Gauß 和」(0 に等しい。定理1参照)ではない。つまり n は p の倍数ではない。定理1とは反対に zn は = 1 ではなく、 1 の原始 p 乗根(非実数)だ。この zn をあらためて z と置くと、任意の
  Sp(n) =  { from k=1 to p−1 } (n/p) zkn
{ from k=1 to p−1 } (k/p) zk と書くことができる(要するに、基準とする 1 の原始 p 乗根 z を選び直せば、 zkn をシンプルに zk と書ける)。この置き換え後の Gauß 和を S とする。――実は zn をあらためて z とすると、 S は Sp(n) と等しくなるか、または −Sp(n) と等しくなる。けれど、ここでは Gauß 和の平方 S2 の値を問題にするのであり、 Gauß 和そのもの S の符号の違いは、結論に影響しない。

さて mod p では、集合 G = {1, 2, ···, p−1} の各元の間で普通に掛け算を行うことができ、 G のそれぞれの元の「逆数」も、同じ集合内に存在する。この性質を利用すると、 k と ℓ の (p−1)2 種類の組み合わせ(k と ℓ は、独立して範囲 G を動く)を p−1 種類の積の形にまとめることができ、ひいては (p−1)2 項の(2次元配列の)和を p−1 項の(1次元配列の)和に簡約できる。具体的には、
  S2 = [ { from k=1 to p−1 } (k/p) zk ] [ { from ℓ=1 to p−1 } (/p) z ] =  { for k∈G } { for ℓ∈G } [ (kℓ/p) zk+ℓ ]
について、各 k, ℓ に応じて G の元 m ≡ kℓ−1 (mod p) が定まるので、それを使って k を ℓm と書くことにしよう(k ≡ ℓm)。 ℓ−1 ∈ G は p の倍数でないから、 k が G を動くとき、 m も過不足なく同じ範囲を動く。すなわち※1:
  S2 =  { for k∈G } { for ℓ∈G } [ ((ℓm)ℓ/p) zℓm+ℓ ] =  { for m∈G } { for ℓ∈G } [ (m/p) z(m+1)ℓ ]
   =  { for m=1 to p−1 } (m/p) { from ℓ=1 to p−1 } (zm+1)  ❷

第一に m+1 ≢ 0 (mod p) なら zm+1 は 1 の原始 p 乗根(それを x とする); よって m = 1, 2, ···, p−2 のそれぞれに対して、❷の内側の総和は、
   { from ℓ=1 to p−1 } x = x + x2 + ··· + xp−1 = −1
等しい。第二に m = p−1 に対して zm+1 は 1; そのとき❷の内側の総和は、 p−1 個の 1 = 1 の和(つまり p−1)に等しい。❷の外側の総和をこれら二つのケースに分けて考え、整理すると※2:
  S2 =  { from m=1 to p−2 } [ (m/p)(−1) ] +  { from m=p−1 to p−1 } [ (m/p)(p−1) ]
   = −[ { from m=1 to p−2 } (m/p)] + ((p−1)/p)(p − 1) = −[ { from m=1 to p−2 } (m/p)] + ((p−1)/p)p − ((p−1)/p)  ❸

❸の右辺第1項・第3項は、定理1 (ii) により消滅。つまり:
  ❸ = −[−((p−1)/p)] + ((p−1)/p)p − ((p−1)/p) = ((p−1)/p)p = ((−1)/p)p = p となる。 ∎

〔参考〕 ❸から次のように進めることも可能。
  −[ { from m=1 to p−2 } (m/p)] − ((p−1)/p) + ((p−1)/p)p = −[ { from m=1 to p−1 } (m/p)] + ((p−1)/p)p = −0 + (−1/p)p = p
後ろから2番目の等号では、定理1 (i) を [ ] 内に適用。

✿

ここまでは平方剰余の相互法則というより Gauß 和の基礎の話で、それ自体いろいろな面白い応用を秘めている。さて、本題の相互法則だが、ここで次の定理を使うと、ほとんど自動的に証明される。あっけないほど、あっさりと!

定理3Gauß 和の「素数−1」乗) q を 3 以上の素数(p とは異なる)とする。任意に選んだ非自明な Gauß 和 Sp(n) を単に S で表すと:
  Sq−1 ≡ (q/p) (mod q)

証明 定理2と同様に zn をあらためて z と置く。 S および Sq の符号は曖昧になるが、ここでは S の偶数乗(q−1 乗)を問題にしているので、 S の符号は結論に影響しない。「新入生の夢(拡張版)」を適用すると、「和全体の q 乗」が「各項の q 乗和」と合同になる※3:
  Sq = { { from k=1 to p−1 } [ (k/p) zk ]}q ≡  { from k=1 to p−1 } [ (k/p)q (zk)q ] =  { from k=1 to p−1 } [ (k/p) zkq ] (mod q)
最後の等号は Legendre 記号の値が +1 or −1 であることと、 q が奇数であることに基づく(±1 を奇数乗しても、符号を含めて値は変わらないから、奇数乗を省略できる)。

上の式の右辺に関連して、 k が 1, 2, ···, p−1 を動くとき、 kq も同じ範囲を過不足なく動くので、もしも Legendre 記号の「分子」が kq だったなら、この総和は、 1 の原始 p 乗根に関する Gauß 和 S に等しくなっていた。もしも [ ] 内を (q/p) 倍できれば、この事実を活用できる。でも (q/p) は −1 かもしれないので、単純に (q/p) を掛けると(場合によっては右辺の値が変わり)せっかく成り立っている合同式が破壊されてしまう。そこで、代わりに (q/p)(q/p) を掛け算しよう。それなら、一つの (q/p) が +1 でも −1 でもトータルでは 1 倍したのと同じなので、総和の各項の値は変わらず、合同式が維持される※4:
  Sq ≡  { from k=1 to p−1 } [ (q/p)(q/p)(k/p) zkq ] = (q/p { from k=1 to p−1 } [ (kq/p) zkq ] = (q/p) S (mod q)

p または −p の平方根 S を「整数の仲間」(代数的整数)と考えた場合、 p = ±S2 は S で「割り切れる」。しかし別の素数 q は ±p の平方根とは「無関係」なので、 S で「割り切れない」。実は S2 = ±p と q は、互いに素(真の公約数を持たない)。ましてや S2 の「約数」である S は、 q と互いに素。要するに、上の合同式の両辺を S で割ることが許され、その結果は:
  Sq−1 ≡ (q/p) (mod q)
これが示されるべきことだった。 ∎

〔付記〕 S = Sp(n) の場合には最初から符号の問題はないが、もし符号が反転して S = −Sp(n) となっていても、その場合には Sq の符号も反転しているので、「両辺を S で割る」操作により符号の反転は打ち消し合う。すなわち、上記 Sq についての合同式において、両辺に含まれる変数 S を Sp(n) に置き換えた場合、両辺の値は変化しないか、または両辺の値はどちらも −1 倍される。いずれのケースでも、置き換え後の合同式は正しい。

定理4平方剰余の相互法則: Gauß の第六証明) 相異なる 3 以上の素数 p, q について:
  (i) p または q が 4k+1 型なら (p/q) = (q/p)
  (ii) p, q が両方 4k+3 型なら (p/q) = −(q/p)

証明 p は単なる整数(p または −p)なので、われわれはそれを「とある整数」を表す文字として扱うことができる。 Euler の基準から:
  (p/q) ≡ (p)(q−1)/2 (mod q)  ❹
定理2(Gauß 和の平方)により:
   = (S2)(q−1)/2 = Sq−1
定理3(Gauß 和の「素数−1」乗)により:
   ≡ (q/p) (mod q)

以上を要約すると:
  (p/q) ≡ (q/p) (mod q)  ❺
❺の両辺とも値は +1 または −1 だが、 +1 ≢ −1 (mod q) なので、❺の左辺と右辺は(合同というだけでなく)整数として値が等しい:
  (p/q) = (q/p)  ❻

もし p が 4k+1 型なら p = p なので※5、 ❻は直ちに (i) を意味する。もし p が 4k+3 型でも、 q が 4k+1 型なら、❻の左辺は、
  (−p/q) = (−1/q)(p/q)
に等しく、しかも (−1/q) = +1 なので(第一補充法則)、やはり (i) が成立。一方、もし q も 4k+3 型なら (−1/q) = −1 なので(第一補充法則)、❻の左辺は、
  (−p/q) = (−1/q)(p/q) = −(p/q)
に等しく、それが❻の右辺に等しいのだから (p/q)(q/p) は符号が逆。つまり (ii) が成り立つ。 ∎

定理4は、相互法則の「普通の形」(−1 の累乗を使った表現)と同じ意味。実際、定理2と Euler の基準から:
  p = S2 = (−1/p)p = (−1)(p−1)/2 × p
これを❹に代入すると:
  (p/q) ≡ [(−1)(p−1)/2 × p](q−1)/2 (mod q)
   = (−1)(p−1)/2⋅(q−1)/2 × p(q−1)/2
   = (−1)(p−1)/2⋅(q−1)/2 × (p/q)
この最後の等号は、 p (mod q) についての Euler の基準による。従って、❺から:
  (q/p) ≡ (−1)(p−1)/2⋅(q−1)/2 × (p/q) (mod q)
この両辺は +1 or −1 なので ≡ を = に置き換えることが可能。両辺を (p/q) 倍して (p/q)(p/q) = 1 に注意すると:
  (q/p)(p/q) = (−1)(p−1)/2⋅(q−1)/2
相互法則の「普通の形」が得られた。右辺の指数については、もちろん (p−1)(q−1)/4 と書いてもいい。

〔参考文献〕
Lemmermeyer (2000): Reciprocity Laws, pp. 94–95
Aigner & Ziegler (c2010): Proofs from THE BOOK (4th ed.), pp. 27–29
Ireland & Rosen (1990, 1992): A Classical Introduction to Modern Number Theory (2nd ed.), pp. 72–73

✿

注釈

※1 (/p) は +1 or −1。どっちにしても (/p)(/p) = 1。よって:
  (ℓmℓ/p) = (/p)(/p)(m/p) = 1 × (m/p) = (m/p)
一般に「分母」が同じ Legendre 記号同士は、「掛け算」することができる。掛け算の結果は、「分母」は同じままで(この点は普通の分数の掛け算と異なる)、「分子」同士は通常の積(この点は普通の分数と同じ)。ただし具体的な数値の場合、「分子」の積については、「分母」を mod として簡約してもいい。(本文に戻る

※2 「m = 1 から p−1 まで」に対する総和を、「m = 1 から p−2 まで」の区間と「m = p−1 から p−1 まで」の区間に分けて考える。後者は「区間」といっても m = p−1 に対する(一つの)項しか含まず、要するに、
  (m/p)(−1)
の m に p−1 を代入するだけ。(本文に戻る

※3 足し合わされる p−1 個の項を A1, A2, ···, Ap−1 とすると:
  (A1 + A2 + ··· + Ap−1)q ≡ (A1)q + (A2)q + ··· + (Ap−1)q (mod q)
ここで Ak に当たる項は、実際には (k/p) zk だから、その q 乗は、
  [(k/p) zk]q = (k/p)q (zk)q
となる。(本文に戻る

※4 足し合わされる各項において、 (q/p)(k/p) を「掛け算」することもできるが、 (q/p) は 1 または −1 の値を持つ定数(その値を仮に c とする)なので、それを総和記号の外側にくくり出すことも可能。こんな感覚で:
  ∑ cAk = (cA1 + cA2 + ··· + cAp−1) = c(A1 + A2 + ··· + Ap−1) = c ∑ Ak
本文では、各項に二つずつある因子 (q/p) のうち、一つを項の内部での「掛け算」に使い、もう一つを総和記号の外側にくくり出している。(本文に戻る

※5 記号 p の定義は (−1/p)p だが、第一補充法則によると p が 4k+1 型なら (−1/p) = +1 で、 p が 4k+3 型なら (−1/p) = −1 だ。(本文に戻る

✿ ✿ ✿


2024-11-20 「神の証明」の簡単化についての覚書 ガウスの第六証明

#遊びの数論 #相互法則 #ガウス和 #(35)

前回紹介した「第六証明」のアレンジは、 Erdős のいう「神の証明集」に基づく(それぞれの定理について、最もエレガントな証明法を集めた天界の書物)。美しい証明には違いないが、振り返ると、幾つか「もっと簡単にできるのでは」と思われる部分もある。

もしも「数学のギネスブック」のようなものがあったとしたら、「平方剰余の相互法則」は「最も多くの別証明が考案・公表された定理」として、そこに掲載されるらしい。多くの研究者が何度もこの定理に取り組んだのは、だてや酔狂ではないし、ましてや「本当に正しいのか?」と疑問を感じて、再証明を試みたわけでもない。

いうなれば、幾つもの国境にまたがって延びる山脈。「同じ一つの山脈」だけど、例えばイタリア側から登るのとフランス側から登るのとでは、全く別の風景を楽しめる。どのコースの展望も素晴らしいのだ!

✿

(1) どの著者も Euler の基準、
  (p/q) ≡ (p)(q−1)/2 = Sq−1 (mod q)
と Gauß 和 S を結び付けるために、 Sq(q/p)S (mod q) の両辺を S で割っている。合同式の両辺を何かで割るという操作は、どうしても技術的な陰影を伴う。「両辺を S で割ることが許される」と言わねばならない…。ほんの少しアプローチを変え、 Euler の基準の両辺を事前に p 倍して、
  (p/q)p ≡ (p)(q+1)/2 = Sq+1 (mod q)
にしておけば、代わりに Sq(q/p)S (mod q) の両辺を S 倍することで、同じ結論に至る。「予想の 45° 斜め上をいく  i  の活用」の「ス」では、既にこの小さなアイデアを使っている。

(2) p についてのガウス和の平方 S2 が、 p の属性に応じて +p または −p になるという基本事実だが(定理2)、「神の証明集」(を目指したもの)の著者 Aigner & Ziegler は、 Lemmermeyer (2000) の方法を採用している。それは 1 から p−1 までについての総和を 1 から p−2 までと、最後の p−1 の二つに分けるというアイデアで、 Ireland & Rosen の際物きわもの的な証明(クロネッカー博士の異常な足し算)に比べると、はるかに自然だが、平明さの点では最善ではないかもしれない。「ガウス和の平方(その2)」で観察したように、この問題は、
  s1 + s2 + ··· + sp−1 = ∓(p−1)
の各 sj が等しいことに帰着する。この経路から攻略した方が、分かりやすいのではないか。各 sj が等しいことを示すのは、本質的には易しい――原始 p 乗根 z を z2 などに置き換えても S2 の値は一定なのだから、直観的に言って各 zj の係数は対称的でなければならない。

その事実を直接証明するには、 z を zg に置き換えて何が起きるか観察すればいい(g は mod p の原始根)。しかしその方法だと二重の指数を扱わねばならず、表記上、少しゴチャゴチャする。本質的に難しいわけではなく、副産物として重要な観察も得られるのだが、素直に「神の証明」を受け入れた方が、むしろすっきりするかも…

そこで別案。 mod p では 1, 2, ···, p−1 はどれも逆数を持つ。それを利用して、 s2 以降がどれも s1 と等しいことを証明できるであろう。基礎となるアイデア(ツール)は「神の証明」と似てるけど、総和記号を二つの区間に分ける必要がなくなる。

(3) ∑ が並んでいるだけで、難解そうな印象が生じるかもしれない(一般向けとしては)。これは単なる表記法の問題で、嫌なら書き換えればいい。

✿

以上のような点において、第六証明については、さらに工夫・簡単化できる余地があるかもしれない。

天界の「神の書」に収録されているのは、アッと驚くような巧妙で美しい証明かもしれないが、われわれが望むのは、必ずしも「神の視点での華麗なショートカット」ではない。多少野暮ったくても、実直で分かりやすいアプローチ。各ステップにおいて「なぜそうするのか・何をしたいのか」が明快。――そんな境地を理想としつつ、あくまで遊びとして、具体例を調べたり、思わぬ「発見」がないか散策したりしてみたい。

第六証明は、究極の目的地ではない。そこから冒険が始まる出発点なのだ…。

✿ ✿ ✿


2024-11-23 ガウス和からの cos 72°

#遊びの数論 #1 の原始根 #ガウス和 #(35)

cos 72° = (−1 + 5)/4 と cos 36° = (1 + 5)/4 をガウス和から求めることもできる。

古来からの伝承によると 5 = 2.2360679… の語呂合わせは「富士山麓さんろくオウム鳴く」だけなぜ「ふじさん」の「じ」が 2 なのだろう?

「じ」と「に」は音が似てるとか、「富士」の「士」は漢数字の「ニ」に似てるとか、一応の説明はつく。この平方根が 2.2 台ということは、直接計算からも明ら

ところで、小数4桁目が 0 なので、 2.236 (富士山麓)だけでも、実質、有効数字が5桁ある――円周率を 3.14 で済ませるのに比べたら、2桁(100倍)精密な近似値。そして 2.2 の半分は 1.1、そのまた半分は 0.55 ということ(なぜなら 11/2 = 5.5)、 0.036 の 4 分の 1 は 0.009 ということから、
  (5)/4 = 0.559…
それに 1/4 = 0.25 を加減すると:
  cos 36° = 0.809…
  cos 72° = 0.309…
これら三つの近似値は、実はどれも小数第4位が 0 なので、見かけ以上に優秀だっ!

† ロングバージョン 2.2360679 77499 789696(富士山麓オウム鳴く、名無し救急、名は黒々)

‡ 112 = 121 なので 222 = 22⋅112 = 484。一方 232 = 529。よって 2.22 = 4.84 < 5 < 5.29 = 2.32 の挟み撃ちが成り立ち、 5 は 2.2 台。 20 台の素数 23 と 29 の平方、
  232 = 529, 292 = 841
については、二つセットで「兄さんこの肉、肉は良い」と覚えることもできる。

✿

【1】 p を 3 以上の素数、 z を 1 の p 乗根のどれか(1 自身を除く)とする。 Gauß 和 S の最も一般的な定義は:
  S = { from k=1 to p−1 } [(k/p) zk]
すなわち、計 p−1 種類ある 1 の非実数 p 乗根 z1, z2, ···, zp−1 を全部足し合わせる――ただし指数 k が mod p の平方非剰余なら、それを −1 倍して足す――というのである。

例えば p = 5 の場合、
  S = z1 − z2 − z3 + z4
となる。 S2 = 5 は確定しているが、 S そのものは z の選び方次第で ±5 のどちらにもなり得る。

正五角形の画像: 単位円上の偏角72⁰の点を z とする

もし z の偏角を 72° とするなら(z = cos 72° + i sin 72°)、上記 S において足し算される z1 と z4 がそれぞれ第1・第4象限にあること、引き算される z2 と z3 がそれぞれ第2・第3象限にあることは明らかだろう。だから、
  S = (z1 + z4) − (z2 + z3)
の一つ目の丸かっこ内は実部が正、二つ目の丸かっこ内は実部が負。従って S の実部は正であり、 S = +5 となる。虚部が消滅して S が実数になる訳は、どちらの丸かっこ内も、実部が同じで虚部の符号が反対だから。
  S = (u + iU + u − iU) − (v + iV + v − iV) = (2u) − (2v)
のような計算となる(u, v は実部、 U, V は虚部)。より具体的には、
  u = cos 72°, v = cos 144° = −cos 36°
なので、
  S = 2 cos 72° − 2 cos 144° = 2 cos 72° + 2 cos 36°

この S が 5 = 2.236… に等しいので、上の式の両辺を 2 で割ると:
  ア cos 72° − cos 144° = cos 72° + cos 36° = (5)/2 = 1.118…

この等式は、特に面白くもない。もっとも z1 + z2 + z3 + z4 = −1 という事実から、あるいは同じことだが「マイナス½の定理」から、
  イ cos 72° + cos 144° = −1/2 よって −cos 144° = cos 72° + 1/2
なので、それをアに代入すると:
  cos 72° + cos 72° + 1/2 = (5)/2 よって 2 cos 72° = (−1 + 5)/2
  ∴ cos 72° = (−1 + 5)/4
一応この経路からも、間接的ながら、役に立つ結果が得られる。ついでにアから:
  cos 36° = (5)/2 − cos 72° = (25)/4(−1 + 5)/4 = (1 + 5)/4

もっと分かりやすく便利な考え方を【3】で紹介する。それは Gauß 和の別表現【2】に基づく。

【2】 上記の例でイをアに代入した部分についてよく考えると、実はこういうことだ:
  z1 + z2 + z3 + z4 = −1
  ∴ −(z2 + z3) = z1 + z4 + 1
これを、
  S = (z1 + z4) − (z2 + z3)
に代入すると:
  S = (z1 + z4) + z1 + z4 + 1

すなわち、 Gauß 和を求めるとき、一般に(p = 5 の例に限らず)、引き算される項(指数が平方非剰余)を省略して、代わりに、足し算される項(指数が平方剰余)だけをそれぞれ 2 回ずつ足し算し、さらに 1 を足すと、同じ結果になる。しかも、
  12, 22, ···, (p−1)2  ♫
の中に mod p の(0 以外の)全ての平方剰余がちょうど 2 回ずつ現れることは明そして z0 = 1。従って、 Gauß 和を次の簡潔な仕方で定義しても、最初の定義と同じ値になる:
  S = { from k=0 to p−1 } zkk = z0⋅0 + z1⋅1 + z2⋅2 + ··· + z(p−1)(p−1)

† 平方剰余とは mod p での「平方数」なので 12, 22 などは当然それに該当。さらに 12 ≡ (−1)2, 22 ≡ (−2)2 等々も明白だが、 mod p では −1 ≡ p−1, −2 ≡ p−2 等々なので、 ♫ の中には「同一種類の平方剰余」が 2 回ずつ含まれる。 12 ≡ (p−1)2 ≡ (−1)2 のように。「同一種類の平方剰余」について、 ♫ の両端から順々に二つずつがペアになる(p−1 は偶数なので)。

この別形式では、結果的に「指数 □ が平方剰余の z たち」が 2 回ずつ足し算され、 z0⋅0 = z0 = 1 は 1 回だけ足し算される。「指数 □ が非剰余の z たち」を考える必要はなくなる。

これらの項は通常 z の k2 乗、のように表現されるのだが、上の式では、二重指数を避けて、指数の k2 を kk と表記した。二重指数を使うと:
  S = { from k=0 to p−1 } zk2 = z02 + z12 + z22 + z32 + ··· + z(p−1)2
  = z0 + z1 + z4 + z9 + ··· + z(p−1)2

この別表現は、なかなか良い。係数の Legendre 記号がなくなって簡潔だし、総和の足し算が k = 1 からでなく k = 0 からスタート(それによって追加されるべき 1 が自然に追加される)。総和の項数が p−1 個ではなく、ちょうど p 個になる。ついでに cos 72° の根号表現の導出も、余裕で暗算できるほど簡単に(【3】参照)。

特定の p に対して z の値を具体的にどう設定するか? 1 の非実数 p 乗根であれば、論理的にはどれでもいいのだが、
  ウ z = cos /p + i sin /p = exp (2πi/p)
が、最も自然な選択だろう。最後の等号は Euler の公式による。このような指数関数表現は、一応、複素関数なので微妙に難解なイメージを伴うかもしれないが、気にせず「三角関数による実部・虚部の表現」の略記法と割り切ると、短くて便利な上、二重指数などとも相性がいい。 e を自然対数の底、 A, B, C を任意の値とすると exp A = eA, exp (A/B) = eA/B なので、指数が多少ゴチャゴチャしても、右肩に小さな文字でゴチャゴチャ書く代わりに exp の後ろに普通の文字でゆったり表記できる。
  [exp (A/B)]C = (eA/B)C = eAC/B = exp (AC/B)
なので、ウによって z を選ぶなら:
  S = { from k=0 to p−1 } exp (2πik2/p) = exp (2πi⋅02/p) + exp (2πi⋅12/p) + exp (2πi⋅22/p) + ··· + exp (2πi⋅(p−1)2/p)

通常の表現(Legendre 記号を係数とする)の方が便利なことも多いだろうけど、上記のような表現も、モダンでエレガント。

【3】 最初の p = 5 の例に戻り、別表現を使うと、
  S = z0 + z1 + z4 + z9 + z16
   = 1 + z + z4 + z4 + z = 1 + 2(z + z4) = 1 + 2(2 cos 72°)
つまり 5 = 1 + 4 cos 72° なのだから:
  cos 72° = (−1 + 5)/4

表現の形式的意味を明確にするため、あえて z0 + z1 + z4 + z9 + z16 と書いたが、実質的内容は「指数が平方剰余(0 を除く)のやつを 2 回ずつ足して 1 も足す」なんで(そして mod 5 の平方剰余は 1 と 4 なんで)、
  エ S = 2(z1 + z4) + 1
であることは、分かり切っている。
  z1 = cos 72° + i sin 72° と z4 = cos 72° − i sin 72°
の和が 2 cos 72° であることも明白。要するに、エは 4 cos 72° + 1 = 5 を含意する。

cos 72° を 4 倍して 1 を足すと 5 になるというのだから、 cos 72° の根号表現は、もはや明らか。

前述のように、通常版の Gauß 和表現から cos 72° − cos 144° = cos 72° + cos 36° = (5)/2 = (25)/4 なので、
  cos 36° = (1 + 5)/4
であることも明らかだろう。

cos 36° などの根号表現については、三角関数の多倍角経由(これはバリエーションが多い)の他、三角関数を使わず幾何学的にも、あるいは代数的にも、求められるけど、 Gauß 和経由は、ある意味、最も分かりやすい。高級な理論のモダンな別表現を(雰囲気だけでも)楽しみつつ、それを cos 72° やら正五角形の寸法やらの身近な問題に役立てるってのも、乙なもの。

【4】 Ireland & Rosen が紹介してることだが(p. 77, Exercise 11)、 Gauß 和の別表現が通常の表現と同等であることを、次のように示すこともできる。ちょっと天下り的だが軽妙なので、内容を転載しておく。

総和、
  オ  { from k=0 to p−1 } { [1 + (k/p)]zk }
をかっこの順序に従って考えると、 Legendre 記号は、① k = 0 のとき 0、② k が 1 以上の平方剰余のとき 1、③非剰余のとき −1 なんで、 [ ] 内は、①②③に応じて、それぞれ 1, 2, 0 になる。つまりこの総和では、 zk という累乗について、 k が 0 なら 1 倍して足し(すなわち z0 = 1 を普通に 1 回足し)、 k が 1 以上の平方剰余なら 2 倍して足し、非剰余なら 0 倍して足す(つまり無視する)。――これは「指数 k が平方剰余の zk を 2 回ずつ足し、 1 回だけ 1 も足す」という別表現の実質的内容に他ならない。

一方、同じ総和オについて、先に { } 内を展開して、
   { from k=0 to p−1 } [ zk + (k/p)zk ] =  { from k=0 to p−1 } [ zk ] + { from k=0 to p−1 } [ (k/p)zk ]
とすると、その右辺第1項は 0 に等しく、第2項は通常の Gauß 和の定義に等しい。なぜなら k = 0 のとき Legendre 記号の値は 0 なので、第2項の総和は k = 1 から足し始めるのと同じこと。――よってこの値は、通常の Gauß 和の定義と一致。結論として、通常の定義と別表現は同等。

〔付記〕 オの [ ] 内は、各 k に対して x2 ≡ k (mod p) の解の個数を表している(同書 p. 91)。 k が非剰余なら解は 0 個、 k = 0 なら解は x ≡ 0 の 1 個、 k が 0 以外の平方剰余なら解は 2 個(r2 ≡ k を満たす r が存在し、それと不合同な −r も平方すると ≡ k になる)。そのことからも、オの意味は、「指数 k が平方剰余なら zk を 2 倍して足す。ただし k = 0 のときの z0 = 1 は 1 倍して足す」。

【5】 この同等性の直観的(幾何学的)意味を p = 7 の例で記す(p が 5 などの 4k+1 型の場合と、 p が 7 などの 4k+3 型の場合とで、幾何学的イメージは少し異なる)。

画像: 正七角形の頂点の横座標

1 の原始 7 乗根を一つ選んで z とする。 Gauß 和の通常の定義を使うと、
  カ S = (z1 − z6) + (z2 − z5) + (z4 − z3)
となるが(1, 2, 4 は mod 7 の平方剰余、 3, 5, 6 は非剰余)、三つの丸かっこ内は、それぞれ「実部が同じで虚部の符号だけが反対の二つの数」の間の引き算。結果として、実部が消滅し、順にそれぞれ z1, z2, z4 の虚部が 2 倍され、カの値 S は純虚数(Gauß 和の理論によれば S = −7 または −−7)。三つの数の虚部がそれぞれ 2 倍されるのだから、虚部だけを考えるなら、カは、
  キ 2z1 + 2z2 + 2z4
の虚部と等しい。ただし、カと違って、キの実部は 0 にならないかもしれない――実部が等しい 2 数(例: z1 と z6)の間で引き算する代わりに、実部が一定の数(例: z1)を 2 倍してるので。ではキの実部は?

z1 と z6 は実部が等しく、 z2 と z5 は実部が等しく…等々なので、実部に関する限り、キの和の実部は、
  ク (z1 + z6) + (z2 + z5) + (z3 + z4) = z1 + z2 + ··· + z6
の実部に等しい。クの和は −1 に等しいから、キの実部も −1 だ!

ゆえに、もしキの実部を消してカの S と等しい純虚数を作りたいなら、キに 1 = z0 を足せばいい。これは結局、「指数が平方剰余の項を 2 回ずつ足した上で(キ)、 1 回だけ 1 も足す」ということ。

p = 7 に限らず、一般にこのような議論が成り立つ。【4】の証明は形式的操作に終始し、軽妙だが実質的意味が不鮮明だった。具体例で考えてみると、ほぼ当たり前のことだろう。

✿ ✿ ✿


<メールアドレス>