数学\(\mathtt{ VB } \ \)ガロア流方程式の解法技術


Profile
Name: scruta \(\quad\) Daily life: mowing

Revision history
1st upload: 2023/06/17
revision2 : 2023/07/27
revision3 : 2024/12/22
revision4 : 2025/09/14

\(\qquad\)


Contact

mailaddress



Copyright © 2023 scruta

【第5章】恐怖の因数分解:Trager Algorithm

\( \quad \)

\(\qquad \qquad \qquad f(x)=x^3-3x+1 \qquad Galois \ Group:A_3 \quad GCD \)

\( \quad \)

▶ Page    1,   2,   3,   4,   5           ▶ Sample Program

\(\quad \)
home \(\quad \)

\(\nextSection\)
\(\nextSection\)
\(\nextSection\)

【5-5】\(\{H_i\}\) と \(f(x+v)\) のGCD

\(\nextSection\)
いよいよTrager AlgorithmのStep4の説明をします。
Algrithmの説明の中の \(\{R_i(x)\}\) は、前節の最後の説明より \(\{H_j\}\) に置き換えても良いでしょう。

そこでTrager AlgorithmのStep4は、「 \(\{H_j\}\) と \(f(x+v)\) のGCD(最大公約式)を求める」という手続きになります。 それは、(5.3)で示すように、「2つの式の中で共通する因子を抽出しなさい」と言う事です。 すぐわかる様に共通因子はいとも簡単に見つける事が出来ます。

(5.4)は(5.1)の\(v_1\) を \(v\) に置き換えたものがです。(少しズルイ)でも元々原始元 \(v\) は \(v=v_1\) でしたから この文字変換は許されるでしょう。

\begin{align} &Res( \ f(x + v), \ g(v), \ v)=(-1) \cdot H_1 \cdot H_2 \cdot H_3 \notag \\ &\qquad \left\{ \begin{array}{l} \bbox[#FFFF00]{ H_1=(x+v_1-\alpha)(x+v_4-\beta)(x+v_5-\gamma)} \\ \bbox[#7FFF00]{ H_2=(x+v_1-\beta)(x+v_4-\gamma)(x+v_5-\alpha)} \\ \bbox[#00FFFF]{ H_3=(x+v_1-\gamma)(x+v_4-\alpha)(x+v_5-\beta)} \\ \end{array} \right. \\ \notag \\ &f(x+v_1)=Y_1 \cdot Y_2 \cdot Y_3 \qquad \left\{ \begin{array}{l} \bbox[#FFFF00]{Y_1=(x+v_1-\alpha)} \\ \bbox[#7FFF00]{Y_2=(x+v_1-\beta)} \\ \bbox[#00FFFF]{Y_3=(x+v_1-\gamma)} \\ \end{array} \right. \\ \end{align}

\begin{align} &\qquad \Downarrow \notag \\ &\left\{ \begin{array}{l} GCD\bigl( \bbox[#FFFF00]{H_1},f(x+v_1)\bigr)= GCD\bigl( \bbox[#FFFF00]{H_1},\bbox[#FFFF00]{Y_1} \cdot \bbox[#7FFF00]{Y_2} \cdot \bbox[#00FFFF]{Y_3}\bigr)= \bbox[#FFFF00]{Y_1}=\bbox[#FFFF00]{(x+v_1-\alpha)} \\ GCD\bigl( \bbox[#7FFF00]{H_2},f(x+v_1)\bigr)= GCD\bigl( \bbox[#7FFF00]{H_2},\bbox[#FFFF00]{Y_1} \cdot \bbox[#7FFF00]{Y_2} \cdot \bbox[#00FFFF]{Y_3}\bigr) = \bbox[#7FFF00]{Y_2} =\bbox[#7FFF00]{(x+v_1-\beta)} \\ GCD\bigl( \bbox[#00FFFF]{H_3},f(x+v_1)\bigr)=GCD\bigl( \bbox[#00FFFF]{H_3},\bbox[#FFFF00]{Y_1} \cdot \bbox[#7FFF00]{Y_2} \cdot \bbox[#00FFFF]{Y_3}\bigr)=\bbox[#00FFFF]{Y_3}= \bbox[#00FFFF]{(x+v_1-\gamma)} \\ \end{array} \right. \\ &\qquad \Downarrow \notag \\ &\left\{ \begin{array}{l} GCD\bigl(\left. \bbox[#FFFF00]{H_1} \right|_{v_1=v} \ ,f(x+v)\bigr)= \bbox[#FFFF00]{(x+v-\alpha)}=\left. Y_1 \right|_{v_1=v} \\ GCD\bigl(\left. \bbox[#7FFF00]{H_2} \right|_{v_1=v} \ ,f(x+v)\bigr)= \bbox[#7FFF00]{(x+v-\beta)}=\left. Y_2 \right|_{v_1=v} \\ GCD\bigl(\left. \bbox[#00FFFF]{H_3} \right|_{v_1=v} \ ,f(x+v)\bigr)= \bbox[#00FFFF]{(x+v+\gamma)}=\left. Y_3 \right|_{v_1=v} \\ \end{array} \right. \\ \end{align}


(5.6)が最終目的の式ですが、この式は(5.4)を書き直しただけのものですが、少し飛躍があります。
すなわち終結式を計算する段階では、\(f(x)\) の根自体が判らない状況なのでこの様な対応は取れません。従って(5.1)で定義された \(\{H_i\}\) を求めることはできません。
しかし【5-4】の結論は、「たとえ \(f(x)\) の根が判らなくても、終結式 \(Res(f(x+v),g(v),v)\) は、因数分解された多項式の積となります」と言う事は保証しています。
従って、終結式の計算結果は、順番はどうであれ \(\{H_i\}\) に対応する多項式 \(\{R(x)_i\}\) が計算できるはずです。更にその \( \{R(x)_i \} \) と \(f(x+v)\) のGCDを 計算すれば、順番はどうであれ \(Y_i\) に対応する式 \(\{\tilde{Y}_j(x)\}\) も計算できるはずです。その事を(5.5)(5.6)は示しております。
ただし \(R_i(x)\) と根との対応がつかないので、(5.6)は \(x_i\) という文字で、\(f(x)\) の根を表した式になっております。 最後に、\(f(x)\) はこの \(\{\tilde{Y}_j(x)\}\) を使えば、(5.7)の様に因数分解できます。

\begin{align} &\{H_1,H_2,H_3\} \ \rightarrow \ \{R_1(x),R_2(x),R_3(x)\}, \quad \{Y_1,Y_2,Y_3\} \ \rightarrow \ \{\tilde{Y}_1(x),\tilde{Y}_2(x),\tilde{Y}_3(x)\} \\ &\qquad \Downarrow \notag \\ \end{align}

\begin{align} &\left\{ \begin{array}{l} GCD\bigl(R_1(x),f(x+v)\bigr)=(x+v-x_1) \equiv \tilde{Y}_1(x) \\ GCD\bigl(R_2(x),f(x+v)\bigr)=(x+v-x_2) \equiv \tilde{Y}_2(x) \\ GCD\bigl(R_3(x),f(x+v)\bigr)=(x+v-x_3) \equiv \tilde{Y}_3(x) \\ \end{array} \right. \\ \notag \\ &\therefore \ f(x)=\tilde{Y}_1(x-v) \cdot \tilde{Y}_2(x-v) \cdot \tilde{Y}_3(x-v)=(x-x_1)(x-x_2)(x-x_3) \\ \end{align}


【5-6】\(\{R_i(x)\}\) と \(f(x+v)\) のGCDの計算

\(\nextSection\)
それでは、実際に \(\{R_i(x)\}\) と \(f(x+v)\) の最大公約式を互除法を使って求めてみます。
互除法は変数 \(x\) に関して実行されていることに注意してください。計算は \(g(v)\) が生成する 代数体 \(F_0(v)\) 上で計算しております。 又、計算過程の式が見やすいように、各ステップを行列表示しております。更に計算が複雑にならないように、 剰余された多項式の最高次数の係数を \(c_i\) として抜き出し、各 \(r_i\) の最高次数の係数が \(1\) となるように しました。その際 \(c_i\) の逆数 \(c_i^{-1}\) も求めておきました。

\begin{align} &(step.6-0) \notag \\ \notag \\ &r_0=R_1={{x}^{3}}-21 x+17 \\ &r_1=f(x+v)=(x+v)^3-3(x+v)-1={{x}^{3}}+3 v {{x}^{2}}+3 {{v}^{2}} x-3 x+{{v}^{3}}-3 v-1 \notag \\ &\qquad \qquad \qquad ={{x}^{3}}+3 v {{x}^{2}}+3 {{v}^{2}} x-3 x+6 v+10 \quad ( \ mod \ g(v) \ )\\ \notag \\ &(step.6-1) \ Euclidean Algorithm \notag \\ \notag \\ &\begin{pmatrix} r_0\\r_1 \end{pmatrix} = \begin{pmatrix} q_1 & c_2 \\ 1 & 0 \end{pmatrix} \begin{pmatrix} r_1\\r_2 \end{pmatrix} \qquad Q_1= \begin{pmatrix} q_1 & c_2 \\ 1 & 0 \end{pmatrix} \qquad Q_1^{-1}=\frac{1}{c_2}\cdot \begin{pmatrix} 0 & c_2 \\ 1 & -q_1 \end{pmatrix} \\ \notag \\ &q_1=1 \qquad r_2={{x}^{2}}+\frac{2 {{v}^{2}} x}{3}+v x-6 x-{{v}^{2}}+11 \\ &c_2=-3v \qquad \frac{1}{c_2}=c_2^{-1}=\frac{1}{3}-\frac{{{v}^{2}}}{27} \qquad c_2\cdot c_2^{-1}=1 \quad ( \ mod \ g(v) \ ) \notag \\ \notag \\ &(step.6-2) \ Euclidean Algorithm \notag \\ \notag \\ &\begin{pmatrix} r_1\\r_2 \end{pmatrix} = \begin{pmatrix} q_2 & c_3 \\ 1 & 0 \end{pmatrix} \begin{pmatrix} r_2\\r_3 \end{pmatrix} \qquad Q_2= \begin{pmatrix} q_2 & c_3 \\ 1 & 0 \end{pmatrix} \qquad Q_2^{-1}=\frac{1}{c_3} \cdot \begin{pmatrix} 0 & c_3 \\ 1 & -q_2 \end{pmatrix} \\ \notag \\ &q_2=x-\frac{2 {{v}^{2}}}{3}+2 v+6 \qquad \bbox[#FFFF00]{r_3=x+\frac{{{v}^{2}}}{3}+v-2} \\ &c_3=-2 {{v}^{2}}+4 v+16 \qquad \frac{1}{c_3}=c_3^{-1}=-\frac{3 {{v}^{2}}}{38}+\frac{7 v}{38}+\frac{17}{38} \qquad c_3\cdot c_3^{-1}=1 \quad ( \ mod \ g(v) \ ) \notag \\ \notag \\ &(step.6-3) \ Euclidean Algorithm \notag \\ \notag \\ &\begin{pmatrix} r_2\\r_3 \end{pmatrix} = \begin{pmatrix} q_3 & c_4 \\ 1 & 0 \end{pmatrix} \begin{pmatrix} r_3\\r_4 \end{pmatrix} \qquad Q_3= \begin{pmatrix} q_3 & c_4 \\ 1 & 0 \end{pmatrix} \qquad Q_3^{-1}=\frac{1}{c_4} \cdot \begin{pmatrix} 0 & c_4 \\ 1 & -q_3 \end{pmatrix} \\ \notag \\ &q_3=x+\frac{{{v}^{2}}}{3}-4 \qquad r_4=0 \\ &c_4=1 \qquad \frac{1}{c_4}=c_4^{-1}=1 \qquad c_4\cdot c_4^{-1}=1 \quad ( \ mod \ g(v) \ ) \notag \\ \end{align}

(6.8)より判るように、剰余された余りの多項式が \(r_4=0\) となりましたので、(6.1)(6.2)の \(r_0\) と \(r_1\) のGCDは(6.6)の \(r_3\) である事が判りました。 同様な計算を \(R_2(x),R_3(x)\) に対しても実行しますと(6.9)となります。 以上で(5.4)の3つの最大公約式 (GCD)を求める事が出来ました。

\begin{align} &\left\{ \begin{array}{l} \tilde{Y}_1(x) \equiv x+v-x_1=GCD(R_1(x),f(x+v))=x+\frac{{{v}^{2}}}{3}+v-2\\ \tilde{Y}_2(x) \equiv x+v-x_2=GCD(R_2(x),f(x+v))= x-\frac{2 {{v}^{2}}}{3}+2 v+4 \\ \tilde{Y}_3(x) \equiv x+v-x_3=GCD(R_3(x),f(x+v))=x+\frac{{{v}^{2}}}{3}-2 \\ \end{array} \right. \\ \end{align}

(5.4)と(6.9)より3根 \(\{x_1,x_2,x_3\}\) は以下の様に求める事が出来ます。ただし \(s=1\) に注意してください。

\begin{align} &f(x)=\tilde{Y}_1(x-s \cdot v) \cdot \tilde{Y}_2(x-s \cdot v) \cdot \tilde{Y}_3(x-s \cdot v)=(x-x_1)(x-x_2)(x-x_3) \\ \notag \\ &\biggl[ x_1=-\frac{{{v}^{2}}}{3}+2 , \quad x_2=\frac{2 {{v}^{2}}}{3}-v-4, \quad x_3=-\frac{{{v}^{2}}}{3}+v+2 \ \biggr] \\ \end{align}


(6.10)の \(\{x_1,x_2,x_3\}\) の3根は、第4章の(3.4)と順番は違いますが、根の値は同じになりました。
以上がTrager Algorithmによる \(f(x)\) の代数体 \(F_0(v)\) での因数分解の手順とその理屈でした。

\(\quad \)
home \(\quad \)