数论基础定理与简单应用

数论基础定理与简单应用


基本符号

  • \(\equiv\) ,可以表示恒等同余
  • \(a \mid b\) ,表示 \(b\) 是 \(a\) 的倍数。注意不是 \(a\) 是 \(b\) 的倍数
  • \(a \nmid b\) ,表示 \(b\) 不是 \(a\) 的倍数,与整除相反
  • \(\in\) ,属于,用于表示一个元素在一个集合当中

裴蜀定理

内容

  • 对于任意整数 \(a, b\) ,设 \(d = gcd(a, b)\) ,存在 一组整数 \((x, y)\) 满足 \(ax + by = d\) , 且对于任意 一组整数 \((x, y)\) 都有 \(ax + by \mid d\)

费马小定理

内容

  • 对于任意素数(质数) \(p\) , 都有任意整数 \(a\) 满足 \(a ^ p \equiv p (mod \quad p)\) ;当满足 \(p \nmid a\) 时也可以写成 \(a^{p - 1} \equiv 1 (mod \quad p)\)

    对于第二个公式的前置条件 \(p \nmid a\) 你也许并未在代码或题解中见过或强调过,因为对于 OI 里的大部分题目 \(p\) 总大于 \(a\) ,所以基本不会出现 \(p \nmid a\) 的情况,但这并不代表改条件是可以忽视的

证明

前置知识:二项式定理,组合数

显然,当 \(a = 0\) 时 \(a^p \equiv p\) 成立(后文省略了\((mod \quad p)\))

使用数学归纳法,要证明 \(a \in N\) 时成立,仅需证明 \((a + 1) ^ p \equiv a + 1\) 成立即可

  • 二项式定理展开

\(a + 1)\^{p} = a \^ p + C\^1_{p}a\^{p - 1} + C\^2_{p}a\^{p - 2} + ... + C\^{p - 1}_{p}a + 1 \\

  • 进一步展开组合数

\(a + 1) \^ p = a \^ p + \\frac{p!}{1!(p - 1)!}a\^{p - 1} + \\frac{p!}{2!(p - 2)!}a\^{p - 2} + ... + \\frac{p!}{(p - 1)!(1)!}a\^{p - 1} + 1 \\

  • 由于组合数的性质,分子一定能整除分母,又因为 \(p\) 是素数且不存在有组合数的分母中含 \(p\) ,所以组合数的结果因数中一定含 \(p\) ,

    而在模 \(p\) 意义下,这些组合数就会变成 0,所以可以进一步化简

\(a + 1) \^ p = a \^ p + 1 = a + 1 \\

  • 故,得证

因此对于任意的 \(a \in N\) 都满足 \(a ^ p \equiv a\)


扩展欧几里得定理

  • 扩展欧几里得定理(exgcd)本质是对裴蜀定理的求解

    即给定整数 \(a, b\) ,求一组整数 \(x, y\) 满足 \(ax + by = gcd(a, b)\)

前置知识:欧几里得定理(辗转相除)

实现过程

  • 根据欧几里得定理 \(gcd(a,b)=gcd(b,a \; mod \; b)\) 可得

\bx_1+(a\\; mod\\; b)y_1=gcd(a,b) \\

  • 又因为 a ; mod ; b = a - \\left \\lfloor \\frac{a}{b} \\right \\rfloor \\times b , 所以

\bx_1+(a - \\left \\lfloor \\frac{a}{b} \\right \\rfloor \\times b)y_1=gcd(a,b) \\

  • 展开整理

\ay_1 + b(x_ 1 - \\left \\lfloor \\frac{a}{b} \\right \\rfloor y_1) = gcd(a, b) \\

  • 所以得到

\x = y_1, y = x_ 1 - \\left \\lfloor \\frac{a}{b} \\right \\rfloor y_1 \\

然后不断递归即可