(遊びの数論32)

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

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



2024-09-24 「1 の5乗根」について (x2 + x/2 + 1)2 の利用

#遊びの数論 #1 の原始根 #4次方程式 #(32)

1 の5乗根とは、「5乗すると 1 になる数」つまり x5 = 1 の解。言い換えれば x5 − 1 = 0 の解。 x = 1 はもちろんその一つの解なので、 x5 − 1 は x − 1 で割り切れる。
  x5 − 1 = (x − 1)(x4 + x3 + x2 + x + 1)
x = 1 はこの右辺の一つ目の丸かっこ内をゼロにする。二つ目の丸かっこ内をゼロにする数、つまり次の関係を満たす x は、何か?
  x4 + x3 + x2 + x + 1 = 0  《あ》

教科書的には、両辺を x2 で割って y = x + 1/x と置くのだが、もっと直接的に下記のようにすることもできる。

(x2 + (1/2)x + 1)2 = x4 + x3 + (9/4)x2 + x + 1 という関係 †を利用。これは《あ》左辺より 5/4x2 過剰なので、次の式が成り立つ:
  x4 + x3 + x2 + x + 1 = (x2 + (1/2)x + 1)2 − (5/2x)2  《い》
恒等式 A2 − B2 = (A + B)(A − B) を使うと、《い》は…
   = (x2 + [(1 + 5)/2]x + 1)(x2 + [(1 − 5)/2]x + 1)
…となるので、《あ》は次と同値:
  x2 + [(1 + 5)/2]x + 1 = 0  《う》
  または x2 + [(1 − 5)/2]x + 1 = 0  《え》
《う・え》は2次方程式なので、単純計算で機械的に解けるっ!

† 恒等式 (A + B + C)2 = A2 + B2 + C2 + 2(AB + BC + CA) を使うと…
  (x2 + (1/2)x + 1)2 = (x2)2 + ((1/2)x)2 + 12 + 2(x2(1/2)x + (1/2)x⋅1 + 1⋅x2)
   = x4 + (1/4)x2 + 1 + x3 + x2 + x + 2x2 = x4 + x3 + (9/4)x2 + x + 1

*

《う》の判別式は、次の負数:
  ((1 + 5)/2)2 − 4⋅1⋅1 = (1 + 25 + 5)/4 − 16/4 = (−10 + 5)/4
その平方根は、虚数 ±(−10 + 25)/2 = ±i(10 − 25)/2 なので、《う》の解は:
  x = (−1 − 5)/4 ± i(10 − 25)/4  《お》
同様に《え》の解は:
  x = (−1 + 5)/4 ± i(10 + 25)/4  《か》

x5 = 1 にはちょうど五つの解がある: その一つは x = 1 だが、それ以外に《お》の二つの複素数と《か》の二つの複素数(それぞれ ± によって二つの数を表している)も「1 の5乗根」。上記の解法はスピーディーだけど、《い》の変形が天下り的でトリッキー。 (x2 + (1/2)x + 1)2 = x4 + x3 + (9/4)x2 + x + 1 さえ見えれば一本道だが、一目瞭然とは言い難い。さいわい《あ》を《い》にすることは、ひらめきに頼らなくても、アルゴリズム的に実行可能(入力の3次の係数の半分を、出力の1次の係数にするだけ)。

《あ》やそれと同様の(係数が回文的な)方程式に関する限り、一般の4次方程式として扱うくらいなら、 y = x + 1/x と置く方が手っ取り早い。そうと知りつつ、視野を広げ、あえて一般の4次方程式の例題として検討してみるのも、悪くあるまい。

〔参考文献〕 Gelin: Éléments de trigonométrie, p. 231
https://babel.hathitrust.org/cgi/pt?id=mdp.39015069248337&seq=237

*

画像1 の5乗根は、イメージ的には、「複素平面上で単位円に内接する正五角形」の五つの頂点。ただし 1 = 1 + 0i を――つまり座標 (1, 0) の点を――一つの頂点とする。《お》の実部は cos 72° に当たり、《か》の実部は cos 144° = −cos 36° に当たる(画像では、正負と無関係の「線分の長さ」を図示)。《お》の虚部は ±sin 36° で、《か》の虚部は ±sin 72° に等しい。

これらの数は一見複雑そうだけど、 18°, 36°, 54°, 72° の sin と cos は全部、分母が 4ということ(15°, 75° の sin と cos もそうだが)、そして sin 18° (= cos 72°) の分子が 5 − 1 であることだけ知ってれば、三角関数の基本公式を使って、他の値もだいたい何とかなる。例えば…
  sin 18° = (5 − 1)/4 ← これは知ってるとすると
  sin2 18° = (5 − 25 + 1)/16 = (6 − 25)/16  《き》
平方根が欲しいので、約分せずに、分母を平方数 16 のまま進めるのがコツ。しからば:
  cos2 18° = 1 − sin2 18° = 16/16 − (6 − 25)/16 = (10 + 25)/16  《く》
《く》の分子・分母の平方根を考えれば、容易に cos 18° (= sin 72°) の値を得る。分母が 4 ってことは分かってるので、分子としては 10 + 25 全体に根号を付けるだけ――二重根号、恐るるに足らず!

一方、《き》から《く》を引くと(倍角の公式):
  cos 36° = cos2 18° − sin2 18°
   = (10 + 25)/16 − (6 − 25)/16 = (4 + 45)/16 = (1 + 5)/4  《け》

45° < θ < 90° の角度については cos θ = sin (90° − θ), sin θ = cos (90° − θ) となる…。

しかし肝心の出発点となる sin 18° の分子は、 5 − 1 なのか 5 + 1 = 1 + 5 なのか。はたまた 1 − 5 なのか?

常識で考えれば、別に迷うことでもないだろう…。 sin 18° が正の数ということは明白。 5 = 2.2… なので 1 − 5 が分子になるわけないし、 1 + 5 = 3.2… を 4 で割った 0.8… は、 sin 18° としては、でか過ぎる。 sin 18° が sin 30° = 0.5 より大きいわけないっ!

⁂


2024-09-26 簡単な4次方程式 「色黒い」逆さに読んでも「いろくろい」

#遊びの数論 #4次方程式 #(32)

例題 x4 + 6x3 + 9x2 + 6x + 1 = 0 を満たす x を求める。

等号の左側にある4次式。 x の4乗の係数~0乗の係数(定数)は、左から読んでも右から読んでも、順に 1, 6, 9, 6, 1。こういう「どっち向きに読んでも同じ」という状況を回文的と称する――日本語の音節で言えば、「色黒い」とか「田植え歌」のようなもの。

係数が回文的な x についての4次方程式は、 x2 で割って y = x + 1/x と置くと y についての2次方程式になり、機械的に解くことができる(同様のテクニックは、4次方程式以外でも使える)。けれど、そのやり方は必ずしも便利ではなく(比較)、一般の4次方程式(回文的とは限らない)への発展性にも乏しい。別の良いアイデアは、与式の3次の係数(例題では 6)の半分を ℓ として、 (x2 + ℓx + 1)2 を考えること(詳細は後述)。
  x4 + 6x3 + 9x2 + 6x + 1 = (x2 + 3x + 1)2 − 2x2 = [x2 + (3 + 2)x + 1][x2 + (3 − 2)x + 1]
…と書けるので、次の2次方程式を解くことが、例題の4次方程式を解くことと同じ意味になる。
  x2 + (3 + 2)x + 1 = 0 または x2 + (3 − 2)x + 1 = 0

この手法を発展させ、より一般的に (x2 + ℓx + p)2 の形を考えることが、4次方程式の一般論の一つの入り口となる。

*

3次の係数の半分を ℓ とすることには、もちろん根拠がある。
  (x2 + 3x + 1)2
…を展開してみよう。説明の便宜上、 y = 3x + 1 と置くと:
   = (x2 + y)2 = (x2)2 + 2x2y + y2
   = x4 + 2x2(3x + 1) + (3x + 1)2  ← y を 3x + 1 に戻した
   = x4 + (6x3 + 2x2) + (9x2 + 6x + 1) = x4 + 6x3 + 11x2 + 6x + 1

こいつから 2x2 を引いてやれば、例題の「いろくろい」の4次式…
  x4 + 6x3 + 9x2 + 6x + 1
…とピッタリ一致。つまり例題の4次式は、次の式と等しい:
  (x2 + 3x + 1)2 − 2x2 = (x2 + 3x + 1)2 − ((2)x)2  《さ》

少し一般化して、とある数 ℓ を含む (x2 + ℓx + 1)2 を展開。上記の y に当たるものが ℓx + 1 になるので:
   = x4 + 2x2(ℓx + 1) + (ℓx + 1)2  ← y を ℓx + 1 に戻した
   = x4 + (2ℓx3 + 2x2) + (ℓ2x2 + 2ℓx + 1)
   = x4 + 2ℓx3 + (ℓ2 + 2)x2 + 2ℓx + 1  《し》

仮定の話として、もし《し》から何らかの2次式を引き算したものが、与えられた4次式…
  x4 + ax3 + bx2 + cx + d  《す》
…に一致するとしたら、《し》と《す》は4次・3次の項が同一でなければならない。理由は単純で、2次式を引き算しても、4次・3次の項は変わらないから。別に身構えるような大問題ではなく、4次の係数は既に《し・す》どちらも 1 なので、単に3次の係数の比較から a = 2ℓ つまり ℓ = a/2 とするだけ。要するに、4次式《す》を、
  (x2 + ℓx + p)2 − (ex2 + fx + g)  《せ》
…のような形に書き換えたければ(p, e, f, g は何らかの係数)、3次の係数の半分を ℓ とすることが出発点。この理屈が、実際に一般の4次方程式の解法に役立つためには、引き算される2次式 ex2 + fx + g が1次式の平方になってる必要がある、下記のように。
  (x2 + ℓx + p)2 − (qx + r)2  《そ》

このメモでは「簡単な4次方程式」(係数が回文的)だけを扱い、《そ》の真意に深入りすることはしないけど、原理的には、以下で述べる簡単な場合と全く同じ方針によって、一般の4次方程式を解くことができる。「係数が回文的」というのは特殊で限定的なケースではあるが、一般論の手掛かりとなり得るし、係数が回文的な4次式は、実用上もしばしば重要な意味を持つ(1 の5乗根参照)。

〔補足〕 もしも「e, f, g の選択は自由」だったら、「結果が《す》と等しくなるように、《し》から2次式を引き算すること」は簡単そうに思える。現実には ex2 + fx + g の部分は、2変数 q, r を使って (qx + r)2 の形にならねばならない(言い換えれば、 e = q2, f = 2qr, g = r2 のようになっている必要がある)――それが《そ》の意味で、一般の4次方程式に関して p, q, r を選択するアルゴリズムは、3次方程式の問題になる(別のメモ参照)。以下では「3次方程式を経由せず、いきなり2次方程式に還元できるケース」を扱う。

係数が回文的なら、《す》において d = 1, a = c なのだから、《し・す》で3次の項が一致するように ℓ を設定してしまえば、《し・す》の1次の項・定数項も自動的に一致する。

〔例〕 ℓ = 3 とすれば《し》は x4 + 6x3 + 11x2 + 6x + 1。これは、例題の x4 + 6x3 + 9x2 + 6x + 1 と比べて、2次の項を除く全部の項が等しい。

係数が回文的な4次式 x4 + ax3 + bx2 + ax + 1 は、ℓ = a/2 を使って (x2 + ℓx + 1)2 − ex2 と変形可能(そのことから、容易に二つの2次式の積に分解される)。ただし:
  e = (ℓ2 + 2) − b

〔証明〕 (x2 + ℓx + 1)2 は、《せ》において p = 1 の場合。この平方を展開した《し》は、仮定から x4 + ax3 + bx2 + ax + 1 とほとんど等しく、必要に応じて2次の係数だけを補正すれば完全に等しくなる(《せ》において f = g = 0 である)。《し》の2次項 (ℓ2 + 2)x2 から ex2 を引き算して、結果が《す》の2次項 bx2 に等しくなるとすると:
  (ℓ2 + 2)x2 − ex2 = bx2
  ∴ (ℓ2 + 2) − e = b つまり e = (ℓ2 + 2) − b ∎

冒頭の例題 x4 + 6x3 + 9x2 + 6x + 1 では、3次の係数を 2 で割って ℓ = 3、 b = 9 なので e = (32 + 2) − 9 = 2。つまり:
  x4 + 6x3 + 9x2 + 6x + 1 = (x2 + 3x + 1)2 − 2x2  《た》

〔注〕 e の決定に関して、上記の公式は必要不可欠なものではない。単に (x2 + 3x + 1)2 を実際に展開して、出てくる 11x2 を与式の 9x2 と比べてもいい(前者から 2x2 を引けば、後者と等しくなることは明白)。

*

(x2 + ℓx + 1)2 − ex2 の形さえ作ってしまえば、後は単純計算。その手順・表現がベストかどうかはともかく、機械的に正しい解に到達できる。 e の平方根を q とすると(つまり q2 = e):
  与えられた4次式 = (x2 + ℓx + 1)2 − q2x2 = (x2 + ℓx + 1)2 − (qx)2
平方の差 A2 − B2 は和・差の積 (A + B)(A − B) に等しいので:
   = [(x2 + ℓx + 1) + (qx)][(x2 + ℓx + 1) − (qx)] = [x2 + (ℓ + q)x + 1][x2 + (ℓ − q)x + 1]  《ち》
《ち》の二つの [ ] 内のどちらかの値が 0 になるとき、《ち》の積(それは与えられた4次式に等しい)は明らかに 0 になる。結局、この4次方程式の解(重解がなければ計 4 個ある)を求める問題は、次の二つの2次方程式の問題(重解がなければそれぞれ 2 個の解を持つ)に帰着する。
  x2 + (ℓ + q)x + 1 = 0 または x2 + (ℓ − q)x + 1 = 0  《つ》

われわれの例題の4次式は《た》なので、《ち・つ》を適用すると:
  x2 + (3 + 2)x + 1 = 0  《て》
  または x2 + (3 − 2)x + 1 = 0  《で》
《て》は、判別式 (3 + 2)2 − 4⋅1⋅1 = 9 + 2⋅3⋅2 + 2 − 4 = 7 + 62 が正なので、二つの実数解を持つ。
  《て》の解 = [−3 − 2 ± (7 + 62)]/2
《で》は、判別式 (3 − 2)2 − 4⋅1⋅1 = 9 − 2⋅3⋅2 + 2 − 4 = 7 − 62 が負なので(7 から引き算される 62 は 7 より大きい。それどころか 6 × 1.4 = 8.4 より大きい)、実数でない二つの(共役)複素数解を持つ。
  《で》の解 = [−3 + 2 ± (7 − 62)]/2
分子にある負数の平方根については、そうしたければ虚数単位 i を使って i(62 − 7) と書いても同じこと。

〔参考〕 数値的には《て》の解が −2.20710… ± 1.96756… = −0.23953… or −4.17467…; 《で》の解が −0.79289… ± (0.60936…)i。左端の複号の前の 2.20710… という数の並び(絶対値)は 3 + 2 = 4.41421… の半分に他ならない。これら四つの数を x4 + 6x3 + 9x2 + 6x + 1 に入れてみると、確かに誤差の範囲でゼロになる。

以上をまとめると、「解の公式」を明示的に書くことができる。実用上、大して役立たないけど、まぁ遊び…

回文的な4次方程式の「解の公式」 x4 + ax3 + bx2 + ax + 1 = 0 の解は次の通り。 ℓ = a/2, e = ℓ2 + 2 − b とすると:
  [−ℓ − e ± (2 + e − 4 + 2ℓe)]/2 または [−ℓ + e ± (2 + e − 4 − 2ℓe)]/2
一般には、これらは四つの相異なる数だが、重解が生じることはあり得る。

〔証明〕 《つ》の二つの2次方程式のそれぞれに、解の公式を適用しただけ。《つ》の一方の式は +q を含み、他方の式は −q を含むので、 q2 = e の q の符号の設定は、正でも負でも全体としては同じ結果: 一般性を失うことなく q = e とできる。判別式は (ℓ + q)2 − 4⋅1⋅1 = ℓ2 + 2ℓq + q2 − 4 = ℓ2 + e − 4 + 2ℓq などとなり、それが分子の大きな根号下に入る。∎

例1 x4 − 6x3 + 7x2 − 6x + 1 = 0 の解。 3次の係数 −6 を半分にして ℓ = −3。 (x2 − 3x + 1)2 = x4 − 6x3 + 11x2 − 6x + 1 は与式より 4x2 大きいので:
  与式 = (x2 − 3x + 1)2 − 4x2 = (x2 − 3x + 1)2 − (2x)2 = (x2 − 3x + 1 + 2x)(x2 − 3x + 1 − 2x)
  ∴ x2 − x + 1 = 0 または x2 − 5x + 1 = 0
代わりに e = ℓ2 + 2 − 7 = 4 の平方根 q = 2 を《つ》に当てはめても、同じ結論に。前者の解は (1 ± −3)/2、ちなみにこの共役複素数は、どちらも 1 の原始6乗根(−1 の原始3乗根)。後者の解は (5 ± 21)/2。「解の公式」に直接 ℓ = −3(従って −ℓ = 3)と e = 4 を代入しても同じ解を得る。全然便利じゃないけど。

例2 x4 + 2x3 + 3x2 + 2x + 1 = 0 の解。この係数 1, 2, 3, 2, 1 は、ちょっと面白い。エレガントな(?)解法として 12321 = (111)2 という整数計算を応用すると、与式 = (x2 + x + 1)2 となり、 ω と ω2 つまり (−1 ± −3)/2 が、それぞれ二重根であることが見て取れる。

本質的に同じ二つの掛け算(整数 vs. 整係数多項式)

   111                 x^2 + x + 1
   111                 x^2 + x + 1
   ───                 ───────────
   111                 x^2 + x + 1
  111            x^3 + x^2 + x
 111       x^4 + x^3 + x^2
 ─────     ───────────────────────
 12321     x^4 +2x^3 +3x^2 +2x + 1

同様に 1111 × 1111 = 1234321 だから:
  x6 + 2x5 + 3x4 + 4x3 + 3x2 + 2x + 1 = (x3 + x2 + x + 1)2
  あっ こりゃ 便利!

実直に ℓ = 1 として (x2 + x + 1)2 を考え、普通に展開しても = x4 + 2x3 + 3x2 + 2x + 1。これは与式そのもので、結局 e = 0 のケースに当たる。与えられた方程式 ⇔ (x2 + x + 1)2 = 0 ⇔ x2 + x + 1 = 0 となって、この最後の2次方程式を普通に解けば、前記の共役複素数を得る(「解の公式」に ℓ = 1, e = 0 を入れても、同じ結論に)。これらは 1 の原始3乗根: x3 = 1 ⇔ (x − 1)(x2 + x + 1) = 0。

⁂


2024-09-27 回文4次式・6次式についてのメモ

#遊びの数論 #4次方程式 #(32)

x4 + 6x3 + 9x2 + 6x + 1 = (x2 + 3x + 1)2 − 2x2 = 0 のような4次方程式の解法のショートカットから、いろいろな話題が派生する。特に「平方差への変形」は「円分多項式に関するガウスの公式」と関連している。 1 の原始7乗根を根とする6次式 x6 + x5 + ··· + x + 1 に対しても、同様のアイデアを適用できるであろう。

*

(I) 係数が回文的な4次方程式について、平方差を利用する解法は、教科書的ないわゆる相反そうはん方程式のアプローチより平易で、分かりやすい。

(II) このテクニックは、回文4次式の因数分解にも活用可能。例えば「x4 − 6x3 + 7x2 − 6x + 1 を因数分解」という場合、和 u + v が −6 で積が uv = 7 − 2 = 5 の2数 u, v を考えるだけでいい。容易に u = −5, v = −1 が見つかり、与式は:
   = (x2 − 5x + 1)(x2 − x + 1)

(III) 回文4次式に限らず、3次・1次の符号が反対のケース(例: x4 − 6x3 + 7x2 + 6x + 1)にも利用可。のみならず、多少の一般化によれば、一見回文とは程遠い4次式、例えば x4 − 12x3 + 28x2 − 48x + 16 の分解 = (x2 − 10x + 4)(x2 − 2x + 4) にも利用可。

(IV) x4 + x3 + x2 + x + 1 = (x2 + (1/2)x + 1)2 − (5/4)x2 は、両辺を 4 倍すると:
  4x4 + 4x3 + 4x2 + 4x + 4 = (2x2 + x + 2)2 − 5x2
これは円分多項式に関するガウスの公式であり、単に 1 の5乗根に関連するだけなく、 「5k+1」型素数を法として 5 が平方剰余であることの直接証明にも利用される。

(V) この手法のある種の一般化は、1 の原始7乗根を根とする回文6次式 x6 + x5 + ··· + x + 1 に適用可能。

詳細については後日記す予定。

⁂


2024-09-28 x4 + 6x3 + 9x2 + 6x + 1 = 0 教科書の方法との比較

#遊びの数論 #4次方程式 #(32)

このシリーズで紹介しているアイデアは、通常の方法より計算量的に約30%高速で見通しも良いが、4次式にしか通用しない。

文献に記されている定番の置換 y = x + 1/x は、この場合、少し遠回りになるけど、一般性が高い。両方のやり方を比較検討してみたい。

*

【1】 x4 + 6x3 + 9x2 + 6x + 1 の係数 1, 6, 9, 6, 1 は回文的(左右対称)。このような4次式は、
   = (x2 + ℓx + 1)2 − ex2  《ア》
の形に変形すれば、直ちに二つの2次式に分解されるのであった(詳細)。ここで ℓ は入力の3次の係数の半分、この例では ℓ = 3 となる。 e の値は、 ℓ2 に 2 を足して入力の2次の係数を引いたものだが(この例では 32 + 2 − 9 = 2)、細かく覚えてなくても、単に (x2 + ℓx + 1)2 を展開して、与式と係数を比較すれば、簡単に決定できる。

この例では (x2 + 3x + 1)2 なので、仮に素朴に筆算しても、10秒かからないだろう:

掛け算
      1  3  1
      1  3  1
      ───────
      1  3  1
   3  9  3
1  3  1
─────────────
1  6 11  6  1

…となって = x4 + 6x3 + 11x2 + 6x + 1。あるいは、恒等式 (A + B + C)2 = A2 + B2 + C2 + 2AB + 2AC + 2BC を使うとすれば:
  (x2 + 3x + 1)2 = x4 + 9x2 + 1 + 2⋅x2⋅3x + 2⋅x2⋅1 + 2⋅3x⋅1 = x4 + 6x3 + 11x2 + 6x + 1

実際には、2次の係数だけ分かれば十分なので、さらに手抜きができる。 (x2 + ℓx + 1)2 を展開したときの、2次の係数の発生源は (ℓx)2 と 2⋅x2⋅1 の二つだけ。この例では (3x)2 + 2x2 = 11x2 となる(要するに、2次の係数は ℓ2 + 2)。

この部分の手順はお好みしだいとして、ともかく (x2 + 3x + 1)2 は与えられた4次式よりちょうど 2x2 大きいのだから、次の結論に至る。
  与式 = (x2 + 3x + 1)2 − 2x2 = (x2 + 3x + 1)2 − ((2)x)2
   = [x2 + (3 + 2)x + 1][x2 + (3 − 2)x + 1] = 0
  ∴ x2 + (3 + 2)x + 1 = 0 または x2 + (3 − 2)x + 1 = 0  《イ》

この先は、2次方程式を解くだけの一本道。ここに至る道筋も、ℓ が3次の係数の半分ってことさえ認識できれば、単純明快だろう。与式の2次の係数を b とすると e = ℓ2 + 2 − b であり、機械的に《ア》の形を作れるのだが、上述のように、その部分は細かく把握してなくても支障ない。

【2】 別解。この種の多項式に関しては、 y = x + 1/x と置いて y の多項式に書き換えるのが一つの定石となっている。その方法は次の通り(簡潔化のため 1/x の代わりに x−1 と記すことにする)。

まず x4 + 6x3 + 9x2 + 6x + 1 = 0 の解 x は明らかに 0 ではないので、この方程式の両辺を x2 で割っても、ゼロ除算エラーの心配はない。割り算を実行すると、各項の次数が 2 ずつ減って、こうなる:
  x2 + 6x + 9 + 6x−1 + x−2 = 0 項を並び替えれば
  (x2 + x−2) + 6(x + x−1) + 9 = 0  《ウ》

変数を y に置換する手順には若干のバリエーションがあるけど、ここでは一番分かりやすいと思われる方法を記す。
  (x + x−1) = y  《エ》
と置くと:
  y2 = (x + x−1)2 = x2 + 2⋅x⋅x−1 + x−2 = x2 + x−2 + 2
  ∴ (x2 + x−2) = y2 − 2  《オ》
《オ》と《エ》を《ウ》に代入して…
  (y2 − 2) + 6(y) + 9 = y2 + 6y + 7 = 0  《カ》
  これを解くと y = −3 ± 2  《キ》

今、《エ》を使って、 y が満たすべき条件《キ》を x についての式で表すと:
  x + x−1 = −3 + 2 または x + x−1 = −3 − 2
それぞれ両辺を x 倍して:
  x2 + 1 = (−3 + 2)x または x2 + 1 = (−3 − 2)x

これを移項すれば《イ》になって、その先は【1】と全く同じ。

【3】 比較。 y = x + 1/x と置く方法の短所として、まず変数を x から y に変換すること自体が(難しくはないのだが)少々面倒くさい。 (x2 + ℓx + 1)2 の展開も(変数置換よりは単純だろうが)微妙に面倒くさいので、下準備の手間は結局どっちも同じくらいだろうか。

定石の方法では、《イ》と同じ二つの2次方程式を導くために、別の2次方程式《カ》を解かなければならない。【1】のショートカットでは二つの2次方程式を直接導くことができ、三つ目の2次方程式は必要ない。「解かなければならない2次方程式の数」を目安とするなら、 2:3 の割合で、われわれの方法は計算量的に軽快(33%高速)。

他方において、(4次式に限らず)係数が回文的なら y = x + 1/x と置くだけでいつでも次数を半減させられるのは、定石的手順の大きなメリットだろう。強力で一般性が高いからこそ、4次方程式のような次数が低いケース(直接的に処理した方が手っ取り早い)では、若干オーバーヘッドがあり、結果的に遠回りになってしまうのだが…。 (x2 + ℓx + 1)2 の展開を利用する方法にも面白い応用があり、どちらも研究に値する。

このような4次方程式では、ある数 x1 が一つの解なら、その逆数 x2 = 1/x1 も一つの解(x1 = x2 = 1 の場合を除き、この二つの解は相異なる)。《イ》の2次方程式、例えば
  x2 + (3 + 2)x + 1 = 0  《ク》
を見ると、その2解 α, β の積は、解と係数の関係から定数項 1 に等しい。つまり αβ = 1、従って α と β は互いに逆数。《エ》の条件からも、もし x = α が解なら α + 1/α は一定の数 y に等しく(その y は《カ・キ》によって規定される)、逆に α + 1/α が一定の数 y に等しければ、その α は与えられた4次方程式の解。ところが、もし x = α が和についての条件《エ》を満たすなら、 x = 1/α も全く同じ条件を満たす。実際、
  (1/α) + 1/(1/α)
の第2項は「α の逆数の逆数」だから α 自身であり、結局この和は α + 1/α に等しい(足し算の順序を逆にしただけ)。

検算を兼ねて、《ク》の2解
  x1 = [−3 − 2 + (7 + 62)]/2, x2 = [−3 − 2 − (7 + 62)]/2
…が互いに逆数であること(つまり積が 1 であること)を直接確かめておく。 x1x2 は二つの分数の積。積の分子は「和・差の積」の形なんで、次の数に等しい:
  (−3 − 2)2 − (7 + 62) = 9 − 2⋅(−3)⋅2 + 2 − 7 − 62 = 4
一方、積 x1x2 の分母は 2⋅2 = 4 なんで、確かに x1x2 = 4/4 = 1 となる。

*

「係数が回文的な4次式」を平方の差の形にするショートカットは、本質的には単純なことだろう。特に x4 + x3 + x2 + x + 1 を(4倍して)差の形にする変形は、 Gauß が既に観察し、一般化している。その小技は、第5補充法則の直接証明の一部としても使われるのだが、 Gauß の議論はおおむね円分多項式の文脈に属していて、一般の回文4次式との関係については、それほど明らかではない。

今回このショートカットを意識するきっかけになった次のシンプルな関係は、19世紀の古い本に記されていた:
  x4 + x3 + x2 + x + 1 = (x2 + (1/2)x + 1)2 − (5/2x)2  《ケ》
1 の原始5乗根の根号表現」に関連する式で、両辺が等しいことを容易に確かめられるが、具体的にはどうやって左辺から右辺を導くのか。別に難解なことでもなく、既に述べたように「左辺の3次の係数」の半分を「右辺の丸かっこ内の2次の係数」とすればいい。このアルゴリズムを一般の回文4次式に適用できること、等式《ケ》が Gauß の公式
  4(a4 + a3 + a2 + a + 1) = (2a2 + a + 2)2 − 5a2  《コ》
…と実質同じ内容であることに気付き、最初思ってた以上に話が広がってきた。日々情報があふれてる現代だけど、何世紀も前の文献からヒントやインスピレーションが得られることも意外と多い。 Euler は、この種の4次方程式の解法を別の方向に少し一般化している

† https://babel.hathitrust.org/cgi/pt?id=mdp.39015069248337&seq=237

‡ DA art. 123 https://archive.org/details/werkecarlf01gausrich/page/n101/mode/1up

¶ 761–764 https://archive.org/details/ElementsOfAlgebraLeonhardEuler2015/page/248/mode/1up

⁂


2024-10-06 ガウスの式 4X = Y2 ∓ nZ2 の簡易的な導出

#遊びの数論 #4次方程式 #1の原始根 #(32) #円分多項式

4(x4 + x3 + x2 + x + 1) = (2x2 + x + 2)2 − 5(x)2

4(x6 + x5 + ··· + x + 1) = (2x3 + x2 − x − 2)2 + 7(x2 + x)2

4(x10 + x9 + ··· + x + 1) = (2x5 + x4 − 2x3 + 2x2 − x − 2)2 + 11(x4 + x)2 等々

この種の恒等式(Gauß, DA 357)について、右辺を展開したものが左辺に等しいことは、機械的計算で確かめられる。一方、左辺が与えられたとき、それを右辺の形にすることは、一般にはやや難易度が高い。特定の場合に限って簡易計算法があるので、紹介したい。

*

【1】 n を 2 以上の整数とする。 x についての n 次式 xn − 1 は、次のように分解される。

xn − 1 = (x − 1)(xn−1 + xn−2 + ··· + x + 1)  アア

〔例〕 x5 − 1 = (x − 1)(x4 + x3 + x2 + x + 1)

このことは、右辺を実際に展開してみれば明らかだろう:
  アアの右辺 = x(xn−1 + xn−2 + xn−3 + ··· + x + 1) − 1(xn−1 + xn−2 + ··· + x + 1)
  = (xn + xn−1 + xn−2 + ··· + x2 + x) − (xn−1 + xn−2 + ··· + x + 1) = xn − 1

〔例〕 (x − 1)(x4 + x3 + x2 + x + 1) = x(x4 + x3 + x2 + x + 1) − 1(x4 + x3 + x2 + x + 1)
   = (x5 + x4 + x3 + x2 + x) − (x4 + x3 + x2 + x + 1) = x5 − 1

x ≠ 1 という了解の下で、アアの両辺を x − 1 で割ると:

(xn − 1)/(x − 1) = xn−1 + xn−2 + ··· + x + 1  アイ

アアやアイは任意の 2 以上の整数 n に対して有効だが、その中でも n が素数の場合、アイの右辺をさらに因数分解して多項式の積にすることは、できない――有理係数の範囲では。「さらなる分解は不可能!」というこの状況は、日本語では既約と呼ばれることがある――「既に約されてる」(割られ、分解され尽くしている)というようなニュアンスだろう。

〔例〕 n = 2(素数)の場合 x2 − 1 = (x − 1)(x + 1) この因子 x + 1 は既約
  n = 3(素数)の場合 x3 − 1 = (x − 1)(x2 + x + 1) この因子 x2 + x + 1 は既約
  n = 4(合成数)の場合 x4 − 1 = (x − 1)(x3 + x2 + x + 1) この因子 x3 + x2 + x + 1 は既約でない
    実際 x3 + x2 + x + 1 = (x + 1)(x2 + 1) と分解可能★
  n = 5(素数)の場合 x5 − 1 = (x − 1)(x4 + x3 + x2 + x + 1) この因子 x4 + x3 + x2 + x + 1 は既約
  n = 6(合成数)の場合 x6 − 1 = (x − 1)(x5 + x4 + x3 + x2 + x + 1) この因子は既約でない
    実際 x5 + x4 + x3 + x2 + x + 1 = (x + 1)(x2 + x + 1)(x2 − x + 1) と分解可能★

★について n が 4 以上の偶数の場合の x3 + x2 + x + 1 や x5 + x4 + x3 + x2 + x + 1 のような多項式は、偶数個の項を持つ。そこに x = −1 を入れると、奇数番目の項は −1 になり、偶数番目の項は +1 になるので、全体としては = 0 となる。つまり x = −1 は根; 式は x + 1 で割り切れる。この割り算を(筆算など何らかの方法で)実行すると:
  x3 + x2 + x + 1 = (x + 1)(x2 + 1)
この2次の余因子(商)は、 x2 + 1 = x2 − (−1) = (x + −1)(x − −1) なので、係数に虚数を許せば分解可能だが、有理数の範囲では既約。 n = 6 の例では:
  x5 + x4 + ··· + x + 1 = (x + 1)(x4 + x2 + 1)
この4次の余因子は、次のように分解可能:
  x4 + x2 + 1 = (x4 + 2x2 + 1) − x2
   = (x2 + 1)2 − (x)2 = (x2 + 1 + x)(x2 + 1 − x)

アイの右辺の形の n−1 次式(係数が全部 1)は、 n が素数なら既約、 n が合成数なら既約でない(可約)。ここで「既約」か否かというのは、あくまで有理係数(または整係数)の範囲で考えた場合の区別。もっと広い範囲で係数を考えれば、既約の多項式もさらに分解可能かもしれない。例えば、 x4 + x3 + x2 + x + 1 は、有理係数の範囲では既約だが、もし係数に無理数を使ってもいいとするなら可約となり、次のように分解される:
   = (x2 + [(1 + 5)/2]x + 1)(x2 + [(1 − 5)/2]x + 1)

† この場合、係数を「有理数」の範囲で考えても「整数」の範囲で考えても、多項式が既約かどうかの結論は変わらない。というのも、「有理数」の範囲で既約なら、当然(それより狭い)整数の範囲でも既約。一方、「有理係数」の範囲で可約の場合、実はより限定的に「整係数」の範囲でも可約。

*

【2】 ここからは n を 5 以上の素数とする(2 を除外するのは n を奇数に統一するため。 n = 3 のケースも、以下の議論では例外的になるので除外)。アイの右辺の形の多項式を、大文字の X を使って Xn で表すことにする:
  X5 = x4 + x3 + x2 + x + 1
  X7 = x6 + x5 + ··· + x + 1
  X11 = x10 + x9 + ··· + x + 1 等々

これら一つ一つの既約多項式 Xn に対して、最高次の係数 2 の多項式 Y と、最高次の係数 1 の多項式 Z が存在して、
  4Xn = Y2 ∓ nZ2  アウ
と書くことができる――これは Gauß が、名高い数論研究書 Disquisitiones Arithmeticae (略して DA)の §357 で記した定理。ここで Xn の次数は n − 1 だが、 Y の次数は Xn の次数の半分、つまり (n − 1)/2 に等しく、 Z の次数はそれより 1 小さい。複号 ∓ の部分は、 n が 4 の倍数より 1 大きいときはマイナス、さもなければプラスとする(言い換えれば Y の次数が偶数ならマイナス、奇数ならプラス)。

† n は 5 以上の素数(従って奇数)なので、 n − 1 は偶数であり、分数 (n − 1)/2 は割り切れる。

x ≠ 1 は、アイの左辺の割り算を行うための付帯条件だった。この割り算と無関係に、アイの右辺の多項式 Xn 自体は、 x = 1 に対しても値を持つ。 4Xn についての Gauß の公式アウも、任意の x に対して恒等的に成り立つ。

例えば n = 5 の場合、 Y = 2x2 + x + 2 そして Z = x となる(導出法については後述):
  4(x4 + x3 + x2 + x + 1) = (2x2 + x + 2)2 − 5(x)2  アエ
n = 7 の場合、 Y = 2x3 + x2 − x − 2 そして Z = x2 + x となる:
  4(x6 + x5 + ··· + x + 1) = (2x3 + x2 − x − 2)2 + 7(x2 + x)2  アオ
右辺の nZ2 の前の符号が、アエでは − だがアオでは + であることに注意。この違いは「n = 5 は 4 の倍数より 1 大きいが、 n = 7 は 4 の倍数より 3 大きい」という違いに対応。

一般の場合の Y, Z の存在証明は比較的難しく、具体的な Y, Z の構成に必要な計算量もやや大きい(Gauß 自身は Y, Z の存在を一般的に証明したものの、具体的な Y, Z の形は n = 23 までしか記していない)。他方において、 n ≤ 37 に範囲を制限するのなら、初等的方法で Y, Z を確定できる。

その原理は次の通り。 Legendre がその整数論・第3版 §511 で指摘しているように、この定理が成り立つことを事実と認めるなら、アウにより、 4Xn と Y2 には n の倍数の差しかない。よって mod n では、両者は合同:
  4Xn ≡ Y2 (mod n)  アカ
  両辺の平方根から Y ≡ ±2Xn  アキ

仮定により n は(5 以上の)素数なので、いわゆる新入生の夢
  (x − 1)n ≡ xn − 1 (mod n)
が成り立つ。 x ≠ 1 の場合、その両辺を x − 1 で割ると:
  (x − 1)n−1(xn − 1)/(x − 1) = Xn  アク
最後の等号は Xn の定義アイによる。のみならず、 x = 1 の場合にもアクは成り立つ。なぜならそのとき左辺は 0、右辺は n である(0 ≡ n は真)。

† 左辺を展開したとき、二項係数と素数の性質から、両端の2項以外はどれも n の倍数となり、従って mod n では ≡ 0 となって消滅。「新入生(一年生)の夢」というのは、「未熟者は (x + y)n = xn + yn との混同から (x + y)n = xn + yn のようなことを考えるが、それは実際には成り立たない夢想・妄想だ」というような意味らしい。普通なら妄想扱いされてしまうこの「夢のように簡単な計算」が、素数を法とする二項展開では、実際に成立する!

‡ Xn は xn−1 から x (= x1) までの n−1 項と、末尾の定数項 1 の和。定数項も含めると n 項あり、 x = 1 の場合、全部の項が 1 に等しい。

アクの両辺の平方根を考えると(仮定により n−1 は偶数なので 2 で割り切れる):
  (x − 1)(n−1)/2 ≡ ±Xn
これをアキの右辺に代入すると:
  Y ≡ ±2(x − 1)(n−1)/2
Y の最高次の係数は 2 なので、複号のプラスが題意に適する。実際に計算を行うと、次の事実が観察される。

Legendre の観察(1830年) 素数 n が 37 以下なら Y ≡ 2(x − 1)(n−1)/2 (mod n) の合同記号(≡)を等号にできる。
それには、右辺を展開し、各項の係数として絶対値最小の整数を選べばいい。

〔付記〕 絶対値最小の整数を選ぶ手順を例示すると、次の通り。それぞれの係数について、符号を無視して絶対値が n 以上なら、その係数の絶対値を n で割った余りに置き換える。すると各係数(c とする)は −n < c < +n の範囲の整数となる。符号を考慮して、もし c が正の数 +n/2 より大きければ、その c を負の整数 c − n で置き換え、もし c が負の数 −n/2 より小さければ、その c を正の整数 c + n で置き換える。最終的に、各係数は (−n/2, n/2) の範囲になる。

例1 n = 5 のとき Y ≡ 2(x − 1)(5−1)/4 = 2(x2 − 2x + 1) = 2x2 − 4x + 2。ところが −4 ≡ 1 (mod 5) であり、絶対値において −4 より 1 の方が小さいので、
  Y ≡ 2x2 − 4x + 2
の係数の −4 を 1 で置き換えると、合同記号を等号にすることができる:
  Y = 2x2 + x + 2  ← アエと一致
今、アウに基づき Z を決定する。先に Y2 を計算:
  Y2 = (2x2 + x + 2)2
   = (2x2)2 + x2 + 22 + 2(2x2⋅x + 2x2⋅2 + x⋅2)
   = 4x4 + x2 + 4 + (4x3 + 8x2 + 4x)
   = 4x4 + 4x3 + 9x2 + 4x + 4
従って、アウから:
  −5Z2 = 4X5 − Y2 = (4x4 + 4x3 + 4x2 + 4x + 4) − (4x4 + 4x3 + 9x2 + 4x + 4) = −5x2
両辺を −5 で割って:
  Z2 = x2
よって Z = ±x だが、 Z の最高次の係数は 1 なので、プラスが題意に適する:
  Z = x  ← アエと一致

例2 n = 7 のとき Y ≡ 2(x − 1)(7−1)/4 = 2(x3 − 3x + 3x − 1) = 2x3 − 6x2 + 6x − 2。ところが −6 ≡ 1, 6 ≡ −1 (mod 7) であり、絶対値において ∓6 より ±1 の方が小さいので、
  Y ≡ 2x3 − 6x2 + 6x − 2
の係数の −6, +6 をそれぞれ +1, −1 で置き換える:
  Y = 2x3 + x2 − x − 2  ← アオと一致
今、アウに基づき Z を決定する:
  Y2 = (2x3 + x2 − x − 2)2
   = 4x6 + x4 + x2 + 4 + 2(2x5 − 2x4 − 4x3 − x3 − 2x2 + 2x)
   = 4x6 + x4 + x2 + 4 + (4x5 − 4x4 − 8x3 − 2x3 − 4x2 + 4x)
   = 4x6 + 4x5 − 3x4 − 10x3 − 3x2 + 4x + 4
  ∴ 7Z2 = 4X7 − Y2
   = (4x6 + 4x5 + 4x4 + 4x3 + 4x2 + 4x + 4) − (4x6 + 4x5 − 3x4 − 10x3 − 3x2 + 4x + 4)
   = 7x4 + 14x3 + 7x2
両辺を 7 で割って:
  Z2 = x4 + 2x3 + x2 = x2(x2 + 2x + 1) = x2(x + 1)2
  ∴ Z = x(x + 1) = x2 + x  ← アオと一致

実際には n = 5, 7 のケースでは Y をこの方法で計算するまでもない。というのも、 n が 5 以上の素数のとき「Y の次数は n の半分(端数切り捨て)に等しい」「その係数は 2, 1, … と始まり、 n が 4 の倍数より 1 大きいなら逆から読んでも全く同じ(対称的)、 n が 4 の倍数より 3 大きいなら逆から読むと符号だけ反対(反対称的)」という性質がある。つまり、次のことは、計算しなくても事前に分かる:
  n = 5 のとき Y は2次式(3項)で、その係数は 2, 1, 2 (逆から読んでも 2, 1, 2)
  n = 7 のとき Y は3次式(4項)で、その係数は 2, 1, −1, −2 (逆から読むと −2, −1, 1, 2)

† 回文的(palindromic)という表現も使われる。

‡ 反回文的(antipalindromic)という表現も使われる。

一方、 n がどちらのタイプの素数(5以上)でも多項式 Z は x で割り切れ、 Z/x の係数は対称的

〔例〕 n = 7 のとき Z = x2 + x で、 Z/x = x + 1。その係数 1, 1 は対称的。

以下では n = 11 の場合について、 Y の反対称性と Z/x の対称性を利用することで、計算量を節約する。

*

【3】 n = 11 のとき Y は5次式(6項)で、その係数は 2, 1, ?, ?, −1, −2。ここで二つの「?」は絶対値が等しく符号が反対になるはず。従って、Y の3次の係数・2次の係数の少なくとも一方が確定すれば、残りは全部確定する。 Legendre の観察を利用するため 2(x − 1)5 の展開を考えると:
  Y ≡ 2(x5 − 5x4 + 10x3 − 10x2 + 5x − 1) = 2x5 − 10x4 + 20x3 − ···
合同記号を等号に変換するため −10 を 1 で置き換え、 20 を −2 で置き換えると:
  Y = 2x5 + x4 − 2x3 + ···
反対称性から、残りの係数を含めて六つの係数は 2, 1, −2; +2, −1 −2(まじめに逐一計算しても、そうなる):
  Y = 2x5 + x4 − 2x3 + 2x2 − x − 2  アケ

今、10次式 Y2 を求める。省力化のため、4次以下の項を省き、5次以上の項だけを考える。
  Y2 = (2x5 + x4 − 2x3 + 2x2 − x − 2)2
   = 4x10 + x8 + 4x6 + ··· + 2(2x9 − 4x8 + 4x7 − 2x6 − 4x5 − 2x7 + 2x6 − x5 − ··· − 4x5 + ···)
   = 4x10 + 4x9 − 7x8 + 4x7 + 4x6 − 18x5 + ···
  ∴ 11Z2 = 4X11 − (4x10 + 4x9 − 7x8 + 4x7 + 4x6 − 18x5 + ···) = 11x8 + 22x5 + ···
両辺を 11 で割って Z2 = x8 + 2x5 + ··· を得る。「···」の部分は、次のように復元可能。4次式 Z に関連して「3次式 Z/x の係数が対称的」ということは分かっている; それを平方した6次式 (Z/x)2 = Z2/x2 = x6 + 2x3 + ··· の係数も対称的のはず。よって、この6次式の0次の係数(定数項)は 1 で、1次と2次の係数は 0 だ(中央の係数 2 を軸として、右端の3個の係数は、左端の3個の係数と対称的)。

 6  5  4  3  2  1  0 ← 次数
 1  0  0  2  0  0  1 ← 係数

結局 (Z/x)2 = x6 + 2x3 + 1 = (x3 + 1)2 となって…
  Z/x = x3 + 1
その両辺を x 倍して Z = x4 + x を得る。上記アケと合わせて、次の結論に至る。

4(x10 + x9 + ··· + x + 1) = (2x5 + x4 − 2x3 + 2x2 − x − 2)2 + 11(x4 + x)2

*

n = 5, 7, 11, 13 の場合の Gauß の公式については、以前、強引な方法で既に導いている。今回のように「二項展開を利用」と考えた方が、多少見通しが良い。 Legendre の観察に基づくこのアイデアは、 Mathews による(リンク先の参考文献 [5], pp. 217–218, §195)。

Legendre の整数論・第3版では、この簡易計算法の有効範囲が曖昧だったが、1830年の Mémoire において、 Legendre は次のように有効範囲を確定した。第一に n が 37 以下なら Y の各係数の絶対値は n/2 より小さく、この便法が成り立つ。第二に n が 41 以上のとき、この性質はもはや成り立たないが、それでも n が 59 以下なら各係数の絶対値は n より小さい(「各係数の絶対値が n より小」という性質が成り立たない最小の素数は n = 61)。

 Théorie des nombres, 3e édition (1830), tome II, p. 193 (§511)
https://gallica.bnf.fr/ark:/12148/bpt6k42612x/f208.vertical

‡ Mémoire sur la détermination des fonctions Y et Z qui… (Lu à l’Académie, le 11 octobre 1830) [Mémoires de l’Académie royale des sciences de l’Institut de France, tome XI (1832), pages 81–99]
https://archive.org/details/mmoiresdelacad11memo/page/81/mode/1up
または https://gallica.bnf.fr/ark:/12148/bpt6k3226g/f319.vertical

¶ 38、39、40 は素数でないので「40以下の素数」「40未満の素数」と言ってもいい(この範囲の最後の素数 n = 37 に対しては、簡易計算法が成立)。ちなみに Gauß の公式は、平方因子を含まない(5 以上の)任意の奇数に拡張可能。 n がそのような合成数の場合、「Y の各係数の絶対値が n/2 より小さい」という性質は、既に n = 35 に対し不成立。

⁂


2024-10-07 ガウスの式 4X = Y2 ∓ nZ2 の簡易的な導出(続き)

#遊びの数論 #1の原始根 #(32) #円分多項式

前回は n = 5, 7, 11 の場合を扱った。今回は n = 13 と n = 17 の場合を扱う。

*

【4】 n = 13 の場合。 13 は 4 の倍数より 1 大きいので、6次式 Y の係数は対称的。7項あるので、先頭の4項を求める必要がある(最初の2項の係数 2, 1 は事前に分かっているので、実質的な未知の係数は二つ)。今、
  2(x − 1)6 = 2(x6 − 6x5 + 15x4 − 20x3 + ···) = 2x6 − 12x5 + 30x4 − 40x3 + ···
の係数について、絶対値最小の剰余を考えると 30 ≡ 4, −40 ≡ −1 (mod 13) なので、6次式 Y の係数は 2, 1, 4, −1, …と始まる。対称性から 7 個の係数は、順に 2, 1, 4, −1, 4, 1, 2 と確定:
  Y = 2x6 + x5 + 4x4 − x3 + 4x2 + x + 2  イア

† 右端の2項の係数は必ず 2, 1 なので、計算するまでもない。実際、上記の式で 2x6 の係数は 2、 −12x5 の係数は −12 ≡ 1。

次に 4X13 = Y2 − 13Z2 を満たす5次式 Z を求める。イアから:
  Y2 = (2x6 + x5 + 4x4 − x3 + 4x2 + x + 2)2  イイ
これを地道に全部展開してもいいのだが、とりあえず10次式 Z2 の係数が求まれば十分。ところが4次式 Z/x を W とすると、 W の係数は対称的。よって8次式 W2 = (Z/x)2 の 9 個の係数も対称的であり、そのうち最初の 5 個が分かれば Z2 の全係数を確定できる。 Z は(従って Z2 も)最高次の係数が 1 だということは分かっているので、 W2 の7次・6次・5次・4次の係数を――言い換えれば、10次式 Z2 = x2W2 の9次・8次・7次・6次の係数を――求めれば十分。 13Z2 = Y2 − 4X13 であるから、イイを展開して9次・8次・7次・6次の係数を調べ、それぞれ 4 を引いて 13 で割ってやれば、それが求めるものである。

イイを展開したとき、9次の項は、次のいずれかの理由によって生じる。平方される6次式の――
  Ⓐ 6次の項と3次の項の積として。
  Ⓑ 5次の項と4次の項の積として。
  Ⓒ 4次の項と5次の項の積として。
  Ⓓ 3次の項と6次の項の積として。
ⒶⒷⒸⒹの積はどれも 1 回ずつ起きるが、ⒶとⒹは等しくⒷとⒸも等しいので、これら四つの積の中には等しい値が2個ずつ2組あ結局、Ⓐの2倍とⒷの2倍を足せばいい:
  イイを展開した9次の項 = 2[2x6⋅(−x3)] + 2(x5⋅4x4) = −4x9 + 8x9 = 4x9  イウ
以下同様に進める。ただし8次の項は「4次の項の自乗」としても発生し、このような「4次と4次の積」は 1 回しか生じない。一般に、偶数次の項には、このような「項の平方に由来する部分」が含まれている。
  イイを展開した8次の項 = 2(2x6⋅4x2) + 2[x5⋅(−x3)] + (4x4)2 = 16x8 − 2x8 + 16x8 = 30x8  イエ
  イイを展開した7次の項 = 2(2x6⋅x) + 2(x5⋅4x2) + 2[4x4⋅(−x3)] = 4x7 + 8x7 − 8x7 = 4x7  イオ
  イイを展開した6次の項 = 2(2x6⋅2) + 2(x5⋅x) + 2(4x4⋅4x2) + (−x3)2 = 8x6 + 2x6 + 32x6 + x6 = 43x8  イカ

イウ・イエ・イオ・イカから Y2 の9次~6次の係数は順に 4, 30, 4, 43。それぞれの係数から 4 を引いて 13 で割ると、結果は 0, 2, 0, 3。 Z2 の最高次の係数は 1 なので:
  Z2 = (Y2 − 4X13)/13 = x10 + 0x9 + 2x8 + 0x7 + 3x6 + ···
対称性から残りの係数も確定する:
  W2 = Z2/x2 = x8 + 2x6 + 3x4 + 2x2 + 1
  従って W = Z/x = x4 + x2 + 1
  ∴ Z = x5 + x3 + x  イキ

イアとイキから、次の結論に至る。

4(x10 + x9 + ··· + x + 1) = (2x6 + x5 + 4x4 − x3 + 4x2 + x + 2)2 − 13(x5 + x3 + x)2

この式の特徴は、Y の中央の −1 を除き、 Y, Z の係数に負の数がないこと。お約束の 2, 1 の後ろに「4, −1」があること。 Z の係数は 1 または 0 だけ。その二つが交互に出現する。

† 例えば (x3 + Lx2 + Mx + N)2 を展開した6次式の3次の項だけ知りたいとき、どうするか。全部まじめに展開して結果の3次の項をチェックしてもいいけど、この場合、下記のように、3次の項は「3次の項と定数項の積」「定数項と3次の項の積」として(その二つは等しい!)、そして「2次の項と1次の項の積」「1次の項と2次の項の積」として(その二つも等しい!)、それぞれ2回ずつ生じるのだから、実際に全部展開しなくても、展開後の3次の項だけを選択的に考察できる。それと同じこと。
  (x3 + Lx2 + Mx + N)2 = (x3 + Lx2 + Mx + N)(x3 + Lx2 + Mx + N)
便宜上 x3 + Lx2 + Mx + N を J とすると:
   = (x3 + Lx2 + Mx + N)J = x3J + Lx2J + MxJ + NJ
   = x3(x3 + Lx2 + Mx + N) + Lx2(x3 + Lx2 + Mx + N) + Mx(x3 + Lx2 + Mx + N) + N(x3 + Lx2 + Mx + N)
   = (x3⋅x3 + x3⋅Lx2 + x3⋅Mx + x3⋅N) + (··· + Lx2⋅Mx + ···) + (··· + Mx⋅Lx2 + ···) + (N⋅x3 + ···)
   = ··· + 2(N)x3 + 2(LM)x3 + ··· = ··· + 2(LM + N)x3 + ···

‡ y = x2 と置くと W2 = x8 + 2x6 + 3x4 + 2x2 + 1 = y4 + 2y3 + 3y2 + 2y + 1 = (y2 + y + 1)2。よって W = ±(y2 + y + 1) = ±(x4 + x2 + 1) で、 Z = xW = ±(x5 + x3 + x) となるが、 Z の最高次の係数は 1 なので、プラスが題意に適する。――これは恒等式 y4 + 2y3 + 3y2 + 2y + 1 = (y2 + y + 1)2 を利用したショートカット。トリッキーなショートカットを使わないやり方をこの下に記す。

*

【5】 4次式 W を平方した8次式
  W2 = x8 + 2x6 + 3x4 + 2x2 + 1  イク
が与えられたとき、次のように W を求めることもできる(このアプローチの方が応用が利く)。 W が4次式であること、係数が対称的で両端の係数が 1 であることは分かっているので、 L, M を未知の係数として、
  W = x4 + Lx3 + Mx2 + Lx + 1  イケ
と置く。イケの平方つまり (x4 + Lx3 + Mx2 + Lx + 1)2 について、それを展開した8次式の係数を幾つか選択的に考察する:
  7次の係数 = 2(1⋅L) = 2L
これをイクと比較すると 2L = 0(イクの8次式において、7次の係数は 0 である)。よって L = 0。同様に:
  6次の係数 = 2(1⋅M) + L2 = 2M + 02 = 2M
これをイクと比較すると 2M = 2、よって M = 1 となる。 L, M の正体が判明したので、イケにより4次式 W も確定。

*

【6】 n = 17 の場合。8次式 Y は係数が対称的。9項あるので、先頭の5項を求める必要がある(最初の2項の係数 2, 1 は事前に分かっているので、実質的な未知の係数は三つ)。
  2(x − 1)8 = 2(x8 − 8x7 + 28x6 − 56x5 + 70x4 − ···) ≡ 2(x8 − 8x7 + 11x6 − 5x5 + 2x4 − ···)
   ≡ 2x8 − 16x7 + 22x6 − 10x5 + 4x4 − ··· ≡ 2x8 + x7 + 5x6 + 7x5 + 4x4 − ··· (mod 17)
  ∴ Y = 2x8 + x7 + 5x6 + 7x5 + 4x4 + 7x3 + 5x2 + x + 2  イサ

7次式 Z を求めたい。前半の n = 13 の場合と同様に考えると、12次式 W2 = Z2/x2 の冒頭の七つの係数があればいい。先頭の係数 1 は分かっているので、 W2 の11次~6次の係数、言い換えれば Z2 の13次~8次の六つの係数が問題となる。
  Y2 = (2x8 + x7 + 5x6 + 7x5 + 4x4 + 7x3 + 5x2 + x + 2)2  イシ
において:
  13次の係数 = 2(2⋅7 + 1⋅5) = 38
  12次の係数 = 2(2⋅4 + 1⋅7) + 52 = 55
  11次の係数 = 2(2⋅7 + 1⋅4 + 5⋅7) = 106
  10次の係数 = 2(2⋅5 + 1⋅7 + 5⋅4) + 72 = 123
  9次の係数 = 2(2⋅1 + 1⋅5 + 5⋅7 + 7⋅4) = 140
  8次の係数 = 2(2⋅2 + 1⋅1 + 5⋅5 + 7⋅7) + 42 = 174
これら六つの数から 4 を引いて 13 で割ると、結果は順に 2, 3, 6, 7, 8, 10。
  ∴ W2 = x12 + 2x11 + 3x10 + 6x9 + 7x8 + 8x7 + 10x6 + 8x5 + 7x4 + 6x3 + 3x2 + 2x + 1  イス

† イシを展開した場合の13次の項は、次の式で表される:
  2(2x8⋅7x5) + 2(x7⋅5x6) = 2(2x8⋅7x5 + x7⋅5x6) = 38x13
ここで重要なのは係数だけなので、本文ではこれを単に 2(2⋅7 + 1⋅5) = 38 とし xk を省いた。12次以下の係数も同様。

イスから6次式 W を求める一つの方法は次の通り。 L, M, N を未知の係数として W = x6 + Lx5 + Mx4 + Nx3 + Mx2 + Lx + 1 と置き、その平方をイスと比較:
  W2 の11次の係数 = 2L = 2 よって L = 1
  W2 の10次の係数 = 2M + L2 = 2M + 1 = 3 よって M = 1
  W2 の9次の係数 = 2(N + LM) = 2(N + 1) = 6 よって N = 2
従って W = x6 + x5 + x4 + 2x3 + x2 + x + 1。
  ∴ Z = Wx = x7 + x6 + x5 + 2x4 + x3 + x2 + x  イセ

イスとイセから、次の結論に至る。

円分多項式に関するガウスの恒等式(n = 17)
  4(x16 + x15 + ··· + x + 1) = (2x8 + x7 + 5x6 + 7x5 + 4x4 + 7x3 + 5x2 + x + 2)2 − 17(x7 + x6 + x5 + 2x4 + x3 + x2 + x)2

この式の特徴は、 Y, Z の係数に負の数が一つもないこと(Z の定数項を別にすれば 0 もない)。お約束の 2, 1 の後ろに「5, 7, 4」があること。 W の係数は 1 か 2 だけ――真ん中に 2 がある他は、全部 1。

*

これらの式には、面白い応用が考えられる。例えば「コンパスと定規だけで正17角形が作図可能なこと」を――言い換えれば「17次方程式 x17 − 1 = 0 の解は、通常の四則演算と平方根の組み合わせだけで解けること」を――直接、実証できるであろう。

⁂


<メールアドレス>