0

有限体上の既約多項式の個数2

94
0

さて,いよいよ既約多項式の個数を数えます.あるn次多項式を因数分解することでnの約数である次数の既約多項式が全てちょうど1回出てくるということを見ます.すると,約数を渡る和に対しては後述するメビウスの反転公式が使えるので個数を求めることができます.

xpnxFp[x]に対して次が成り立つ.
(1)nの全ての約数mに対しxpnxxpmxを因子にもつ.
(2)nの全ての約数mに対しxpnxは次数mの全ての既約多項式を因子にもつ.
(3)mnの約数でなければ,xpnxは次数mの既約多項式を因子にもたない.
(4)xpnx1次以上の多項式の平方を因子にもたない.

  1. FpnFpの代数閉包に含まれるとしてよい.m|nのときFpmFpnであり,Fpm,Fpnはそれぞれxpmx=0,xpnx=0の解集合なのでxpmxxpnxを割り切る.
  2. (1)によってm|nなるmに対し,xpmx次数mの既約多項式を全て因子にもつことを示せば十分.もしxpmxの因子にない次数mの既約多項式f(x)が存在するとする.Fp[x]はPIDだから素イデアルは極大イデアルであり,Fp/(f(x))は体である.これは拡大次数がmなので位数はpm.前回の命題3からこの体の元はαp=αを満たす.
    Fp[t]Fp[x]/(f(x)),p(t)p(x)を考える.この写像の核は全体ではなく,f(x)はこの核に含まれる.さらにxpmx=0なのでtpmtもこの核に含まれる.Fp[t]はPIDでf(t)は既約だから,核は(f(x))で与えられる.よってtpmtf(t)で割り切れる.これは矛盾である.
  3. mnの約数でなく,Fp上既約な次数mの多項式f(x)xpnxの因子になると仮定する.(2)からf(x)xpmxの因子にも含まれ,f(x)=0の全ての解はFpm,Fpnの両方に属する.K=FpmFpnとおくとKは加減乗除で閉じているのでFpm,Fpnの共通の部分体である.よって前回の定理5によりあるkZ>0が存在してK=Fpk,k|m,k|nである.一方でf(x)=0の全ての解がKに属することからxpkxf(x)を因子にもち,f(x)Fp上既約で次数mだからkm.従ってk=mであり,m|nとなって矛盾する.
    (4)もし,xpnx1次以上の多項式f(x)の平方を因子にもったと仮定すると
    xpnx=f(x)g(x),g(x)Fp[x]と表され,この両辺を微分すると,標数がpであることから1=f(x)(2f(x)g(x)+f(x)g(x))となって矛盾する.

これでxpnxの因数分解に現れる既約多項式の個数を数えればよいことがわかりました.因数分解に現れる既約多項式の次数全ての和がpnに一致することがわかっているのでこれを使って個数を求めます.

メビウス関数

メビウス関数μ:Z>0Cとは,nがある素数の2乗で割り切れるときμ(n)=0,p1,p2,,ptが相異なる素数ならμ(n)=(1)tと定めることで得られる関数である.

メビウス関数は次の著しい性質を持ちます.

d|nμ(d)={1 (n=1)0 (n>1)

まず,m,n>1が互いに素であるときμ(mn)=μ(m)μ(n)であることを示す.mまたはnがある素数の2乗で割り切れればmnもその素数の2乗で割り切れるのでμ(mn)=0である.m,nがどの素数の2乗でも割り切れなければ,異なる素数p1,,pt,q1,,qsによりn=p1pt,m=q1qsと表せる.mnの素因子の数はt+sとなるのでμ(n)=(1)t,μ(m)=(1)s,μ(mn)=(1)s+t.よってμ(m)μ(n)=μ(mn).
次にF(n)=d|nμ(d)とおく.m,nが互いに素であるときF(mn)=F(m)F(n)であることをみる.n=p1a1ptat,m=q1b1qsbsを素因数分解とする.ただし,p1,,pt,q1,,qsは全て異なる素数でa1,,bs>0.mnの約数とm,nの約数の組が一対一に対応することをみる.dmnの約数ならd=p1α1ptαtq1β1qsβs,(α1ai,βjbj)という形である.d1=p1α1ptαt,d2=q1β1qsβsとおくとd=d1d2,d1|m,d2|nである.逆にd=d1d2,d1|n,d2|mならd1|dなのでd1の素因数分解でpiのべきはαi以下だが,αiより真に小さければpid2の素因数分解に現れなければならない.しかし,d2|mなのでこれは矛盾である.
従ってd1=p1α1ptαt,d2=q1β1qsβs.またd1|n,d2|mならd1d2|mn.よって
F(mn)=d|mnμ(d)=d1|n,d2|mμ(d1d2).d1,d2は互いに素なので
μ(d1d2)=μ(d1)μ(d2)である.従って
d1|n,d2|mμ(d1d2)=d1|n,d2|mμ(d1)μ(d2)=F(m)F(n).
これによりnは素数べきであるとして示せばよい.pを素数,a>0として
d|paμ(d)=μ(1)+μ(p)++μ(pa)=11+0++0=0.

上の証明内で示した次の性質を持つ関数を乗法的関数といいます.

乗法的関数

f:Z>0Cが乗法的関数であるとはf(1)=1であり互いに素な整数m,nに対しf(mn)=f(m)f(n)を満たすもののことをいう.

つまり,メビウス関数は乗法的関数です.さらに,上で示したメビウス関数のnの約数に渡る和が再び乗法的関数になるという事実は,一般の乗法的関数に対して成り立ちます.証明も同様です.
さらに,次の反転公式によりnの約数を渡る総和がわかっていればnでの値がわかります.

メビウスの反転公式

f:Z>0Cを関数とする.F(n)=d|nf(d)と定義すると,f(n)=d|nμ(d)F(nd)=d|nμ(nd)F(d).

dndで置き換えることによりd|nμ(d)F(nd)=d|nμ(nd)F(d)となる.よってf(n)=d|nμ(nd)F(d)を示す.F(n)の定義よりd|nμ(nd)F(d)=d|nμ(nd)e|df(e)となる.d|ne|dの組を考えることはd=ed1とおくとe|nd1|ne(deで割った値)を考えることと同じである.よって
d|nμ(nd)e|df(e)=e|nf(e)d1|nef(ned1)=e|nf(e)d1|nef(d1).
命題2からne=1となるeつまりe=nだけ考えればよい.従って
e|nf(e)d1|nef(d1)=f(n).

こうしてついに目標であった式を得ます!

既約多項式の個数

Fp上のモニックで既約なn次多項式の個数をNnとする.
Nn=1nd|nμ(nd)pdである.

定理1からxpnxの因数分解にはnの約数であるdに対しd次既約多項式が全てちょうど1回現れ,他の次数の既約多項式は現れない.それらの次数を足し合わせればpnであるからd|ndNd=pn.これにメビウスの反転公式を用いてnNn=d|nμ(nd)pd.よってNn=1nd|nμ(nd)pd.

位数をpnに置き換えることで他の有限体上の既約多項式でも同様だと考えられます.
最後に任意にϵ>0をとるときmm>mなら(log2m+1)(log2m+1)pm2<ϵをみたすようにとると|Nnpnn1|<ϵであることがわかります.実際m=p1a1pnanとおくときaiは高々log2m,nも高々log2mなのでpm2以下で割られた数が高々(log2m+1)(log2m+1)個出ます.

参考文献: 元祖ワシ的日記 有限体の既約多項式の数を求める
大阪うたら通信 有限体の勉強 〜素体上の既約多項式への分解〜
wikipedia 素数定理
整数論1,雪江明彦,日本評論社,2013

投稿日:2024113
OptHub AI Competition

この記事を高評価した人

高評価したユーザはいません

この記事に送られたバッジ

バッジはありません。
バッチを贈って投稿者を応援しよう

バッチを贈ると投稿者に現金やAmazonのギフトカードが還元されます。

投稿者

qq_pp
qq_pp
6
3429

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中