他のメモへのリンク集。リンク集を飛ばして、このページの前書きへ。本文の目次へ。21、22などの数字は、メモの番号です。
[遊びの数論] 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20
きちんとまとまった記事ではなく、雑多なメモ。誤字脱字・間違いがあるかもしれません。
2024-10-22 x17 = 1 の代数的解法/まとめ 補足・反省・展望
#遊びの数論 #1 の原始根 #4次方程式 #正17角形 #x17 = 1 #(33)
① x17 = 1 の 1 を移項して (x − 1)(x16 + x15 + ··· + x + 1) = 0 と書ける。右側の丸かっこ内 = 0 を解きたい。
② 次の恒等式を利用。
4(x16 + x15 + ··· + x + 1) = (2x8 + x7 + 5x6 + 7x5 + 4x4 + 7x3 + 5x2 + x + 2)2
− 17(x7 + x6 + x5 + 2x4 + x3 + x2 + x)2
③ すると x16 + x15 + ··· + x + 1 = 0 の左辺は、二つの8次式の積に分解。
④ y = x + 1/x と置くと、二つの4次式になる。
⑤ 4次式は、二つの2次式の積に分解。2次方程式の解は、機械的に求まる。
⑥ 第一の4次式に対応する解、第二の4次式に対応する解。計 8 個の解 y は全て実数で、③ の解 x の実部の 2 倍(実際には、便宜上 z = 2y と置いた: z は x の実部の 4 倍)。 ③ の 16 個の解の実部(2 個ずつ等しい)が全て判明。
⑦ ±√[(1 − C)/2] が解 x の虚部。ここで C は、③ の解のうち x から見て「偏角が 2 倍の数」の実部。
群論的考察も三角関数も不使用。真に良い解法ではないが、それなりに面白い。
この問題の本来の解法は、群論的。群論的考察を隠して、三角関数を使うことも珍しくない(多少のバリエーションはあるだろうが、天下り的に特定の解の和を考えることになる)。
群論的アプローチは、次の事実に基づく。 mod 17 の原始根(群論の言葉で言えば生成元)の一つを g とすると、 g0, g1, ···, g15 によって mod 17 の 0 以外の各要素が過不足なく表現される。この本来のアプローチについては、多くの文献・資料で見ることができる。ただし肝心の「なぜそれでうまくいくのか」の説明が抜けていたり、分かりにくかったりすることもあるようだ。
三角関数バージョンについて、複素数を使わない平易な方法を「週末は17角形で!」として以前記した。普通に複素数を使えば、工夫の余地がある。インドの Resonance 誌に掲載された方法†では、三角関数の使い方が(天下り的だが)うまく簡単化されていて、しかも、作図可能性の証明がそのまま正17角形の実用的な作図法を与えてくれる。作図の正しさの証明に関する限り、標準的な Richmond の方法より分かりやすいかも。
† D Surya Ramana: “Carl Friedrich Gauss”, Resonance, Vol. 2, Issue 6 (June, 1997), pp. 60–67
https://www.ias.ac.in/listing/articles/reso/002/06
https://web.archive.org/web/20220623063713/https://www.ias.ac.in/listing/articles/reso/002/06
とはいえ、結局のところ、天下り的な議論は良くない。本来の方法をバイパスする「別解」を 2 通り試してみて、ひしひし感じる。これは邪道だな…と。「週末は17角形で!」「x17 = 1 の代数的解法」、どちらも楽しい遊びだったし収穫もあったけど、技術的には正しくても、核心が不透明。実用上も、代数的解法では、途中で3次方程式の解を試行的に見つけなければならない。実行可能だが、面倒くさい。
最大の欠点は、恒等式
4(x16 + x15 + ··· + x + 1) = (2x8 + x7 + 5x6 + 7x5 + 4x4 + 7x3 + 5x2 + x + 2)2
− 17(x7 + x6 + x5 + 2x4 + x3 + x2 + x)2
の導出法が「便宜的」であること(この種の恒等式の存在を一般的に論じるためには、本来の理論に取り組まなければならないだろう)。得られた恒等式が正しいこと自体は、小学生の宿題のような単純計算で検証できる:
2 1 5 7 4 7 5 1 2 2 1 5 7 4 7 5 1 2 掛け算 4 2 10 14 8 14 10 2 4 2 1 5 7 4 7 5 1 2 10 5 25 35 20 35 25 5 10 14 7 35 49 28 49 35 7 14 8 4 20 28 16 28 20 4 8 14 7 35 49 28 49 35 7 14 10 5 25 35 20 35 25 5 10 2 1 5 7 4 7 5 1 2 4 2 10 14 8 14 10 2 4 足し算 4 4 21 38 55 106 123 140 174 140 123 106 55 38 21 4 4 [*]
回文8次式の平方は、回文16次式になるはずだから、実際には、和の中央の 174 がある列とその右側だけを求めれば足りる。掛け算の後半では、前半で得た行を再利用できる。以下も同様に、本当は約半分の計算で十分。こっちの掛け算は、ほとんど同じ行のコピペ。
1 1 1 2 1 1 1 1 1 1 2 1 1 1 掛け算 1 1 1 2 1 1 1 1 1 1 2 1 1 1 1 1 1 2 1 1 1 2 2 2 4 2 2 2 1 1 1 2 1 1 1 1 1 1 2 1 1 1 1 1 1 2 1 1 1 足し算 1 2 3 6 7 8 10 8 7 6 3 2 1 17倍 17 34 51 102 119 136 170 136 119 102 51 34 17 [**] 4 4 21 38 55 106 123 140 174 140 123 106 55 38 21 4 4 [*] 17 34 51 102 119 136 170 136 119 102 51 34 17 [**] 引き算 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
これで恒等式が成り立つことが確認された。∎
2024-10-25 正17角形の正道を求めて ガウス周期とガウス和
#遊びの数論 #1 の原始根 #正17角形 #x17 = 1 #(33)
正17角形(ないし 1 の17乗根)の研究は、原始根を使うと「魔法のように」うまくいく。そのこと自体は比較的よく知られているが、往々にして「なぜそれでうまくいくのか」が不明瞭。「魔法」の正体を探る。
§1.
1 の17乗根とは、17乗すると 1 になる数(つまり x17 = 1 の解)で、 x = 1 自身を除くと16個ある。それらは
x16 + x15 + ··· + x + 1
の(非実数の)根。どれも絶対値(原点からの距離)が 1、偏角は 360° = 2π の
n/17 に等しい(n = 1, 2, ···, 16)。幾何学的には「単位円の円周を17等分する点」で、作図に利用すれば正17角形を描ける。
これら 16 個の複素数(幾何学的には 16 個の点)は、どれも実部または虚部(またはその両方)が多少違うけど、対称的な性質を持ち、どの一つを基準としても大抵の議論は成り立つ。だが「頂点1」を基準にするのが最も素直で、具体的イメージを持ちやすいだろう。ここで「頂点1」というのは、偏角 2π/17 = 約 21° の複素数で、三角関数を使うなら、次のように表現される:
cos (2π/17) + i sin (2π/17)
= 0.9324722294… + i⋅0.36124166618…
〔参考〕 この実部について、近似分数 1588/1703 = 0.9324721… は、小数6桁まで正しい。虚部について 384/1063 = 0.3612417… も、小数6桁まで正しい。
(1588/1703 + 384i/1063)17
を実際に計算してみると:
=
0.999998705… +
i⋅0.000002368…
実部・虚部とも本当は無理数なのに有理数で代用してるんで、正確に 1 + 0i にはなり得ないが、まあまあの精度で「17乗すると 1 になる」。
「頂点1」「頂点2」「頂点3」などを全部同様に定義して 16 個の複素数をその順序で x1, x2, ···, x16 とすると(頂点1 が x1)、「頂点2」「頂点3」…は頂点1から見て偏角が2倍・3倍…なので:
x2 = (x1)2, x3 = (x1)3, ···
一般に、任意の n に対応する複素数 xn を (x1)n と表すことができる――基準とする一つの数 x1 の累乗として。ここで n は、本来的には 1 ~ 16 の自然数だが、 n = 0 の場合の (x1)0 = 1 という値も「頂点0」という合理的な意味を持つ(1 も 1 の17乗根)。さらに、指数 n が 17 以上になった場合、 17 で割った余りで置き換えることができる。例えば n = 19 とすると:
(x1)19 = (x1)17+2 = ((x1)17)(x1)2 = (x1)2 なぜなら (x1)17 = 1
あるいは n = 81 とすると:
(x1)81 = (x1)68⋅(x1)13
= ((x1)17)4⋅(x1)13
= (1)4⋅(x1)13
= (x1)13
なぜなら 81 を 17 で割ると商 4、余り 13 つまり 81 = 17⋅4 + 13
よって、少し柔軟な見方をすると、入力値 n は任意の整数と考えられる(この柔軟さが Gauß の理論の出発点)。それでも、 n の値を mod 17 で(つまり 17 で割った余りで)整理すると、出力 (x1)n は 17 種の値しか持ち得ない: n が 17 の倍数なら (x1)n は実数値 1 を持ち(頂点0に当たる)、 n が 17 の倍数以外なら、それを 17 で割った余りに応じて、 (x1)n は (x1)k, k = 1, 2, ···, 16 の 16 種の非実数値のいずれか(つまり頂点1~頂点16のどれか)に等しい。
§2. 16 種の非実数については、 (x1)n, n = 1, 2, ···, 16 と表すのが単純で分かりやすいように思えるが、 n が ≡ 1, 2, ···, 16 (mod 17) の 16 種の値を過不足なく取るなら、どういう順序で n を並べても構わない。 g を mod 17 の原始根とすると、 16 種の値 n ≡ gk (k = 0, 1, 2, ···, 15) は、まさにそのような性質を持つ。
〔補足〕 p を 3 以上の素数とする。 mod p の原始根 g とは、位数――すなわち gn ≡ 1 (mod p) を満たす最小の正の整数 n ――が p−1 であるような g である。 g が原始根なら gn (n = 0, 1, 2, ···, p−2) は、どれも不合同な(p で割った余りが異なる)値を持ち、それらの値は、全体として 1, 2, ···, p−1 と合同。
具体例として g = 3 を選択すると: 30 = 1, 31 = 3, 32 = 9。以下、次々と 3 倍して 17 以上になったら 17 で割った余りに置き換えると: 33 = 27 ≡ 10; 34 ≡ 10⋅3 = 30 ≡ 13; 35 ≡ 13⋅3 = 39 ≡ 5; 36 = 5⋅3 = 15; 37 = 15⋅3 = 45 ≡ 11; 38 ≡ 11⋅3 = 33 ≡ 16 (≡ −1)
これで −1 が出たので、さらに次々と 3 倍すると、前記の数のマイナス・バージョンが生じる: −3, −9, −10, −13, −5, −15, −11, −16 (≡ 1)。これで 30 = 1 に戻った(さらに続けたとすると、今のと同じ 16 個の数がループする)。マイナスの数は、 mod 17 では、17 を足した正の数と合同。表にまとめると:
k | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
---|---|---|---|---|---|---|---|---|
3k | 1 | 3 | 9 | 10 | 13 | 5 | 15 | 11 |
k | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
3k | 16 | 14 | 8 | 7 | 4 | 12 | 2 | 6 |
(x1)n の n に直接的に 1 ~ 16 を入れる代わりに、 3k を入れても(k = 0, 1, 2, ···, 15)、全体として見れば (x1) の指数として 1 ~ 16 を一回ずつ使ったのと同じことになる――順序は変わるが。指数の順序を単純に 1, 2, 3, 4, ··· とせず 1, 3, 9, 10, ··· などと奇妙に「シャッフル」することのメリットは、次第に明らかになるであろう。
円周17等分(正17角形の作図可能性など)に関連する伝統的な議論†では、 k が偶数のときの上記 3k の値(1, 9, 13 など)に対応する頂点(複素数)の和を A として、 k が奇数のときの 3k の値(3, 10, 5 など)に対応する頂点(複素数)の和を B とする。つまり:
A = x1 + x9 + x13 + x15 + x16 + x8 + x4 + x2
B = x3 + x10 + x5 + x11 + x14 + x7 + x12 + x6
「頂点1」と「頂点16」、「頂点2」と「頂点15」などは、それぞれ横座標が同じで縦座標の符号だけが逆。 A の 8 項は、そのような 4 ペア(共役複素数)から成り、足し合わせると虚部が消滅して実数になる。 B の 8 項についても同様。この「虚部が消滅して、値が実数になってくれる」というだけでも A, B の設定は便利。単純に
A = x1 + x2 + ··· + x8
などとしてしまっては、和が実数になってくれない。しかし「和が実数になってほしい」というだけなら、
A = (x1 + x16) + (x2 + x15) + (x3 + x14) + (x4 + x13)
のように、横軸を挟んで反対側の頂点とペアを作れば何でもいいはず; gk を使うのには、もう少し深い意味がある。
† 慣用的に17乗根(一般に 1 の原始 p 乗根)の一つ(x1 など)をギリシャ文字の ζ で表し、A, B をそれぞれ η0, η1 で表すことが多い。「1 の原始 p 乗根」と「mod p の原始根」は別の概念。
ちなみに、簡単化された「三角関数バージョン」のアプローチでは、最初から横座標 cos だけを使う。複素数 xn の偏角を θn とすると:
a = cos θ1 + cos θ2 + cos θ4 + cos θ8
あるいは、同じことだが θ1 = 360°/17 = 約 21° を G とすると:
a = cos G + cos 2G + cos 4G + cos 8G
この 4 項の和は、上記 A の和のうち、 x1, x2, x4, x8 の実部だけを考え、残りの 4 項 x16, x15, x13, x9 を無視したもの。考慮される 4 項と無視される 4 項は、実部がそれぞれ等しいので、 8 項の和 A と比べると、 4 項の和 a は、ちょうど半分の値を持つ(虚部はどちらも 0)。同様に 3G, 5G, 6G, 7G の cos の和として、 B の半分の b を構成できる。初期状態で項の数が半分なので計算量が削減され、複素数を使わずに議論を進めることも可能。
以下では簡略な「三角関数バージョン」を使わず、本来の 8 項の和を考える。
§3. A, B の設定。2数の和と積(つまり A+B と AB)の値が分かれば、2次方程式 t2 − (A+B)t + AB = 0 の解として A, B の根号表現を決定できる(A, B を簡略化した a, b についても同様)。よって A+B と AB の値が肝心で、特に作図可能性の証明では、それらが「有理数と平方根の組み合わせの範囲」で表現可能でなければならない。
仮定により x1 は x16 + x15 + ··· + x + 1 = 0 の解、つまり (x16 + x15 + ··· + x1) + 1 = 0 が成り立つので、
x1, x2, ···, x16
の和は −1。それをどのように二つの組 A, B に分けても A + B = −1。しかし x1, x2 等はどれも非実数なので、よほどうまく分けないと、「8項和」同士の積 AB は整数や有理数にならないだろう。
A の一つの項 xm と B の一つの項 xn の積は:
(x1)m⋅(x1)n = (x1)m+n
指数 m+n を適宜 17 で割った余りで置き換えると、この積は (x1)0 = 1 または x1, ···, x16 のどれか。しかし積 1 つまり m+n ≡ 0 は不可能。なぜなら、それが起きるためには m ≡ −n (mod 17) でなければならないが、われわれの設定では:
A 組が m ≡ ±1, ±2, ±4, ±8 に対応
B 組が m ≡ ±3, ±5, ±6, ±7 に対応
符号が反対の指数は必ず同じ組の中にあって、A 組のどれかと B 組のどれかが符号反対の指数を持つことはあり得ない。ゆえに、64個の積の内訳は:
x1, ···, x16 のそれぞれが 0 個以上(トータルで 64個)
つまり:
AB = c1x1 + c2x2 + ··· + c16x16 各 ck は xk の個数(0 以上の整数)で総計 64
のみならず、組をさらに半々の項数に細分していって最終的に 2 項のペアになったとき、各ペアの指数は、何らかの n に関して ±n に対応する(言い換えれば、ペアは互いに逆数)。よって、符号が反対の指数の組は、必ずどれかのペアによって占有され、「あるペアと別のペアが符号反対の指数を持つこと」はない。その前段階の「二つのペアが集まった 4 項の小さな組」の指数は、何らかの ±m, ±n に対応している。よって、4 項の組と別の 4 項の組が符号反対の指数を持つこともなく、4 項ずつの二つの組を U, V とするなら、同じ
UV = C1x1 + C2x2 + ··· + C16x16 Ck の合計は 16
の形を持つ。
そうなる理由は、原始根 g の位数が p−1 であること(つまり gp−1 ≡ 1)。原始根の性質上、その半分の指数ではまだ ≡ 1 にならず、従って g(p−1)/2 ≡ −1 になること(これは Euler の基準とも関連)。よって指数 n = 3k は順に次のパターンを持つ:
n0 (≡ 1), n1, n2, n3, n4, n5, n6, n7;
n8 (≡ −1), −n1, −n2, −n3, −n4, −n5, −n6, −n7;
このような 16項から、一つおきに 8 項ずつを取り出して A 組、B 組を作るなら、符号が反対の指数は全部、同じ組に入る。四つに一つの割合で 4 項ずつを取り出して四つの組を作る場合も、そうなる。八つに一つの割合で 2 項ずつを取り出して八つの組(ペア)を作るときも、そうなる。
重要なのはこの構造; 具体的な g = 3 という選択に、特別な意味はない。 g として 3 以外の原始根を使っても――「シャッフル」の仕方が変わり、組内の要素の順序・組の順序は変わるかもしれないが――、本質的に全く同じ議論が成り立つ。
§4. 今、簡潔化のため x1 を単に z とすると、 A は ∑ zR の形の和。ただし R は 3k (k = 0, 2, 4, ···, 14) の値を持つ。この場合、指数 R = 3k は 3 の偶数乗なので、 k = 2ℓ とすると ℓ は整数。よって 3ℓ(あるいはその −1 倍)を平方すると 32ℓ = 3k = R になる。要するに R は mod p の世界において平方根(r2 ≡ R を満たす r)を持つ(このような数 R は、平方剰余と呼ばれる)。
対照的に B は ∑ zN の形の和。ただし N は 3k (k = 1, 3, 5, ···, 15) の値を持つ。この場合、上記と逆の理由から、 N は mod p では平方根を持たないことが示される(平方非剰余と呼ばれる)。要するに 16 個の非実数 zn を A, B 二つの組に 8 項ずつ分けたことについて、表面的には n が原始根 3 の偶数乗か奇数乗かで振り分けたのだが、別の角度から言うと、 n が「平方剰余」か「平方非剰余」かで振り分けている。値 A − B は Gauß 和と呼ばれるものの一種で、「mod 17 の 0 以外の各要素 n に対する次の総和」に当たる:
∑ (n|17) zn (n = 1, 2, ···, 16)
ここで (n|17) は Legendre 記号: n が mod 17 の平方剰余か非剰余かに応じて +1 または −1 の値を持つ。
さて、もし z を zg で(つまり z3 で)置き換えたら、何が起きるか。言い換えると z = x1 の代わりに、別の17乗根 z = (x1)3 = x3 を使うと?
もともと (x1)n だった項は (x3)n = ((x1)3)n = (x1)3n に変わるので、各項の指数は 3 倍される。つまり、もともと 3k だった指数は 3k+1 に。すると:
もともとの A = (x1)30
+ (x1)32
+ (x1)34
+ ··· + (x1)314 は、
もともとの B = (x1)31
+ (x1)33
+ (x1)35
+ ··· + (x1)315 と等しくなる。
もともとの B は (x1)32
+ (x1)34
+ (x1)36
+ ··· + (x1)316 になるが、
それはもともとの A に等しい(なぜなら 316 ≡ 1 ≡ 30)。
要するに、 z の値を x1 から x3 に変えると、もともとの A と B は入れ替わる!
§5. 上記 Gauß 和 A − B の平方を考えてみたい――というのも (A + B)2 − (A − B)2 = 4AB であり A + B = −1 は既知なので、 (A − B)2 を経由して積 AB について、手掛かりが得られるかも。 A − B は
(x1)30 − (x1)31 + (x1)32 − (x1)33 + ··· − (x1)315
= (x1)1 + (x1)2 − (x1)3 + ··· + (x1)16
のような値で、 16 個の17乗根が (x1) のべきとして表現され、並んでいる(符号は指数が平方剰余なら正、非剰余なら負)。その平方は 256 項あるはずだが、どんなに項があっても、原理的に各項は ±(x1)n (n = 0, 1, 2, ···, 16) のいずれかに等しい。この場合 ±1 の型の項(n = 0)は生じ得る; その型の項(+1 or −1)の合計を整数 s とする。それ以外の項については、 A, B そのものの定義と同様に (x1)3k を使って表すことにして、各 k に対応する係数(+1 or −1)の合計を整数 dk とする:
(A − B)2 = s + d0(x1)30
+ d1(x1)31
+ d2(x1)32
+ ···
+ d15(x1)315
ここで x1 を x3 = (x1)3 に置き換えると、左辺の A, B は入れ替わり、右辺において、整数 s, d0, ···, d15 は変わらないが、各指数 3k は 3k+1 に増える:
(B − A)2 = s + d0(x1)31
+ d1(x1)32
+ d2(x1)33
+ ···
+ d15(x1)316
(A − B)2 と (B − A)2 は等しい。それぞれを展開した各項も、完全に一致。よって上記二つの等式において、 (x1)1 の係数、 (x1)2 の係数、 (x1)3 の係数…は、それぞれ等しい――実際には (x1)n の形式ではなく (x1)3k の形式で表現されているのだが、対応する係数は一致: 下と上の (x1)31 の項の係数比較から d0 = d1 となり、 (x1)32 の項の係数比較から d1 = d2 となり、以下同様に進んで d2 = d3, d3 = d4, ··· となるので、結局、全ての dk は同一の値 d を持つ。 316 ≡ 1 ≡ 30 (mod 17) なんで、上下の式の右辺では全17項が1対1対応。 (x1)3k の一つ一つは (x1)n のどれかと過不足なく一致するので、次の結論に至る:
(A − B)2 = s + dx1 + dx2 + ··· + dx16 = s + d(x1 + x2 + ··· + x16) = s + d(−1) = 整数
∴ 4AB = (A + B)2 − (A − B)2 = (−1)2 − 整数 = 整数
よって AB = 整数/4 = 有理数(具体的には整数 or 整数の半分 or 整数の 4 分の 1)なので、作図可能性の証明に好都合な2次方程式が得られる。しかも、
AB = c1x1 + c2x2 + ··· + c16x16 各 ck は 0 以上で合計 64
ということが分かっている(§3)。これが有理数であるためには、 64 という項数を均等に 4 ずつ各 ck に配分して、
AB = 4(x1 + x2 + ··· + x16) = 4(−1) = −4
とするしかあるまい(厳密には証明が必要だが x1 は既約の16次式の根なので、15次以下の多項式の根にはなり得ない)。ちなみに、そのことから:
(A − B)2 = (A + B)2 − 4AB = (−1)2 − 4(−4) = 17
∴ A − B = ±√17
どちらの符号を選択するべきか直ちに明らかではないけど、この場合†、幾何学的考察から A > B なんでプラスだろう。
「原始根 g に基づき 16 個の非実数を 8 項ずつ二つの組 A, B に分ける」という巧妙な設定(Gauß による)が、このような考察を可能にしてくれた。
† 「1 の17乗根として具体的にどの数値を選んだか?」によって、結論は変わり得る。実際 z = x1 の代わりに z = x3 とすると A, B の値が入れ替わり A − B と B − A の値も入れ替わるのだから、 A − B が一定という保証はない(= 0 でない限り)。
§6. 一般に p を 3 以上の素数とするとき、 1 の非実数の p 乗根は p−1 個ある。その一つを z とすると p−1 個の根たちは:
z, z2, z3, ···, zp−1
p についての仮定から p−1 は合成数; 何らかの二つの自然数 e, f を使って p−1 = ef と分解される(p−1 は偶数なので e = 2 という選択肢は常にあるが、それ以外の選択肢もあるかもしれない)。 e 個の組を考え、各組が f 項の和になるようにすること――それが Gauß のアイデアの基本仕様であり、実装においては mod p での原始根 g を利用して「gk (k = 0, 1, 2, ···, p−2) と合同な指数 n を持つ zn」を一定の順序で、周期的に e 個の組に振り分ける。 f 項の Gauß 周期と呼ばれる。項数 f が合成数なら、再びそれを f = EF のように分解して、 E 個の小さい組(各組は F 項)に細分できる。第二ステップ以降では、第一ステップで使ったインデックス k を等間隔で振り分ける。例えば p = 13 の場合、(e = 3 などからスタートすることも可能だが)仮に最初に e = 2 として、
A 組 k = 0, 2, 4, 6, 8, 10;
B 組 k = 1, 3, 5, 7, 9, 11;
と分けたとすると、各組は 6 項から成る。第二ステップでは、再び E = 2 として一つおきに
A1 組 k = 0, 4, 8 A2 組 k = 2, 6, 10;
B1 組 k = 1, 5, 9 B2 組 k = 3, 7, 11;
と細分することもできるし、あるいは E = 3 として、3 項につき 1 項を取り出して
A1 組 k = 0, 6 A2 組 k = 2, 8 A3 組 k = 4, 10;
B1 組 k = 1, 7 B2 組 k = 3, 9 B3 組 k = 5, 11;
と細分することもできるだろう。
e 項のものを E 項ずつに分割する操作は、もちろん有限ステップで停止する。特別な場合として、 p が Fermat 素数(21, 22, 24, 28, 216, ··· のどれかに、 1 を足した数。それが素数になるケース)の場合、各ステップで「各組を二つの組に分割して、項数を半分(組の総数を 2 倍)にすること」ができる。例えば Fermat 素数 p = 17 = 24 + 1 の場合、 p − 1 = 24 = 16 を次々と半分にできる、 8, 4, 2 と。この操作は2次方程式を解くことと同等なので、 p が素数の場合、それが Fermat 素数なら、正 p 角形はコンパスと定規だけで作図可能。正5角形・正17角形が作図可能なのに正7角形が作図不可能なのも、 5, 17 は Fermat 素数だが 7 は違う、という理由による。
p = 17 のケースで、第2ステップ(以降)にも作図可能な数が得られること――それは §5 と同様の方法でも確認可能。例えば A を次のように分けた場合、A1 + A2 = A が作図可能な数であることは明白; 問題は積 A1A2 だが、この場合 x1 をその 32 乗である x9 で置き換えれば、各指数 3k は 3k+2 に増えて A1 と A2 が入れ替わるだろう。
A1 = (x1)30
+ (x1)34
+ (x1)38
+ (x1)312
A2 = (x1)32
+ (x1)36
+ (x1)310
+ (x1)314
この説明法が最善かどうかはともかく、積 A1A2 も作図可能な数であることの理論的裏付けが得られるだろう。よって和 A1 と和 A2 も、それぞれ作図可能な長さ。実際に計算を行えば、必ずそうなる――もはや「魔法のように」ではなく「当然のこととして」。
Gauß は、19歳のときのこの研究を誇りに思い、「自分の墓には正17角形を刻んでほしい」と願ったという(史実かどうかは不明)。これは実現されなかったらしい。時代背景として、正17角形のエレガントで実用的な作図法が発見されたのは、 Gauß が亡くなってから約40年後であった(とはいえ、その気になれば大きな碑を建てて、そこに近似的に正17角形を描くことは可能だっただろう)。
〔参考文献〕
[1] Ben Lynn: Number Theory, “23 Gaussian Periods”
https://crypto.stanford.edu/pbc/notes/numbertheory/gaussperiod.html
https://crypto.stanford.edu/pbc/notes/numbertheory/book.pdf
[2] Mathews: Theory of numbers, Chap. VII
https://archive.org/details/theoryofnumbers00math/page/184/mode/1up
[3] Davenport: Multiplicative Number Theory, §§2–3
2024-10-31 ガウス和の平方 その優美さゆえに
1 の原始 p 乗根†を任意に一つ選んで z とする(p は 3 以上の素数)。ガウス(の)和 S とは:
S = ±z1 ± z2 ± z3 ± ··· ± zp−1
ただし複号については、各項の z の指数 1, 2, 3, ···に応じて、それが mod p の平方剰余なら + とし、非剰余なら − とする。
この和には、秘められている――若かりし頃の Gauß が「これらの定理は、その優美さゆえに大変心を打つ」と記した‡魅惑的性質が。正17角形の研究とも関連。
† p 乗して初めて 1 になる数。 xp = 1 の解のうち x = 1 以外。
‡ D.A., art. 356:
quae theoremata propter elegantiam suam valde sunt memorabilia.
【1】 一番簡単な p = 3, 5 の場合は、直接計算も難しくない。 p = 3 の場合:
x1 = −1/2 + i√3/2 と x2 = −1/2 − i√3/2
…は 1 の原始3乗根(よく ω と ω2 で表される非実数)。どちらを z としてもいい(どちらを選んでも、他方は選んだ数の平方†)。仮に z = x1 すると、 z2 = x2 だ。 1 = 12 はもちろん平方数だが 2 は mod 3 の平方数ではない。よって、その場合の Gauß 和は z1 に +、 z2 に − が付いて…
S = +z1 − z2 =
x1 − x2 =
(−1/2 + i√3/2) − (−1/2 − i√3/2)
= i√3 ❶
† (x1)2 =
(−1/2
+ i√3/2)2
=
1/4
− i2√3/4
− 3/4
=
−1/2
− i√3/2 = x2
そして (x2)2 =
(−1/2
− i√3/2)2
=
1/4
+ i2√3/4
− 3/4
=
−1/2
+ i√3/2 = x1
この一見複雑そうな計算は、単に「偏角 ±120° の 2 倍 ±240° は ∓120° と同じ方位」と解釈可能。
あるいは z として = x2 を選択すると、 z の意味が変わり今度は z2 = x1 なので:
S = +z1 − z2 = x2 − x1 = (−1/2 − i√3/2) − (−1/2 + i√3/2)
= −i√3 ❷
❶ は x1 − x2 で ❷ は x2 − x1 = −(x1 − x2) なので、 −1 倍の違いがある。平方すれば、この符号の違いはなくなる:
S2 = (±i√3)2 = (±i)2(√3)2 = (−1)(3) = −3
結論 二つの原始3乗根のどっちを z としても、 p = 3 の場合の Gauß 和の平方は −3 つまり −p。
【2】 p = 5 の場合。画像では符号を考慮せず、単に線分の長さ(絶対値)が記されている。
符号も考慮すると、 1 の原始5乗根は…
x1 = (−1 + √5)/4 + i(√(10 + 2√))/4 と x2 = (−1 − √5)/4 + i(√(10 − 2√))/4
…そして、それぞれの共役(逆数でもある):
x4 = (−1 + √5)/4 − i(√(10 + 2√))/4 と x3 = (−1 − √5)/4 − i(√(10 − 2√))/4
これら四つは、単位円上でそれぞれ偏角が 72° の 1 倍・2倍・3倍・4倍の点に当たり、仮に z = x1 とすると z2 = x2, z3 = x3, z4 = x4。さて 1 と 4 はもちろん平方数だが、 2 と 3 は mod 5 の平方数ではないので、この場合の Gauß 和は:
z − z2 − z3 + z4 = x1 − x2 − x3 + x4 ☆
〔注〕 1 はいつでも平方数(平方剰余)なので、以下 z1 の前の + を省略し、指数の 1 も省く。
話を簡単にするため、実部・虚部を別々に考える。「x1 と x4」「x2 と x3」は、それぞれ虚部の符号が反対なので x1 + x4 = 0, −x2 − x3 = −(x2 + x3) = −(0) = 0 つまり ☆ の和の虚部は 0。一方、「x1 と x4」「x2 と x3」は、それぞれ実部が等しいので (x1 − x2) と (x4 − x3) は、実部が等しい。どちらも:
( ) 内の実部 =
(−1 + √5)/4 − (−1 − √5)/4 = 2√5/4
∴ ☆ の実部 = (x1 − x2) の実部 + (x4 − x3) の実部
= 4√5/4
= √5
観察 p = 5 の場合の Gauß 和の平方は 5 つまり p 自身に等しいようだ。 p = 3 の場合(S2 = −3)と似ているが、負ではなく正の数。
【3】 別の選択肢の例として z = x2 とすると、 ☆ は:
(x2) − (x2)2 − (x2)3 + (x2)4
= x2 − x4 − x6 + x8
= x2 − x4 − x1 + x3
なぜなら x6 = (x5)(x1) = 1(x1) = x1 等々。この場合の Gauß 和は次の値に等しいが、それは ☆ のちょうど −1 倍:
x2 − x4 − x1 + x3
= x2 − x4 − x1 + x3
= −x1 + x2 + x3 − x4
よって Gauß 和自体は、符号が変わって −√5 だが、平方してしまえば符号の違いは消え、 Gauß 和の平方は【2】と同じ 5 になる。
同様に z = x3 なら ☆ は x3 − x6 − x9 + x12 = x3 − x1 − x4 + x2 なので今のと同じ。 z = x4 なら ☆ は x4 − x8 − x12 + x16 = x4 − x3 − x2 + x1 なので【1】と同じ。
結論 四つある原始5乗根のどれを z としても、 p = 5 の場合の Gauß 和の平方は 5 つまり p 自身に等しい。
【4】 さて p が 7 以上の場合、実部・虚部の根号表現は複雑なので、上記のような直接計算は困難。しかしその場合でも、 Gauß 和が実数または純虚数になることは容易に示される。
例えば p = 7 として、六つの原始7乗根を
xn = cos (2nπ/7) + i sin (2nπ/7)
とする(n = 1, 2, ···, 6)。単純に z = x1 とし、各項の符号を確定しない状態で Gauß 和を記すと:
z1 ± z2 ± ··· ± z6 = x1 ± x2 ± ··· ± x6
p = 7 の場合の「x1 と x6」「x2 と x5」「x3 と x4」は、それぞれ共役。一般の p の場合、 xn と xp−n は共役。なぜなら z = x1 とすると xn = zn で xp−n = zp−n = zpz−n = z−n だが、 zn は (1, 0) から反時計回りに偏角が n 単位(正 p 角形の頂点 n 個分)進んだ点、 z−n は逆回りで偏角が n 単位進んだ点†。
† 正七角形の画像で、例えば n = 2 とすると zn は x2 に当たり、 z−n は x5 に当たる。どちらも (1, 0) から見て、円周上で頂点 2 個分の「移動」(回転)だが、前者と後者では回転の向きが正反対。
よって両者の実部(横座標)は等しく、虚部(縦座標)の符号は反対: 一方を u + vi とすれば他方は u − vi となる。もし n と −n ≡ p − n が両方とも平方剰余、または両方とも非剰余なら、そのペアに対応する Gauß 和の2項は、前に付く符号が同じ。つまり zn と zp−n になるか、または −zn と −zp−n になる。
zn = u + vi として、複号を使ってまとめると:
① ±zn ± zp−n = ±(u + vi) ± (u − vi) = ±2u 複号同順
となって、虚部が消滅。
同様のシチュエーションで、もし n と −n ≡ p − n の一方が平方剰余、他方が非剰余なら、今度は Gauß 和において zn = (u + vi) と zp−n = (u − vi) に付く符号があべこべになるので、2項の和は:
② ±(u + vi) ∓ (u − vi) = ±2vi 複号同順
となって、実部が消滅。
第一補充法則によれば、(ア) p が 4 の倍数より 1 大きい素数(5, 13, 17 など)のとき −1 は平方剰余、(イ) p が 4 の倍数より 1 小さい素数(3, 7, 11, 19 など)のとき −1 は非剰余。よって n と −n は(ア)なら「平方剰余か非剰余か」が一致:
(−1/p) = +1 ⇒ (−n/p) = (−1/p)(n/p) = +(n/p)
(イ)なら「平方剰余か非剰余か」が一致しない:
(−1/p) = −1 ⇒ (−n/p) = (−1/p)(n/p) = −(n/p)
〔注〕 分数に丸かっこを付けた (−1/p) などは Legendre 記号。
結局、 (p−1)/2 個の各ペアについて、(ア)なら①が起き Gauß 和 S は実数、(イ)なら②が起き Gauß 和 S は純虚数(Gauß 和の平方 S2 は、それぞれ正の実数・負の実数)。例として p = 7 なら(12 = 1, 22 = 4, 32 ≡ 2 は平方剰余、他の三つは非剰余)、ガウス和は:
z + z2 − z3 + z4 − z5 − z6
これが純虚数になるのだから、実部 = 0。つまり 2π/7 = θ として:
cos θ + cos 2θ − cos 3θ + cos 4θ − cos 5θ − cos 6θ = 0
この実部は、不思議ではない: cos θ = cos 6θ なので cos θ − cos 6θ = 0 となり(x1, x6 の横座標は等しい)、同様に cos 2θ − cos 5θ = 0, cos 3θ − cos 4θ = 0 だから、確かにトータルで 0。
他方、虚部について、 sin 6θ = −sin θ 等のペアを考慮すると:
sin θ + sin 2θ − sin 3θ + sin 4θ − sin 5θ − sin 6θ
= 2 sin θ + 2 sin 2θ − 2 sin 3θ = 2(sin θ + sin 2θ − sin 3θ)
この和が sin θ + sin 2θ − sin 3θ の 2 倍であることは分かるが、具体的な値は簡単には分からない。大ざっぱな目分量で sin θ ≈ 0.8, sin 2θ ≈ 0.95, sin 3θ ≈ 0.4 とすると 0.8 + 0.95 − 0.4 = 1.35 なので Gauß 和の虚部は 2.7 程度と推定されるが…
Gauß 和の理論によると、この「2.7 程度」の虚部の正体は、√7 = 2.645751311… である!
後で証明する予定だが、素数 p に対応する Gauß 和の平方 S2 は、正の整数 p または負の整数 −p のどちらか。どちらになるかは、 p が 4k+1 型か 4k−1 型かによる。
よって p = 7 のケースでは、次の美しい等式が成り立つ。
sin (2π/7) + sin (4π/7) − sin (6π/7) = √7/2
この一見シンプルな等式を三角関数の問題として導こうとするなら、不可能ではないにせよ、面倒だろう…。対応する p = 5 の場合の式は:
cos (2π/5) − cos (4π/5)
= √5/2
第1項の cos 72° と第2項の cos 144° = −cos 36° は、根号表現が明快なので――それぞれ (−1 + √5)/4 と (−1 − √5)/4――こちらの式の直接計算は難しくない。
Gauß 和は、正17角形の AB の計算にも活用可能。 A + B = −1 は既知、 (A − B)2 は p = 17 に対する Gauß 和の平方なので 17 に等しい。よって:
4AB = (A + B)2 − (A − B)2 = (−1)2 − (17) = −16
∴ AB = −4
8項式の平方を具体的に計算するまでもなく、要となる積 AB が確定するっ!
A − B = √17 については、既に別の方法で求めたが、 Gauß 和の理論を使う方が見通しが良い。
人との競争のためではなく、何かのための道具としてでもなく、ただその優美さ・奥深さゆえに、数論に心を遊ばせる。森の香りに引かれるように、星のきらめきに見とれるように。
Gauß 和の理論の全体像は、古典数論の範囲をはるかに超え、二次体などの代数的数論さえ通り越えて、解析的数論(積分などを整数論に応用する)と関連している。けれど Gauß 和 S そのものに深入りせず、主にその平方 S2 を考えるなら、初等的な扱いができる。
今回、例えば p = 5 のときの S = z − z2 − z3 + z4 について、入力 z の数値(根号表現)を直接的に考えた。その方が、どんな計算をしているのか具体的に分かりやすい。半面、 z は p − 1 = 4 種類の値(1 の原始5乗根・4種のいずれか)を取り得るので、場合分けが少々面倒。 S2 = (z − z2 − z3 + z4)2 を多項式として考えることもできる; p が 7 以上になると、具体的な z の根号表現は複雑なので、多項式として扱った方が良いだろう。(続く)