平成16年11月21日

[流れ星]

     第146回数学的な応募問題解答

      <解答募集期間:11月1日〜11月21日>
[高次の因数分解]

今回、高次の因数分解を問題にします。次の式を因数分解しなさい。

問題1:x15−1
問題2:x15+1
問題3:x21−1
問題4:x35―1

NO1「Jun」   11/08: 22時42分受信 更新11/21
ここをクリックください。

NO2「Toru」  11/10: 20時07分受信 更新11/21
係数は有理数として考えます。

解答の準備として、

命題 1の原始n乗根はφ(n)-1以下の次数の方程式の根とはならない。の証明を試みます。
(φ(n)はオイラー関数で、n以下でnと素な自然数の数)

有理数体に1の原始n乗根αを添加した体Q(α)の同型写像Fを考えます。
同型写像は1対1の写像で
(1)F(x+y)=F(x)+F(y)
(2)F(xy)=F(x)F(y)
が成り立つようなものをいいます。これから有理数体Qの元xについてはすべてF(x)=xが言えますが、
αについては、(F(α))^n=F(α^n)=F(1)=1および、もし、k<nのkについて(F(α))^k=1ならばF(α^k)=1となって矛盾を生じ、F(α)も1の原始n乗根でなければならないことが分かります。
 逆にαの移り先を1の原始n乗根の一つβに定めれば、F(α)=β、β=α^k,α=β^k’(0<k,k’<n、k、k’はnと素の整数) となるk,k’
が存在し、Fの逆写像F-1(α)=F-1(β^k’)=(F-1(β))^k=α^k’ と定まることなどから、 Q(α)→Q(α) の同型写像Fが1つ定まります。
1の原始n乗根はφ(n)個ありますから、φ(n)個の自己同型写像が存在することになります。
 ここでαがある代数方程式a(0)X^m+a(1)X^(m-1)+------+a(m-1)X+a(m)=0の根であるとすれば、
a(0)F(α)^m+a(1) F(α)^(m-1)+--------------+a(m-1)F(α)+a(m)=F(a(0)α^m+a(1)α^(m-1)+------+a(m-1)α+a(m))=F(0)=0で
F(α)も同じ方程式の根になり、この方程式は異なるφ(n)個の根を持つことから、φ(n)次以上であることが言えたことになります。

問題1 f(x)=x^15-1 、1の原始3乗根の1つp、1の原始5乗根の1つ、qとすると、1,p,qはf(x)=0を満たし、
f(x)は(x-1)(x^2+x+1)(x^4+x^3+x^2+x+1)で割り切れる。実際に割算を実行してみると、
x^15-1=(x-1)(x^2+x+1)(x^4+x^3+x^2+x+1)(x^8-x^7+x^5-x^4+x^3-x+1)φ(3)=2 φ(5)=4  f(15)=8より、これ以上の因数分解はできない。

問題2 x^15+1=-((-x)^15-1)から問題1のxを(-x)に置き換えて、-1倍する。

x^15+1=(x+1)(x^2-x+1)(x^4-x^3+x^2-x+1)(x^8+x^7-x^5-x^4-x^3+x+1)

問題3
x^21-1=(x-1)(x^2+x+1)(x^6+x^5+x^4+x^3+x^2+x+1)(x^12-x^11+x^9-x^8+x^6-x^4+x^3-x+1)
(φ(3)=2,φ(7)=6,φ(21)=12)

問題4
x^35-1=(x-1)(x^4+x^3+x^2+x+1)(x^6+x^5+x^4+x^3+x^2+x+1)(x^24-x^23+x^19-x^18+x^17-x^16+x^14-x^13+x^12-x^11+x^10-x^8+x^7-x^6+x^5-x+1)
(φ(5)=4 φ(7)=6 φ(35)=24)

最近「群の発見」原田耕一郎著 岩波書店というのを読みはじめました。それで、本を参考にしながら、いろいろ考えてみました、理解が不十分な点が多くあまり自信はもてません。1の原始n乗根の移り先がやはり1の原始n乗根にならなければいけないことはその通りだと思いますが、その時本当に自己同型写像になっているということを示すところがどうも今一つの感じです。まちがいや、まどろっこしいところがありそうですが、大分時間もたってしまったので取りあえず送っておきます。よろしくお願いします。 

NO3「kashiwagi」11/11: 07時56分受信 更新11/21
146回 解答

x15+1= (x5)3+13より
    x15+1=(x5+1)(x10-x5+1) =(x+1)(x4-x3+x2-x+1)(x10-x5+1)

又、x15+1=(x3)5+15より
    x15+1=(x3+1){(x3)4-(x3)3+(x3)2-x3+1} =(x3-1)(x12+x9+x6+x3+1) =(x+1)(x2-x+1)(x12-x9+x6-x3+1)
このふたつは同値であるから、x4-x3+x2-x+1 ないし x10-x5+1 はx2-x+1で割り切れることがわかる。実際に計算をすると、
    x10-x5+1=(x2-x+1)(x8+x7-x5-x4-x3+x+1)
因って求めるものは
    x15+1=(x+1)(x2-x+1)(x4-x3+x2-x+1) (x8+x7-x5-x4-x3+x+1)

以下全て上記と同様な計算を繰り返し、

     x15-1=(x-1)(x2+x+1)(x4+x3+x2+x+1) (x8-x7+x5-x4+x3-x+1)

     x21-1=(x-1)(x2+x+1) (x6+x5+x4+x3+x2+x+1) (x12-x11+x9-x8+x6- x4+x3-x+1)

x31-1=(x-1)(x4+x3+x2+x+1)(x6+x5+x4+x3+x2+x+1)×

(x24-x23+x19-x18+x17-x16+x14-x13+x12-x11+x10-x8+x7-x6+x5+1)

を得る。

NO4「浜田明巳」11/13: 08時57分受信 更新11/21
<水の流れ:「浜田さんから、厳密でないので、正解にしないでください」とコメントがありました。>
問題1.
  x15−1=(x−1)(x14+x13+x12+・・・+1)
       =(x−1){(x+x+1)x12+(x+x+1)x+(x+x+1)x+(x+x+1)x+(x+x+1)}
       =(x−1)(x+x+1)(x12+x+x+x+1)
  x15−1=(x)−1
       =(x−1){(x)+(x)+(x)+x+1}
       =(x−1)(x+x+1)(x12+x+x+x+1)
  x15−1=(x)−1
       =(x−1){(x)+x+1}
       =(x−1)(x+x+x+x+1)(x10+x+1)
 ここで,
  (x12+x+x+x+1)÷(x+x+x+x+1)
 =x−x+x−x+x−x+1
  ∴x15−1=(x−1)(x+x+1)(x+x+x+x+1)(x−x+x−x+x−x+1)
 念のため,
  x+x+x+x+1,x−x+x−x+x−x+1
がこれ以上因数分解出来るかどうか,次のUBASICのプログラム146_01.ubで調べた.尚,UBASICを選んだ理由は,有理式計算が出来るからである.

10 'asave "146_01.ub"
20 MAX=3:KOSUU=0
30 print "X^4+X^3+X^2+X+1=(X^2+A*X+B)*(X^2+C*X+D) ?"
40 for A=-MAX to MAX
50 for B=-1 to 1 step 2
60 for C=-MAX to MAX
70 D=int(1/B)
80 if _X^4+_X^3+X^2+_X+1<>(_X^2+A*_X^2+B)*(_X^2+C*_X+D) then 110
90 print "(X^2+(";A;")*X+(";B;"))*(X^2+(";C;")*X+(";D;"))"
100 KOSUU+=1
110 next C
120 next B
130 next A
140 if KOSUU=0 then print "係数が";-MAX;"以上";MAX;"以下の範囲では因数分解出来ませんでした."
150 '
160 MAX=3:KOSUU=0
170 OWARI=0:DANKAI=1
180 while and{OWARI=0,DANKAI<=3}
190 print
200 if DANKAI=1 then print "X^8-X^7+X^5-X^4+X^3-X+1=(X^2+A*X+B)*(X^6+C*X^5+D*X^4+E*X^3+F*X^2+G*X+H) ?":goto 230
210 if DANKAI=2 then print "X^8-X^7+X^5-X^4+X^3-X+1=(X^3+A*X^2+B*X+C)*(X^5+D*X^4+E*X^3+F*X^2+G*X+H) ?":goto 230
220 print "X^8-X^7+X^5-X^4+X^3-X+1=(X^4+A*X^3+B*X^2+C*X+D)*(X^4+E*X^3+F*X^2+G*X+H) ?"
230 for A=-MAX to MAX
240 if DANKAI=1 then BMIN=-1:BMAX=1:BSTEP=2:else BMIN=-MAX:BMAX=MAX:BSTEP=1
250 for B=BMIN to BMAX step BSTEP
260 if DANKAI=2 then CMIN=-1:CMAX=1:CSTEP=2:else CMIN=-MAX:CMAX=MAX:CSTEP=1
270 for C=CMIN to CMAX step CSTEP
280 if DANKAI=3 then DMIN=-1:DMAX=1:DSTEP=2:else DMIN=-MAX:DMAX=MAX:DSTEP=1
290 for D=DMIN to DMAX step DSTEP
300 for E=-MAX to MAX
310 for F=-MAX to MAX
320 for G=-MAX to MAX
330 if DANKAI=1 then H=int(1/B):else if DANKAI=2 then H=int(1/C):else H=int(1/D)
340 if DANKAI=1 and _X^8-_X^7+_X^5-_X^4+_X^3-_X+1<>(_X^2+A*_X+B)*(_X^6+C*_X^5+D*_X^4+E*_X^3+F*_X^2+G*_X+H) then 410
350 if DANKAI=2 and _X^8-_X^7+_X^5-_X^4+_X^3-_X+1<>(_X^3+A*_X^2+B*_X+C)*(_X^5+D*_X^4+E*_X^3+F*_X^2+G*_X+H) then 410
360 if DANKAI=3 and _X^8-_X^7+_X^5-_X^4+_X^3-_X+1<>(_X^4+A*_X^3+B*_X^2+C*_X+D)*(_X^4+E*_X^3+F*_X^2+G*_X+H) then 410
370 if DANKAI=1 then print "(X^2+(";A;")*X+(";B;"))*(X^6+(";C;")*X^5+(";D;")*X^4+(";E;")*X^3+(";F;")*X^2+(";G;")*X+(";H;"))":goto 400
380 if DANKAI=2 then print "(X^3+(";A;")*X^2+(";B;")*X+(";C;"))*(X^5+(";D;")*X^4+(";E;")*X^3+(";F;")*X^2+(";G;")*X+(";H;"))":goto 400
390 print "(X^4+(";A;")*X^3+(";B;")*X^2+(";C;")*X+(";D;"))*(X^4+(";E;")*X^3+(";F;")*X^2+(";G;")*X+(";H;"))"
400 KOSUU+=1
410 next G
420 next F
430 next E
440 next D
450 next C
460 next B
470 next A
480 if KOSUU>0 then OWARI=1:goto 510
490 print "係数が";-MAX;"以上";MAX;"以下の範囲では因数分解出来ませんでした."
500 DANKAI+=1
510 wend
520 end

 このプログラムにより,因数分解がこれ以上出来ず,x15−1の計算結果が以上のようであることが分かった.

問題2.
  x15+1=−{(−x)15−1}
       =−{(−x)−1}{(−x)+(−x)+1}{(−x)+(−x)+(−x)+(−x)+1}{(−x)−(−x)+(−x)−(−x)+(−x)−(−x)+1}
       =(x+1)(x−x+1)(x−x+x−x+1)(x+x−x−x−x+x+1)

問題3.
  x21−1=(x−1)(x20+x19+x18+・・・+1)
       =(x−1){(x+x+1)x18+(x+x+1)x15+(x+x+1)x12+・・・+(x+x+1)}
       =(x−1)(x+x+1)(x18+x15+x12+・・・+1)
  x21−1=(x)−1
       =(x−1){(x)+(x)+(x)+・・・+1}
       =(x−1)(x+x+1)(x18+x15+x12+・・・+1)
  x21−1=(x)−1
       =(x−1){(x)+x+1}
       =(x−1)(x+x+x+・・・+1)(x14+x+1)
 ここで,
  (x18+x15+x12+・・・+1)÷(x+x+x+・・・+1)
 =x12−x11+x−x+x−x+x−x+1
  ∴x21−1=(x−1)(x+x+1)(x+x+x+・・・+1)(x12−x11+x−x+x−x+x−x+1)

 念のため,
  x+x+x+・・・+1,x12−x11+x−x+x−x+x−x+1
がこれ以上因数分解出来るかどうか,次のUBASICのプログラム146_03.ubで調べた.

10 'asave "146_03.ub"
20 MAX=2:KOSUU=0
30 OWARI=0:DANKAI=1
40 while and{OWARI=0,DANKAI<=2}
50 if DANKAI=1 then print "X^6+X^5+X^4+X^3+X^2+X+1=(X^2+A*X+B)*(X^4+C*X^3+D*X^2+E*X+F) ?":goto 70
60 print "X^6+X^5+X^4+X^3+X^2+X+1=(X^3+A*X^2+B*X+C)*(X^3+D*X^2+E*X+F) ?"
70 for A=-MAX to MAX
80 if DANKAI=1 then BMIN=-1:BMAX=1:BSTEP=2:else BMIN=-MAX:BMAX=MAX:BSTEP=1
90 for B=BMIN to BMAX step BSTEP
100 if DANKAI=2 then CMIN=-1:CMAX=1:CSTEP=2:else CMIN=-MAX:CMAX=MAX:CSTEP=1
110 for C=CMIN to CMAX step CSTEP
120 for D=-MAX to MAX
130 for E=-MAX to MAX
140 if DANKAI=1 then F=int(1/B):else F=int(1/C)
150 if DANKAI=1 and _X^6+_X^5+_X^4+_X^3+_X^2+_X+1<>(_X^2+A*_X+B)*(_X^4+C*_X^3+D*_X^2+E*_X+F) then 200
160 if DANKAI=2 and _X^6+_X^5+_X^4+_X^3+_X^2+_X+1<>(_X^3+A*_X^2+B*_X+C)*(_X^3+D*_X^2+E*_X+F) then 200
170 if DANKAI=1 then print "(X^2+(";A;")*X+(";B;"))*(X^4+(";C;")*X^3+(";D;")*X^2+(";E;")*X+(";F;"))":goto 190
180 print "(X^3+(";A;")*X^2+(";B;")*X+(";C;"))*(X^3+(";D;")*X^2+(";E;")*X+(";F;"))"
190 KOSUU+=1
200 next E
210 next D
220 next C
230 next B
240 next A
250 if KOSUU>0 then OWARI=1:goto 280
260 print "係数が";-MAX;"以上";MAX;"以下の範囲では因数分解出来ませんでした."
270 DANKAI+=1
280 wend
290 '
300 MAX=1:KOSUU=0
310 OWARI=0:DANKAI=1
320 while and{OWARI=0,DANKAI<=5}
330 if DANKAI=1 then print "X^12-X^11+X^9-X^8+X^6-X^4+X^3-X+1=(X^2+A*X+B)*(X^10+C*X^9+D*X^8+E*X^7+F*X^6+G*X^5+H*X^4+I*X^3+J*X^2+K*X+L) ?":goto 380
340 if DANKAI=2 then print "X^12-X^11+X^9-X^8+X^6-X^4+X^3-X+1=(X^3+A*X^2+B*X+C)*(X^9+D*X^8+E*X^7+F*X^6+G*X^5+H*X^4+I*X^3+J*X^2+K*X+L) ?":goto 380
350 if DANKAI=3 then print "X^12-X^11+X^9-X^8+X^6-X^4+X^3-X+1=(X^4+A*X^3+B*X^2+C*X+D)*(X^8+E*X^7+F*X^6+G*X^5+H*X^4+I*X^3+J*X^2+K*X+L) ?":goto 380
360 if DANKAI=4 then print "X^12-X^11+X^9-X^8+X^6-X^4+X^3-X+1=(X^5+A*X^4+B*X^3+C*X^2+D*X+E)*(X^7+F*X^6+G*X^5+H*X^4+I*X^3+J*X^2+K*X+L) ?":goto 380
370 print "X^12-X^11+X^9-X^8+X^6-X^4+X^3-X+1=(X^6+A*X^5+B*X^4+C*X^3+D*X^2+E*X+F)*(X^6+G*X^5+H*X^4+I*X^3+J*X^2+K*X+L) ?"
380 for A=-MAX to MAX
390 if DANKAI=1 then BMIN=-1:BMAX=1:BSTEP=2:else BMIN=-MAX:BMAX=MAX:BSTEP=1
400 for B=BMIN to BMAX step BSTEP
410 if DANKAI=2 then CMIN=-1:CMAX=1:CSTEP=2:else CMIN=-MAX:CMAX=MAX:CSTEP=1
420 for C=CMIN to CMAX step CSTEP
430 if DANKAI=3 then DMIN=-1:DMAX=1:DSTEP=2:else DMIN=-MAX:DMAX=MAX:DSTEP=1
440 for D=DMIN to DMAX step DSTEP
450 if DANKAI=4 then EMIN=-1:EMAX=1:ESTEP=2:else EMIN=-MAX:EMAX=MAX:ESTEP=1
460 for E=EMIN to EMAX step ESTEP
470 if DANKAI=5 then FMIN=-1:FMAX=1:FSTEP=2:else FMIN=-MAX:FMAX=MAX:FSTEP=1
480 for F=FMIN to FMAX step FSTEP
490 for G=-MAX to MAX
500 for H=-MAX to MAX
510 for I=-MAX to MAX
520 for J=-MAX to MAX
530 for K=-MAX to MAX
540 if DANKAI=1 then L=int(1/B):else if DANKAI=2 then L=int(1/C):else if DANKAI=3 then L=int(1/D):else if DANKAI=4 then L=int(1/E):else L=int(1/F)
550 if DANKAI=1 and _X^12-_X^11+_X^9-_X^8+_X^6-_X^4+_X^3-_X+1<>(_X^2+A*_X+B)*(_X^10+C*_X^9+D*_X^8+E*_X^7+F*_X^6+G*_X^5+H*_X^4+I*_X^3+J*_X^2+K*_X+L) then 660
560 if DANKAI=2 and _X^12-_X^11+_X^9-_X^8+_X^6-_X^4+_X^3-_X+1<>(_X^3+A*_X^2+B*_X+C)*(_X^9+D*_X^8+E*_X^7+F*_X^6+G*_X^5+H*_X^4+I*_X^3+J*_X^2+K*_X+L) then 660
570 if DANKAI=3 and _X^12-_X^11+_X^9-_X^8+_X^6-_X^4+_X^3-_X+1<>(_X^4+A*_X^3+B*_X^2+C*_X+D)*(_X^8+E*_X^7+F*_X^6+G*_X^5+H*_X^4+I*_X^3+J*_X^2+K*_X+L) then 660
580 if DANKAI=4 and _X^12-_X^11+_X^9-_X^8+_X^6-_X^4+_X^3-_X+1<>(_X^5+A*_X^4+B*_X^3+C*_X^2+D*_X+E)*(_X^7+F*_X^6+G*_X^5+H*_X^4+I*_X^3+J*_X^2+K*_X+L) then 660
590 if DANKAI=5 and _X^12-_X^11+_X^9-_X^8+_X^6-_X^4+_X^3-_X+1<>(_X^6+A*_X^5+B*_X^4+C*_X^3+D*_X^2+E*_X+F)*(_X^6+G*_X^5+H*_X^4+I*_X^3+J*_X^2+K*_X+L) then 660
600 if DANKAI=1 then print "(X^2+(";A;")*X+(";B;"))*(X^10+(";C;")*X^9+(";D;")*X^8+(";E;")*X^7+(";F;")*X^6+(";G;")*X^5+(";H;")*X^4+(";I;")*X^3+(";J;")*X^2+(";K;")*X+(";L;"))":goto 650
610 if DANKAI=2 then print "(X^3+(";A;")*X^2+(";B;")*X+(";C;"))*(X^9+(";D;")*X^8+(";E;")*X^7+(";F;")*X^6+(";G;")*X^5+(";H;")*X^4+(";I;")*X^3+(";J;")*X^2+(";K;")*X+(";L;"))":goto 650
620 if DANKAI=3 then print "(X^4+(";A;")*X^3+(";B;")*X^2+(";C;")*X+(";D;"))*(X^8+(";E;")*X^7+(";F;")*X^6+(";G;")*X^5+(";H;")*X^4+(";I;")*X^3+(";J;")*X^2+(";K;")*X+(";L;"))":goto 650
630 if DANKAI=4 then print "(X^5+(";A;")*X^4+(";B;")*X^3+(";C;")*X^2+(";D;")*X+(";E;"))*(X^7+(";F;")*X^6+(";G;")*X^5+(";H;")*X^4+(";I;")*X^3+(";J;")*X^2+(";K;")*X+(";L;"))":goto 650
640 print "(X^6+(";A;")*X^5+(";B;")*X^4+(";C;")*X^3+(";D;")*X^2+(";E;")*X+(";F;"))*(X^6+(";G;")*X^5+(";H;")*X^4+(";I;")*X^3+(";J;")*X^2+(";K;")*X+(";L;"))"
650 KOSUU+=1
660 next K
670 next J
680 next I
690 next H
700 next G
710 next F
720 next E
730 next D
740 next C
750 next B
760 next A
770 if KOSUU>0 then OWARI=1:goto 800
780 print "係数が";-MAX;"以上";MAX;"以下の範囲では因数分解出来ませんでした."
790 DANKAI+=1
800 wend
810 end

 このプログラムにより,因数分解がこれ以上出来ず,x21−1の計算結果が以上のようであることが分かった.

問題4.
 問題1,3から,帰納的に,35=5×7であることから,x35−1は,
  x−1,x+x+x+x+1,x+x+x+・・・+1
を因数に持つことが分かる.
 以下に示すプログラム146_04.ubにより,
  x35−1
 =(x−1)(x+x+x+x+1)(x+x+x+・・・+1)(x24−x23+x19−x18+x17−x16+x14−x13+x12−x11+x10−x+x−x+x−x+1)
であることが分かる.

10 'asave "146_04.ub"
20 print "(X^35-1)/((X-1)*(X^4+X^3+X^2+X+1)*(X^6+X^5+X^4+X^3+X^2+X+1))=?"
30 print "商:";(_X^35-1)\((_X-1)*(_X^4+_X^3+_X^2+_X+1)*(_X^6+_X^5+_X^4+_X^3+_X^2+_X+1))
40 print "余り:";(_X^35-1)@((_X-1)*(_X^4+_X^3+_X^2+_X+1)*(_X^6+_X^5+_X^4+_X^3+_X^2+_X+1))
50 end

 最後の因数の規則性がよく分からず,一般化は出来なかった.
  x−1
  x−1=(x−1)(x+x+1)
  x−1=(x−1)(x+x+x+x+1)
  x−1=(x−1)(x+x+x+・・・+x+1)
  x−1=(x−1)(x+x+1)(x+x+1)
  x11−1=(x−1)(x10+x+x+・・・+1)
  x13−1=(x−1)(x12+x11+x10+・・・+1)
  x15−1=(x−1)(x+x+1)(x+x+x+x+1)(x−x+x−x+x−x+1)
  x17−1=(x−1)(x16+x15+x14+・・・+1)
  x19−1=(x−1)(x18+x17+x16+・・・+1)
  x21−1=(x−1)(x+x+1)(x+x+x+・・・+1)(x12−x11+x−x+x−x+x−x+1)
  x23−1=(x−1)(x22+x21+x20+・・・+1)
  x25−1=(x−1)(x+x+x+x+1)(x20+x15+x10+x+1)
  x27−1=(x−1)(x+x+1)(x+x+1)(x18+x+1)
  x29−1=(x−1)(x28+x27+x26+・・・+1)
  x31−1=(x−1)(x30+x29+x28+・・・+1)
  x33−1=(x−1)(x+x+1)(x10+x+x+・・・+1)(x20−x19+x17−x16+x14−x13+x11−x10+x−x+x−x+x−x+1)
  x35−1=(x−1)(x+x+x+x+1)(x+x+x+・・・+1)(x24−x23+x19−x18+x17−x16+x14−x13+x12−x11+x10−x+x−x+x−x+1)
  ・・・
 x−1(nは正奇数)を因数分解する場合,x−1を因数にするのは勿論であるが,nの約数として素数pがあるとき,この式は,
  xp−1+xp−2+xp−3+・・・+1
を因数に持つ.
 ただし,nがpを約数とするとき,
  (xp−1+xp−2+xp−3+・・・+1)
を因数にする訳ではない.簡単に言える性質は,このくらいではないか

NO5「中川幸一」11/16: 23時51分受信 更新11/21  

     
 
    

<自宅>  mizuryu@aqua.ocn.ne.jp