■学会にて(直観幾何学研究会2019,その14)

 (その12),(その13)を補足.

===================================

  x^2+3x+2=(x+1)(x+2)

は整数係数のおなじみの因数分解の問題であるが,足して3,掛けて2となる2数を見つければよい.1と2がこれを満たすわけであるから,答えは右辺のようになる.

 それでは,以下の例はどうであろうか?

  x^2+4=(x+1)(x+4)

  x^2+2x+2=(x+3)(x+4)

一見分解できなさそうに見える左辺が,右辺のように1次式の積として表されているのだから明らかな誤りと映るに違いない.ところがこれが正しいのである.

 そんな馬鹿なと思われるかもしれないが,実はこの因数分解のトリックは「有限体」にある.整数や有理数,実数や複素数の元は無限個あり,演算規則が定義されている.整数は環をなし,有理数,実数,複素数,4元数,p進数は体をなす.このことから,体の定義を思い出してほしいのだが,0以外の元が常に乗法に関する逆元をもつ数体系を「体」という.

 そして,有限個の元と体の構造をもつ数体系が「有限体」である.有限体は,計算機や通信などでいまや花形の数学の理論となっている.そんなわけで,今回のコラムでは有限体を係数にもつ多項式の因数分解を扱うことにした.

 なお,代数学の教えるところによれば,n元の体(加減乗除の演算が定義された集合)が存在するための必要十分条件は,nが素数(のベキ乗)になっていることで,位数2,3,4=2^2,5の体は存在するが,位数6=2×3の体は存在しない.そして,位数7,8=2^3,9=3^2の体は存在して,位数10=2×5のものは存在しない.

===================================

【1】有限環と有限体

 整数には奇数と偶数がありますが,

  ODD=1,EVEN=0

として,加法と乗法を定義すると

  +  0  1     ×  0  1

  0  0  1     0  0  0

  1  1  0     1  0  1

となります.

 偶数か奇数かは2で割ったときの余りで識別できますが,同様に3で割ったときの余りで分類した数体系を考えます.余りは0,1,2のどれかですから,

  +  0  1  2     ×  0  1  2

  0  0  1  2     0  0  0  0

  1  1  2  0     1  0  1  2

  2  2  0  1     2  0  2  1

のような演算を定義することができるわけです.

 もう少し続けてみることにしましょう.n=4のとき

  +  0  1  2  3     ×  0  1  2  3

  0  0  1  2  3     0  0  0  0  0

  1  1  2  3  0     1  0  1  2  3

  2  2  3  0  1     2  0  2  0  2

  3  3  0  1  2     3  0  3  2  1

n=5のとき

  +  0  1  2  3  4

  0  0  1  2  3  4

  1  1  2  3  4  0

  2  2  3  4  0  1

  3  3  4  0  1  2

  4  4  0  1  2  3

  ×  0  1  2  3  4

  0  0  0  0  0  0

  1  0  1  2  3  4

  2  0  2  4  1  3

  3  0  3  1  4  2

  4  0  4  3  2  1

その算法(和と積)はそれぞれ和,積のmod5での余りとなります.足し算では巡回するだけで面白味がないので,これ以降はかけ算だけを続けてみます.

n=6のとき

  ×  0  1  2  3  4  5

  0  0  0  0  0  0  0

  1  0  1  2  3  4  5

  2  0  2  4  0  2  4

  3  0  3  0  3  0  3

  4  0  4  2  0  4  2

  5  0  5  4  3  2  1

n=7のとき

  ×  0  1  2  3  4  5  6

  0  0  0  0  0  0  0  0

  1  0  1  2  3  4  5  6

  2  0  2  4  6  1  3  5

  3  0  3  6  2  5  1  4

  4  0  4  1  5  2  6  3

  5  0  5  3  1  6  4  2

  6  0  6  5  4  3  2  1

 いずれのかけ算の表でも,

  1)0の行・列はすべて0

  2)主対角線に関して対称

です.また,0以外の行・列では,n=2,3,5,7の場合,0〜n−1が一度ずつ現れましたが,n=4,6ではそうはならず,非常に大きな違いがあることに気づきます.

 a・a^(-1)=1となるa^(-1)をaの逆元といいます.n=7の表で説明すると,1の逆元は1,2の逆元は4,3の逆元は5,4の逆元は2,5の逆元は3,6の逆元は6となるというわけです.

 0以外の元が常に乗法に関する逆元をもつ数体系を「体」といいますが,以上の結果において,2,3,5,7は素数,4,6は合成数ですから,集合

  {0,1,2,・・・,n−1}

はnが素数のとき体となる,合成数のとき環であって体ではないことを示しているのです.

 重要なのは,

  「pが素数のとき,Z/pZは体である.」

ということで,素数pで割ったときの余りで分類した数体系を考えると,p個の元からなる有限体ができあがります.そして,素数pに対して定まる有限体をFpと書きます.

  F7={0,1,2,3,4,5,6}

はあるが,F6というものは存在しないというわけです.

 なお,有限体は乗法の交換法則を満たすので可換体となります.有限体が必ず可換体になることを証明したのはウェダーバーンです(1905年).

===================================

 有限体Fpの0以外の元をaとします.このとき,aをp回足すとはじめて0になります.素数7を例にとって,F7でa=3を何回もたしてみると

  3+3=6

  3+3+3=6+3=2

  3+3+3+3=2+3=5

  3+3+3+3+3=5+3=1

  3+3+3+3+3+3=1+3=4

  3+3+3+3+3+3+3=4+3=0

このpを有限体Fpの標数といいます.

 また,aをp−1回掛けると1になります.F7において

  a\^n  1  2  3  4  5  6

   1   1  1  1  1  1  1

   2   2  4  1  2  4  1

   3   3  2  6  4  5  1

   4   4  2  1  4  2  1

   5   5  4  6  2  3  1

   6   6  1  6  1  6  1

最後の列はすべて1です.

 このように,pで割り切れない整数aに対して,フェルマーの定理

  a^(p-1)=1  (mod p)

が成り立つというわけです.また,このことからa^(p-2)がaの逆元となることも理解されます.

  1/a=a^(p-2)

F7では,

  1/3=3^5=5,1/6=6^5=6

 なお,この表において,1は1乗してはじめて1になりますが,2は3乗して,3は6乗して,4は3乗して,5は6乗して,6は2乗してはじめて1になります.pと互いに素な整数aがp−1乗してはじめて1になるとき,aを原始根といいます.F7においては3,5が原始根です.

 Fpにおける原始根aが与えられたとき,0以外のすべての元は,

  a^i   (i=0〜p-2)

の形に表すことができます.

===================================

[補]ブール代数

 コンピュータはたくさんのスイッチ(ON/OFF素子)からできているわけですが,

  ON=1,OFF=0

という2つの元からなる数体系を対応させることができます.

 そして,演算規則

  +  0  1     ×  0  1

  0  0  1     0  0  0

  1  1  1     1  0  1

がそれぞれOR回路,AND回路に相当します.

 このような演算体系は「ブール代数」と呼ばれます.F2のときの2を法とした通常の剰余とは,演算規則が1+1=1のところで異なっています.

===================================