0%

信息安全数学基础 Chapter 3——有限域(一)

Chapter 3 有限域

定义3.1 设F\mathbb F为一个非空集合,在其上定义两种运算:加法和乘法,这两种运算在集合上封闭,且满足下列条件:

  1. F\mathbb F中所有元素对于加法形成加法交换群
  2. F\mathbb F中所有非零元素(记为F∗\mathbb F^*)对于乘法构成乘法交换群
  3. 任意F\mathbb F中元素满足乘法对加法的交换律(与实数集中的交换律形式上相同)

则称F\mathbb F对于规定的乘法和加法构成一个域。
一个域至少有两个元素:加法群零元(称为域的零元,00)和乘法单位元(称为域的单位元,ee)。域元素个数有限称为有限域或伽罗华域,否则称为无限域。有理数集合Q\mathbb Q和复数集合C\mathbb C按定义的加法和乘法均为域


定义3.2 设F\mathbb F是一个域,F0\mathbb F_0是F\mathbb F的非空子集,如果对于F\mathbb F上的加法和乘法,F0\mathbb F_0本身也是一个域,则称F0\mathbb F_0是F\mathbb F的子域,F\mathbb F是F0\mathbb F_0的扩域,记作F0⊊F\mathbb F_0\subsetneq\mathbb F


定理3.1 设F0\mathbb F_0,F0∗\mathbb F_0^*均是域F\mathbb F的非空子集,当且仅当下面两个条件成立时F0\mathbb F_0是F\mathbb F的子域:

  1. 对于任意a,b∈F0a, b\in \mathbb F_0,都有−a,a+b∈F0-a, a+b\in\mathbb F_0
  2. 对于任意非零元素a,b∈F0a, b\in\mathbb F_0,都有a−1,ab∈F0a^{-1}, ab\in\mathbb F_0

证明方法:需要证明F0\mathbb F_0是F\mathbb F的加法子群,F0∗\mathbb F_0^*是F\mathbb F的乘法子群。这个证明与证明子群很相似。
∵a,−a∈F0,∴0∈F0\because a,-a\in\mathbb F_0, \therefore0\in\mathbb F_0,有加法单位元,每个元素有逆元。
∵∀a,b∈F0,a+b∈F0\because \forall a, b\in \mathbb F_0, a+b\in \mathbb F_0,故运算封闭。
该运算由于在F\mathbb F中构成域,因此满足交换律与结合律。因此F0\mathbb F_0是F\mathbb F的加法子群。
∵∀a∈F0,a−1∈F0\because \forall a\in\mathbb F_0, a^{-1}\in\mathbb F_0,故每个元素有逆元,有乘法单位元ee
∵∀a,b∈F0,ab∈F0\because \forall a, b\in \mathbb F_0, ab\in \mathbb F_0,故运算封闭。
该运算由于在F\mathbb F中构成域,因此满足交换律与结合律。因此F0∗\mathbb F_0^*是F\mathbb F的乘法子群。
由于这两个运算在F\mathbb F中满足分配律,因此在F0\mathbb F_0中同样满足。□\Box

定义a−n=(an)−1a^{-n}=(a^n)^{-1},当a≠0a\ne 0时,定义a0=ea^0=e。


定理3.2 设F\mathbb F是一个域,那么:

  1. 对于任意a∈Fa\in\mathbb F,0a=a0=00a=a0=0;
  2. 对于任意a,b∈Fa,b\in\mathbb F,若ab=0ab=0,则a=0a=0或b=0b=0

证明方法:0a=(0+0)a0a=(0+0)a 证明1
若a≠0a\ne 0,则ab=a−1ab=b=0ab=a^{-1}ab=b=0,若b=0b=0同理。

在域中,二项式定理成立。


定理3.3 设F\mathbb F是一个域,a,b∈Fa,b\in\mathbb F,对于任意正整数nn,有

(a+b)n=∑i=0nCnian−ibi=∑i=0n(ni)an−ibi(a+b)^n=\sum_{i=0}^n C_n^i a^{n-i} b^i =\sum_{i=0}^n\begin{pmatrix}n\\i\end{pmatrix}a^{n-i} b^i

证明方法:分配律易证。


定义3.3 设F\mathbb F是一个域,如果存在正整数mm,使得对于任意a∈Fa\in\mathbb F均有ma=0ma=0,则在所有满足上述条件的m中,最小的正整数称为域F\mathbb F的特征。如果mm不存在则称F\mathbb F的特征为0。特征记作char(F)char(\mathbb F)。


定义3.4 设F,k\mathbb F, \mathbb k是两个域,如果存在F\mathbb F到k\mathbb k的一一映射δ\delta,使得对于任意a,b∈Fa,b\in\mathbb F,均有

δ(a+Fb)=δ(a)+kδ(b),δ(a×Fb)=δ(a)×kδ(b)\delta(a+_{\mathbb F}b)=\delta(a)+_{\mathbb k}\delta(b), \delta(a\times_{\mathbb F} b)=\delta(a)\times_{\mathbb k}\delta(b)

则称δ\delta为F\mathbb F到k\mathbb k的同构映射,称F,k\mathbb F, \mathbb k同构,记作F≅k\mathbb F\cong\mathbb k。如果F=k\mathbb F=\mathbb k则称δ\delta为自同构映射,若对于任意a∈Fa\in\mathbb F均有δ(a)=a\delta(a)=a,则称δ\delta为恒等自同构映射。一个域的最小子域称为该域的素域。


定理3.4 设F\mathbb F是一个域,则char(F)char(\mathbb F)为0或某个素数pp。特征为素数pp的域的素域与Zp\mathbb Z_p同构,特征为0的域的素域与Q\mathbb Q同构。

证明方法:此证明显然需要分为三个部分进行。
首先证明特征为0或素数。如果特征不是素数,则可写为s×ts\times t的形式,也即∀a∈F,(st)a=sta=0\forall a\in \mathbb F, (st)a=sta=0,故sa=0sa=0或ta=0ta=0。此时特征就应该是ss或tt而非stst。
当F\mathbb F是一个域且特征不为0时,其所有子域显然均需要包含00和ee,由于需要满足运算的封闭性,所以还需要包含2e,3e,...,(p−1)e2e, 3e, ...,(p-1)e。由这些元素构成的集合容易证明其是一个域(需要注意乘法逆元的证明,由于pp是素数,故对于任意的0<k<p0<k<p,均能找到其关于模pp的逆元,也就是对应的乘法逆元),因此这就是F\mathbb F上最小的域。同构映射δ(ke)=k\delta(ke)=k与Zp\mathbb Z_p构成同构。
当F\mathbb F的特征为0时,同样其所有子域均需要包含0,e,2e,3e,...0,e,2e,3e,...。由加法运算的封闭性,还需要包含−e,−2e,−3e,...-e,-2e,-3e,...。又由于需要满足乘法逆元也包含于域中,所以e−1,2e−1,...−e−1,−2e−1,...e^{-1}, 2e^{-1},...-e^{-1},-2e^{-1},...也在子域中。又需要满足乘法的封闭性,故任意子域均需包含F0={(ae)(be)−1∣a,b∈Z,b≠0}\mathbb F_0=\{(ae)(be)^{-1}|a,b\in\mathbb Z,b\ne 0\}。这个集合容易证明域的所有判定性质,因此其本身就是一个域,而且是最小的子域。同构映射δ((ae)(be)−1)=ab\delta((ae)(be)^{-1})=\frac{a}{b}与Q\mathbb Q构成同构。


定理3.5 设F\mathbb F是一个域,char(F)=pchar(\mathbb F)=p,则对于任意a,b∈F,n≥0a,b\in\mathbb F,n\ge 0,均有

(a±b)pn=apn±bpn(a\pm b)^{p^n}=a^{p^n}\pm b^{p^n}

证明方法:首先使用二项式定理证明(a+b)p=ap+bp(a+b)^p=a^p+b^p:
(a+b)p(a+b)^p中的第i项为p!i!(p−i)!aibp−i\frac{p!}{i!(p-i)!}a^ib^{p-i},即证明p!i!(p−i)!\frac{p!}{i!(p-i)!}是pp的倍数(i≠0,i≠p)(i\ne 0,i\ne p)。显然这是一个整数,且p!i!(p−i)!=p×(p−1)!i!(p−i)!\frac{p!}{i!(p-i)!}=p\times \frac{(p-1)!}{i!(p-i)!}。后面的数不可能是分数,因为如果是,那么分母必然是pp的倍数,但是分母显然与pp互素。因此后面的数是整数,也就是说这个数能够被pp整除。故得证第一项。
然后使用数学归纳法,用类似的方式证明后面的式子即可。


定义3.5 对于非负整数ii,aixi,ai∈Fa_ix^i,a_i\in\mathbb F表示域F\mathbb F上文字为x的单项式,称形式和f(x)=anxn+an−1xn−1+...+a1x1+a0x0,ai∈Ff(x)=a_nx^n+a_{n-1}x^{n-1}+...+a_1x^1+a_0x^0,a_i\in\mathbb F为域上文字为x的多项式,简称域F\mathbb F上的多项式。aixia_ix^i称为f(x)f(x)的ii次项,aia_i称为f(x)f(x)的ii次项系数。当an≠0a_n\ne 0时,称该多项式为n次多项式,ana_n称为f(x)f(x)的首项系数,多项式f(x)f(x)的次数称为deg⁡f(x)\deg f(x)。如果多项式各项系数均为0,称为零多项式,记为0,次数规定为−∞-\infty。
域F\mathbb F上文字为x的所有多项式的集合用符号F[x]\mathbb F[x]表示,规定x0=1∈F,a0x0=a0∈Fx^0=1\in\mathbb F,a_0x^0=a_0\in\mathbb F,则有F⊊F[x]\mathbb F\subsetneq\mathbb F[x]。注意按照上面的定义,F[x]\mathbb F[x]不是域。
关于多项式次数,下面结论成立:

deg⁡(f(x)+g(x))≤max{deg⁡f(x),deg⁡g(x)}deg⁡(f(x)g(x))=deg⁡f(x)+deg⁡g(x)\deg (f(x)+g(x))\le max\{\deg f(x), \deg g(x)\} \\\deg(f(x)g(x))=\deg f(x)+\deg g(x)

注意:这里的x可以表示任意的东西而不仅限于F\mathbb F,即anything,但是需要定义次方。


定理3.6 设f(x),g(x)f(x),g(x)为域F\mathbb F上的两个多项式,g(x)≠0g(x)\ne 0,则存在唯一一对多项式q(x),r(x)q(x),r(x)使得

f(x)=q(x)g(x)+r(x),deg⁡r(x)<deg⁡g(x)f(x)=q(x)g(x)+r(x),\deg r(x)<\deg g(x)

注意:不要看系数能否被整除,而应该注意到域的性质。由于域的特征只可能为素数或0,因此不要想当然地用诸如5x2+15x^2+1和2x2+42x^2+4来挑战这条定理,因为整数集并不是域!

证明方法:归纳。
存在性易证,总存在一个系数能够消去被除式的最高次项(利用乘法逆元)
唯一性:(q(x)−q′(x))g(x)=r′(x)−r(x),deg⁡(r′(x)−r(x))<deg⁡g(x)(q(x)-q'(x))g(x)=r'(x)-r(x),\deg (r'(x)-r(x))<\deg g(x),故q(x)=q′(x),r(x)=r′(x)q(x)=q'(x), r(x)=r'(x)

定理中的式子称为多项式带余除法算式,r(x)r(x)称为余式,记作(f(x))g(x)=r(x)(f(x))_{g(x)}=r(x)


定理3.7 多项式满足模加和模乘运算。证明略。


定义3.6
整除:r(x)=0r(x)=0
倍式与因式
真因式:次数小于倍式的因式


定义3.7
可约多项式:不含次数大于0的真因式的多项式
不可约多项式


定理3.8 域F\mathbb F上多项式f(x)f(x)可约,则当且仅当存在两个域F\mathbb F上多项式f1(x),f2(x)f_1(x),f_2(x),deg⁡f1(x)<deg⁡f(x),deg⁡f2(x)<deg⁡f(x)\deg f_1(x)<\deg f(x), \deg f_2(x)<\deg f(x),使得f(x)=f1(x)f2(x)f(x)=f_1(x)f_2(x)

证明略。


定理3.9 如果有g(x)∣f1(x),g(x)∣f2(x)g(x)|f_1(x), g(x)|f_2(x),则任意多项式s(x),t(x)s(x),t(x),有g(x)∣s(x)f1(x)+t(x)f2(x)g(x)|s(x)f_1(x)+t(x)f_2(x)

证明方法:
设f1(x)=g(x)q1(x),f2(x)=g(x)q2(x)f_1(x)=g(x)q_1(x),f_2(x)=g(x)q_2(x)
则s(x)f1(x)+t(x)f2(x)=(s(x)q1(x)+t(x)q2(x))g(x)s(x)f_1(x)+t(x)f_2(x)=(s(x)q_1(x)+t(x)q_2(x))g(x)一定是g(x)g(x)的倍式


定义3.8 公因式、最高公因式(首项系数为1,次数最高)、互素


定理3.10 欧几里得辗转相除法
ri(x)=qi+1(x)ri+1(x)+ri+2(x)r_i(x)=q_{i+1}(x)r_{i+1}(x)+r_{i+2}(x)

  1. 经过有限步之后,余式必然为0。
  2. 存在多项式s(x),t(x)∈F[x]s(x),t(x)\in \mathbb F[x],使得s(x)r0(x)+t(x)r1(x)=rn(x)s(x)r_0(x)+t(x)r_1(x)=r_n(x)。
  3. 设rn(x)r_n(x)首项系数为cc,则(r0(x),r1(x))=c−1rn(x)(r_0(x), r_1(x))=c^{-1}r_n(x),且最高公因式唯一存在。
  4. 对于任意c(x)∈F(x)c(x)\in \mathbb F(x),如果c(x)∣r0(x),c(x)∣r1(x)c(x)|r_0(x),c(x)|r_1(x),那么c(x)∣(r0(x),r1(x))c(x)|(r_0(x),r_1(x))

推论 多项式的裴蜀定理(描述、证明略)


定理3.11 设f(x),g(x)f(x),g(x)为域F\mathbb F上两个不全为0的多项式,则对于任意k(x)∈F[x],(f(x)+g(x)k(x),g(x))=(f(x),g(x))k(x)\in \mathbb F[x],(f(x)+g(x)k(x),g(x))=(f(x),g(x))
类比整数,证明略。


定理3.12 设f1(x),f2(x)f_1(x),f_2(x)为域F\mathbb F上的多项式,p(x)p(x)为域F\mathbb F上的不可约多项式,且p(x)∣f1(x)f2(x)p(x)|f_1(x)f_2(x),若(p(x),f1(x))=1(p(x),f_1(x))=1,则p(x)∣f2(x)p(x)|f_2(x)
类比整数,证明使用定理3.10推论证明,略。


定理3.13 设f1(x),f2(x)f_1(x),f_2(x)为域F\mathbb F上的多项式,p(x)p(x)为域F\mathbb F上的不可约多项式,且p(x)∣f1(x)f2(x)p(x)|f_1(x)f_2(x),则p(x)∣f1(x)p(x)|f_1(x)或p(x)∣f2(x)p(x)|f_2(x)
类比整数,证明略。


定理3.14 唯一因式分解定理:设f(x)f(x)是域F\mathbb F上次数大于0的多项式,则f(x)f(x)可以唯一地表示为域F\mathbb F上一些次数大于0的不可约多项式的乘积。特别地,若f(x)f(x)为首1多项式,且

f(x)=p1(x)p2(x)...ps(x)=q1(x)q2(x)...qt(x)f(x)=p_1(x)p_2(x)...p_s(x)=q_1(x)q_2(x)...q_t(x)

其中pi(x),qi(x)p_i(x),q_i(x)为域F\mathbb F上次数大于0的首1不可约多项式,则有s=ts=t,经过适当调整可以使得对任意ii均有pi(x)=qi(x)p_i(x)=q_i(x)

证明方法:归纳法。略


定义3.9 根:设f(x)f(x)为域F\mathbb F上的多项式,如果a∈Fa\in \mathbb F使得f(a)=0f(a)=0,则称aa是f(x)f(x)在域F\mathbb F上的一个根。


定理3.15 余元定理:设f(x)f(x)为域F\mathbb F上的多项式,对于任意a∈Fa\in \mathbb F,存在g(x)∈F[x]g(x)\in \mathbb F[x]使得f(x)=(x−a)g(x)+f(a)f(x)=(x-a)g(x)+f(a)

证明方法:设f(x)=(x−a)g(x)+cf(x)=(x-a)g(x)+c,代入aa即可。

本定理可以这样理解:将其看成域上离散的中值定理——f(x)−f(a)x−a=g(x)\frac{f(x)-f(a)}{x-a}=g(x),认为中值定理在域上也成立。但是实际上写的时候不能写分式,因为并没有定义除这个运算。

推论1 设f(x)f(x)为域F\mathbb F上的多项式,aa为f(x)f(x)在域F\mathbb F的根的充要条件为(x−a)∣f(x)(x-a)|f(x)
推论2 设f(x)f(x)为域F\mathbb F上的多项式,如果a1,a2,...ama_1,a_2,...a_m为f(x)f(x)在域F\mathbb F的根,则存在n−mn-m次多项式g(x)∈F[x]g(x)\in \mathbb F[x]使得f(x)=(x−a1)(x−a2)...(x−am)g(x)f(x)=(x-a_1)(x-a_2)...(x-a_m)g(x)
推论3 设f(x)f(x)为域F\mathbb F上的多项式,则f(x)f(x)在F\mathbb F的任意扩域中,不同根的个数不会超过nn(证明使用推论2证明)


定理3.16 设f(x)f(x)是域F\mathbb F上的n≥1n\ge 1次不可约多项式,集合F[x]f(x)={∑i=0n−1aixi∣ai∈F}\mathbb F[x]_{f(x)}=\{\sum_{i=0}^{n-1}a_ix^i|a_i\in\mathbb F\}按照模f(x)f(x)的模加和模乘形成一个域。特别地,若f(x)f(x)是有限域Fq\mathbb F_q上的nn次不可约多项式,则F[x]f(x)={∑i=0n−1aixi∣ai∈Fq}\mathbb F[x]_{f(x)}=\{\sum_{i=0}^{n-1}a_ix^i|a_i\in\mathbb F_q\}按照模f(x)f(x)的模加和模乘形成一个元素个数为qnq^n的有限域。

证明方法:证明该运算系统满足域的每条性质。每个项的系数都可以取q个值,因此构造的域的元素个数为qnq^n

以Fq[x]f(x)∗\mathbb F_q[x]^*_{f(x)}表示Fq[x]f(x)\mathbb F_q[x]_{f(x)}的乘法群,其元素个数为qn−1q^n-1。

注意:任何次数大于等于n的多项式在F[x]f(x)\mathbb F[x]_{f(x)}中均等于一个次数小于n的多项式,每一项的系数关于F\mathbb F取余,整个多项式关于f(x)f(x)取余


定理3.17 设f(x)f(x)是域F\mathbb F上的一个次数大于0的不可约多项式,那么f(x)f(x)必然在F\mathbb F的某个扩域中有根。

证明方法:使用定理3.16构造的扩域。

举例:定义在Z2\mathbb Z_2上的多项式f(x)=x2+1f(x)=x^2+1在其上不可约,因此构造扩域,集合元素为{0,1,x,x+1}\{0,1,x,x+1\},则显然有f(x)=x2+1=0f(x)=x^2+1=0,即f(x)=0f(x)=0,x是多项式的一个根。(这里的x指的是扩域中的x,不要混淆了)

推论 F\mathbb F上的任意一个次数为n≥1n\ge 1的多项式,必然在F\mathbb F的扩域中可以分解为nn个一次不可约多项式的乘积。


定理3.18 设E\mathbb E是有限域,Fq\mathbb F_q是其q元子域,则存在正整数n使得∣E∣=qn|\mathbb E|=q^n。

证明方法:逐步扩大法。Fq=E1\mathbb F_q=\mathbb E_1如果存在β∈E∖E1\beta\in \mathbb E \setminus \mathbb E_1,那么定义E2={a0+a1β∣a0,a1∈Fq}\mathbb E_2=\{a_0+a_1\beta|a_0,a_1\in\mathbb F_q\},其元素个数为q2q^2,如果还存在不在E2\mathbb E_2的元素,则继续扩展,直到En=E\mathbb E_n=\mathbb E为止。

注意:这其中的Ei\mathbb E_i不一定是一个域!在严格证明中将其描述为集合。

推论 有限域的元素个数必为pnp^n,其中pp为素数。任何有限域都是其素域的扩域。


定理3.19 设Fq\mathbb F_q为q元有限域,F\mathbb F为Fq\mathbb F_q的扩域,α∈F\alpha\in\mathbb F,那么α\alpha是多项式xq−xx^q-x的根当且仅当α∈Fq\alpha\in\mathbb F_q

证明方法:对于任意α∈Fq\alpha\in\mathbb F_q,αq−α=(e+e+e+...+e)q−α=eq+eq+...+eq−α=α−α=0\alpha^q-\alpha=(e+e+e+...+e)^q-\alpha=e^q+e^q+...+e^q-\alpha=\alpha-\alpha=0,故xq−xx^q-x的根是Fq\mathbb F_q的所有元素,而其也只有这么多根(次数限制)。