大二第一学期,学院开设了《信息安全数学基础》这门课。但由于当时对信息安全的理解还不够深入,再加上已经过去了两年之久,很多知识都理解得不好,且印象模糊。借着大四这个相对空闲的时间,对学过的知识进行复习和总结。

2024.03.01: 当时太天真了,以为大四很空闲,现在看来并不是这样的...这篇博客就占个坑留到以后更新吧...T_T

初等数论

整数的因子分解

整除

  • \(a,\ b\in \mathbb{Z},\ b\neq 0,\quad 若\ \exists\ q,\ 使得\ a=qb,\ 则\ b\mid a\ (b整除a),\ 否则\ b\nmid a\)
  • \(b\)称为\(a\)的因子,\(a\)称为\(b\)的倍数
  • 性质
    • 传递性:\(c\mid b,\ b\mid a,\ then\ c\mid a\)
    • \(b\mid a,\ then\ bc\mid ac\)
    • \(c\mid a,\ c\mid b,\ then\ c\mid ma+nb\)

Euclid(欧几里得)除法

  • \(a,\ b\in \mathbb{Z},\ b>0,\ 则存在唯一的整数对q,r\ 使得\ a=qb+r,\ 0\leq r<b\)
  • \(q\)称为不完全商,\(r\)称为余数(最小非负余数)
  • 若调整\(q\)(一般是加1)使得\(|r|\leq \frac{b}{2}\),则\(r\)为绝对值最小余数(在Euclid算法中起到加速的作用)
  • 可用于求整数的\(a\)进制表示

公因子与最大公因子

  • \(a,a_2,…,a_n\)\(n(n\geq2)\)个整数,若整数\(d\)是它们中每一个数的因数,则\(d\)\(a,a_2,…,a_n\)的一个公因子
  • \(a,a_2,…,a_n\)不全为零,则\(a,a_2,…,a_n\)的所有公因子中最大的一个称为最大公因子,记为\((a,a_2,…,a_n)\)
  • 特别地,当\((a,a_2,…,a_n)=1\),称\(a,a_2,…,a_n\)互素/互质
  • 定义\((0,a)=a\),因为任何非零整数都是\(0\)的因数

辗转相除法/Euclid算法 求最大公因子

  • 预备定理:\(a,b,r是不全为0的整数,\ 若a=qb+r,\ q\in\mathbb{Z},\ 则(a,b)=(b,r)\)

  • 将上述辗转相除的过程反过来写(即把余数放左边,用\(a,b\)来表示余数),可以得到最大公因子的线性表示,即贝祖等式

  • 贝祖等式:对任意两个正整数\(a,b\),存在整数\(x,y使得(a,b)=xa+yb\)

  • \((a,b)=1\),可以求出唯一解\(x\),即\(xa\equiv 1(mod\ b),\ x\equiv a^{-1}(mod\ b)\)

  • 扩展/广义Euclid算法:求出最大公因子的同时求出系数\(x,y\)(主要用于求乘法逆元)

  • 伪代码

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Input: 非负整数a, b且a>=b (先将待计算的整数取绝对值)
    Output: r=(a,b) 以及满足 sa+tb=(a,b)的s,t
    Extended Euclid(a,b){
    (r,s,t) <- (a,1,0);
    (r',s',t') <- (b,0,1);
    While r'!=0 do{
    q <- floor(r/r');
    (tmp1,tmp2,tmp3) <- (r-qr',s-qs',t-qt');
    (r,s,t) <- (r',s',t');
    (r',s',t') <- (tmp1,tmp2,tmp3);
    }
    Return r,s,t;
    }

  • 最大公因子等价定义:\(a,b\)是不全为零的整数,则\(d=(a,b)\)是集合\(\{xa+yb|x,y\in \mathbb{Z}\}\)中的最小正整数

  • 应用-方程有解的判定:\(a,b\)是不全为零的整数,则方程\(ax+by=c有整数解\Leftrightarrow (a,b)\mid c\) >个人理解:对于整数\(a,b\),他们的最大公因子就是使用这两个数能得到的最小度量 > >换句话说,即长度为\(a,b\)的两把尺子可以度量的最小长度

素数

  • 埃拉托色尼素数筛选法-快速计算\(1\)\(N\)之间的所有素数:遍历\(1\)\(\sqrt{N}\),将其中所有素数的倍数去掉,剩下的便都是素数了
  • 素性定理:\(p\)为素数,\(a,b\)为整数,若\(p\mid ab\),则\(p\mid a\)\(p\mid b\) ^291cce
  • 算数基本定理:任意整数\(n\ (n>1)\)都可以分解为有限个素数的乘积\(n=p_1p_2...p_s\),该分解除了素数因子的排列之外,是唯一的
  • 唯一因子分解定理:任意整数\(n\ (n>1)\)可以唯一地表示成\(n=p_1^{\alpha_1}p_2^{\alpha_2}...p_s^{\alpha_s},\ \alpha_i >0\),其中\(p_1p_2...p_s\)为素数\(p_i<p_j\ (i<j)\)。上式叫做\(n\)的标准分解式。

整数的一些性质

  • \(a=p_1^{\alpha_1}p_2^{\alpha_2}...p_s^{\alpha_s},\ b=p_1^{\beta_1}p_2^{\beta_2}...p_s^{\beta_s}\),那么\((a,b)=p_1^{\gamma_1}p_2^{\gamma_2}...p_s^{\gamma_s},\ \gamma_i=min(\alpha_i,\beta_i)\),最小公倍数\([a,b]=p_1^{\delta_1}p_2^{\delta_2}...p_s^{\delta_s},\ \delta_i=max(\alpha_i,\beta_i)\)
  • \(a_1,a_2,...a_n\)\(n\)个非零整数,令\([a_1,a_2]=m_1,\ [m_1,a_3]=m_2,...,[m_{n-2},a_n]=m_{n-1}\),则\([a_1,a_2,...a_n]=m_{n-1}\)
  • 除了2以外,所有素数都是奇素数

多项式的整除性

  • \(\mathbb{Q}=\{\frac{a}{b}|a,b\in \mathbb{Z},b\neq0\}\)表示全体有理数的集合。\(\mathbb{Q}\)上有加减乘除四则运算
  • \(\mathbb{Q}[x]=\{a_0+a_1x+...+a_nx^n|a_i\in\mathbb{Q},0\leq i\leq n\}\)表示所有系数为有理数的多项式集合。\(\mathbb{Q}[x]\)有加减乘,但没有除法
  • 可以发现\(\mathbb{Q}[x]\)与整数集合\(\mathbb{Z}\)有很多类似的性质:都有带余除法、最大公因子、唯一因子分解定理等

(多项式\(f(x)\)的次数表示为\(deg\ f(x)\),以下多项式均在\(\mathbb{Q}[x]\)内讨论)

  • \(g(x)\neq 0\),则有\(q(x),r(x)\)使得\(f(x)=q(x)g(x)+r(x),\ r(x)=0或r(x)\neq 0,deg\ r(x) < deg\ g(x)\)
  • \(r(x)=0\)时,称\(g(x)整除f(x)\),记\(g(x)|f(x)\)\(g(x)\)称为\(f(x)\)的因子
  • \(g(x)\)\(f(x)\)的因子,且\(deg\ g(x) < deg\ f(x)\)时,\(g(x)\)称为\(f(x)\)的真因子
  • \(f(x)\)没有真因子时,称为不可约多项式

个人理解:把函数的符号\(f,g\)当成整数的符号来看,多项式的整除与整数的整除几乎相同,只是多了\(x\)而已

因此其余的不再赘述:

多项式整除性质——参考整数整除性质

多项式最大公因子——参考整数最大公因子

多项式最大公因子的表示——参考整数最大公因子的表示(贝祖等式)

多项式最大公因子的求法——参考整数的辗转相除法

不可约多项式的有关定理——参考整数的素性定理

多项式的唯一分解定理——参考整数的唯一分解定理

同余式

二次剩余

抽象代数

有限域

参考