【应用代数】欧式环和有限域

初次接触《应用代数》课程,作为数学学渣还是要整理一遍概念和思路。

虽说是课堂笔记,但部分理论框架还有些价值,发到博客里给有需要的同学看看吧。

经过4节大课的跟进,目前个人理解:

将传统意义上的多项式、整数/有理数/实数/复数集合上的加法、乘法、公约数、素数之类的基本概念加以抽象和归纳,形成一套形式上较为抽象的代数系统。

既然称为「应用代数」,那么必然存在其应用价值,目前教授只提及了构造有限域在密码学方面比较有用这一个点。抱着”不谈问题直接抛定义扔性质结论都是中国式教科书“的态度,在正式整理笔记前还是来回顾一个应用。

离散对数与密码学:

设想一个应用,比如需要构建字母表a-z元素间的对应关系,从而进行加密。比较传统的做法可以是将每个元素映射为右移5个单位,即{a-f,b-g,…x-c,y-d,z-e}。显然这种加密方式的安全性较差。

而如果利用有限域的知识,我们可以构造出一个大小为27(3^3个)的多项式有限域,将a-z与域中的多项式对应,再利用模一个不可约多项式来构建这些多项式之间的对应关系(找出每一个的逆元),形成一套离散对数系统,达到稳定的加密效果。

为了理清上面这些看上去比较杂乱的概念和它们之间的关系,就有了这5节课的内容。

第一节课主要为一些抽象代数系统,包括群、域、整环和欧式环相关的概念;

第二节课和第三节课主要在探讨欧式环这一代数系统,欧式环上有很多优良性质,并抽象出最大公约数、互素等实用概念;

第四节课就进入了核心:有限域的构造,并引出多项式域。由于域的定义比欧式环更严格,因此从欧式环构造域时需要附加额外条件。


群、域、整环、欧式环

群 Group

集合 $(G, \circ)$,运算满足封闭性、结合律,存在单位元、逆元。

  • 交换群,也称为阿贝尔群(Abelian group):在群的基础上同时满足交换律。

域 Field

集合 $(F, +, · )$ ,满足在「+」运算和「·」运算下均为交换群,「·」对「+」有分配律。

整环 Integral Domain

集合 $(D, +, ·)$ ,在「+」运算下满足交换群,在「·」运算下具有单位元并满足结合律和消去律,「·」对「+」有分配律。

  • 结合律的存在就已经包含了封闭性。
  • 整环相比域,缺少了「·」下的逆元。

欧式环 Euclidean Domain

在整环定义的基础上,同时满足:

  • 若$b\neq 0$,$g(a)\leqslant g(ab)$;
  • 对所有$a,b\neq 0$,$\exists q,r$使得$a=qb+r$,其中$q=0$或$g(r)<g(b)$.

其中$g(x)$称为Size function,为非负整数。

例:证明高斯整数集合${a+b\sqrt{-1},a,b\in Z}, g(a+bi)=a^2+b^2$是欧式环。

解答:Prove that the Gaussian Integer’s ring is a Euclidean domain

最大公约数和欧几里得法

  • 最大公约数(Greatest Common Divisor, GCD)
  • 在整环中,$a \mid b$(读作a整除b)意味着 $\exists c$ 使得$b = c·a$,称a为b的因子(divisor)。

整环上的GCD

公约数:对集合$B = { b_1,···,b_n}$,若$a\mid b_i$ 对$\forall i=1,···,n$成立,则称a为集合B的公约数。

最大公约数:设d是集合B的公约数,若满足其他所有公约数都整除d,则d是集合B上的最大公约数,记作:$d = gcd{b_1,···,b_n}$.

  • 在抽象代数中,“最大”不是直接比较大小,而是沿用整除的概念。

  • 并不是所有整环上的集合都存在GCD。

欧式环上的GCD

在欧式环D下,若$d = gcd{b_1,···,b_n}$且${d_1,···,d_k}$为${b_1,···,b_n}$的公约数,则:

$g(d)=max{ g(d_1),g(d_2),···,g(d_k)}$

  • Size function可以比较大小,由欧式环定义易得上述结论。

Theorem 0.1:欧式环D下任意有限集合$B={b_1,···,b_n}$,一定存在gcd(设为d),且能够表示成集合B中所有元素的线性组合:$d = \sum_{k=1}^{n} \lambda_kb_k$.

证明:(构造法)

构造 $S={\sum_{k=1}^{n}\mu_kb_k\mid \mu_k \in D}$,

取 $d:g(d) \triangleq min{g(x)\mid x \in S}.$ (因为g有下界,所以g(d)一定存在)

声明:d就是$gcd(b_1,···,b_n)$

即证:(1) $\forall b_i, d \mid b_i$;(2)$\forall e$(e为$b_1,···,b_n$的公因子,有$e\mid d$ .

先证(2):对 $\forall e$,有$e \mid b_i, i=1,2,···,n$,则$b_i = q_i e$ .

$\because d\in S$,$\therefore d = \sum_{k=1}^{n} \mu_k b_k=e \sum_{k=1}^{n} \mu_k q_k$,则$e\mid d$。

再证(1):$d = \sum_{k=1}^{n} \mu_k b_k$ ,由欧式环性质有

$\forall b_i ,\exists q,r \in D, s.t. b_i=qd+r$,其中$r = 0$或$g(r)<g(d)$.(即只需证$r=0$)

$\because r=b_i-qd \in S$ $ \therefore g(d)\leqslant g(r)$,与$g(r) < g(d)$矛盾。

$\therefore r = 0$,即$d \mid b_i \quad \square$

Lemma 0.1(辗转相除法):$\forall s,t \in D$ (D为欧式环),有 $gcd(s,t) = gcd(s,t-s)$.

Theorem 0.2 (欧几里得法):$\forall s,t,r \in D$ (D为欧式环),有 $gcd(s,t) = gcd(s,t-rs)$.

  • 以上引理和定理由Theorem 0.1易证。

Theorem 0.3 设D是一个欧式环,对$\forall t\in D, \forall m,n\in Z_+$,有$gcd(t^n-1,t^m-1)=t^{gcd(m,n)-1}$。

证明:逐层递推

欧几里得扩展算法(Euclid’s Extended Algorithm):用于寻找线性组合的系数。

欧式环上的唯一分解定理

设D为一个欧式环。

unit

将乘法单位元的因子称为unit。

例如,整数域上的unit为$\pm1$;复数域上的unit为$\pm1,\pm i$;多项式有限域上的unit为最高幂次为零的多项式(因为这些常数均有逆元,在后面的小节中介绍)。

相伴 Associates

若$\exists u,s.t. a=ub$,其中u为unit,则称a,b相伴。若$b\mid a$而a与b不相伴,则称b为a的真因子

平凡因式分解 Trivial Factorization

对于D中的元素b,b的因式分解可写作$b=a_1a_2···a_r$。若每个a要么为unit要么为b的相伴元,则称$b=a_1a_2···a_r$为平凡因式分解。

素元和互素 Prime and Relatively Prime

若对D中元素p的所有可能的因式分解均为平凡因式分解,则称p为素元

对D中两元素a,b,若$gcd(a,b)=1$(或任意其他unit),则称a与b互素

Lemma 0.2 若a,b互素,则$\exists s,t \in D$,使得$as+bt=1$. (套用定理0.1易得)

Lemma 0.3 若p为D中的一个素元,则对于$\forall a\in D$,若p不整除a,则a与p互素。

证明:由欧式环性质知$a=qp+r (r \neq 0)$,由定理0.2(欧几里得法)知

$gcd(p,a)=gcd(p,a-qp)=gcd(p,r)=1$,即a与p互素。

Lemma 0.4 若p是素元,且$p\mid ab$,则$p\mid a$或$p\mid b$(或两者同时)成立。

证明:若$p\mid a$,命题得证。

否则,由引理0.2,得$as+pt=1$

两边同乘b,得$b=asb+ptb$

$\because p\mid ab\quad \therefore \exists c,s.t. cp=ab$

即$b=scp+tbp=(sc+tb)p, p\mid b .$

命题得证。

Lemma 0.5 在欧式环内,若a是b的真因子,则$g(a)<g(b)$。

证明:由已知:$a\mid b, b=ac$ (c不为unit)

则$a=qb+r, g(r)<g(b)$

$\therefore r = a-qb=a(1-qc)$

$\because c\neq unit\quad \therefore qc\neq1$

$\therefore g(a)\leqslant g(r)<g(b)\quad \square$

唯一分解定理

Theorem 0.4 假设$b\in D$不是unit,则:

(i)b可被写成素数的乘积:$b = p_1p_2···p_r$,其中$p_i$为素数;

(ii)如果b能够被写为另一种表达形式,比如$b=q_1q_2···q_s$,其中$q_i$为素数,则必有$r=s$,且经过适当排序后,$p_i$和$q_i$为相伴元。($i=1,2,···,r$)

主要证明思路:数学归纳法+引理0.4+引理0.5

由欧式环构造域

同余和等价类

对欧式环D中的元素m,当且仅当$m\mid (a-b)$时,称a与b关于m同余(congruence),记作$a\equiv b\quad mod\ m$。

同余关系将D划分为若干个不相交的子集,这些子集即为等价类(equivalence classes),记作$D\ mod\ m$。

包含a的等价类通常记作$\bar{a}$,一般用最小非负元素表示等价类($Z_4 = {\bar{0},\bar{1},\bar{2},\bar{3}}$)

D mod m 环

定义两个二元运算如下:

  • 加法:$\bar{a}+\bar{b}=\overline{a+b}$

  • 乘法:$\bar{a}·\bar{b}=\overline{a·b}$

则D mod m与上述两个二元运算一并构成环,其中

  • 加法单位元:$\bar{0}={x \in D, x\equiv0\ mod\ m}$
  • 乘法单位元:$\bar{1}={x \in D, x\equiv1\ mod\ m}$

注:这个环相对域而言只缺少了乘法下的逆元,因此后面满足特殊条件时就可以构造域了。

D mod m 域

Theorem 0.5 若p为素元,则D mod m连同上述两种运算共同构成域。

证明:只需找出任意元素$a\in D$的逆元即可。

$\because gcd(a,m)=1$

$\therefore \exists s,t, s.t. as+mt=1\ (mod\ m) $

所以s即为a的逆元,证毕。

多项式域

  • 复数域的构造

设$D=R[x]$为拥有实系数的多项式集合,$p(x)=x^2+1$为不可约多项式(即在实数域下无法进行因式分解),则$p(x)$是$R[x]$中的素元。且$R[x]\ mod\ p(x)={a+bx,a,b\in R}$形成域。该域的加法和乘法分别定义为:

Tip:$mod\ x^2+1$可以理解为$x^2+1=0$,即$x^2=-1$。

Note:上述加法和乘法运算规则等同于$x=i$的情形。因此这个域实际上就是复数域C。

  • $F_p[x]$下的多项式除法规则

Tip:与常规多项式除法类似,只是注意系数相乘后需要模除p,负值可以加p后得到正值(回顾等价类的概念)

  • 有限域的构造规则

有了上面的知识,我们就可以开始构造有限域了。一个有限域可以用如下方式构造:

有限域可以是一个包含若干多项式的集合。这些多项式的系数为mod p,多项式的表达形式通过mod一个不可约多项式后得到。例如在上面复数域的构造中,$mod(x^2+1)$就得到了$ax+b$的形式。

特性:给定一个素数域$F_p$和最高幂次为m的不可约多项式,则能够构造出含有$p^m$个元素的有限域。这就能够方便地从小素数构造出一个大有限域。

密码学中的离散对数应用