数论1

数论笔记

\(\varphi(n)\)

普通求法:

首先将n唯一分解为$n=x_1{p_1}*x_2……*x_n^{p_n} $

\(\varphi(n)=n*(1-\frac1{x_1})*(1-\frac1{x_2})*……*(1-\frac1{x_n})\)

证明:

首先我们考虑在所有数中有\(\frac{1}{x}\)的概率会取到一个数是x的倍数,那么有\((1-\frac{1}{x})\)的概率会取到一个数不是x的倍数,1-n有n个数,我们要找到1-n所有与n互质的数,也就是去一个不是 \(n\) 的任意一个因数 \((x_1,x_2,x_3……x_n)\) 的倍数,就得到以上式子

线性求 \(\varphi(1)\)\(\varphi(n)\) 的所有

首先我们先明白两个定理:

\[1.\begin{cases} \varphi(nm)=\varphi(n)*\varphi(m)~~~~~gcd(n,m)=1\\ \varphi(nm)=\varphi(n)*m~~~~~~~~~~~gcd(n,m)=m \end{cases} \]

\(gcd(n,m)=1\) 条件下

定理1证明:
根据上述式子可以推导:
$n=x_1{p_1}*x_2……x_n^{p_n} \( \)m=y_1{q_1}*y_2……y_n^{q_n} \( \)nm=x_1{p_1}*x_2……x_n{p_n}*y_1*y_2{q_2}……*y_n $

\(\varphi(nm)=n*m*(1-\frac1{x_1})……*(1-\frac1{x_n})*(1-\frac1{y_1})……*(1-\frac1{y_n})=\varphi(n)*\varphi(m)~~~~~~~~~~~~gcd(n,m)=m\)

2.\(\varphi(n)=n-1~~~~~~~~~~~~~n\in prim\)

考虑感性理解,\(1-n\) 里面有 \(\varphi(n)\) 个与n互质,那么扩大 \(m\) 倍,相当于有 \(m\)\(1-n\) 就直接乘(因为我们保证了 \(gcd(n,m)=m\) 也就是n是m的倍数,所以不存在乘上 \(m\) 后多出了不属于 \(n\) 的因子)

因此,我们可以来用质数筛的方法求 \(\varphi()\)

void op(int n){
    for(int i=2;i<=n;i++){
        if(!vis[i]){
            prim[++tot]=i;
            phi[i]=i-1;//引用定理2
        }
        for(int j=1;j<=tot&&i*prim[j]<=n;j++){
            vis[prim[j]*i]=1;
            if(i%prim[j]==0){
                phi[i*prim[j]]=phi[i]*prim[j];
                break;
            }else{
                phi[i*prim[j]]=phi[i]*(prim[j]-1);//因为prim[j]是质数,所以i与prim[j]一定互质
            }
        }
    }
}

EXCRT

给你一些方程:

\[x\equiv a_1\pmod {p_1}\\ x\equiv a_2\pmod {p_2}\\ ......\\ x\equiv a_n\pmod {p_n} \]

普通CRT比较有限制(因为要保证 \(p\) 为质数)

那么接下来我们来学习

扩展中国剩余定理

首先我们考虑我们已经得到了 \(1\sim i-1\) 个方程的特殊解 \(ans_{i-1}\)

\(M = lcm(a_1,a_2,...,a_{i-1})\)

那么通解就是 \(ans_{i-1} + k\times M~~~~~~k\in Z\)

\(\forall j\in[1,i-1]~~~ k\times M\equiv0\pmod{a_j}\)

\(ans_{i-1}+k\times M\equiv ans_{i-1}\pmod {a_j}\)

我们要找到一个 \(k\) 满足

\[ans_{i-1} + k\times M \equiv a_i \pmod {p_i} \]

先转化一下

\[k\times M + y \times p_i =a_i-ans_{i-1} \]

exgcd 算一算 \(k\) 就好啦

那么可以得到

\[ans_i = ans_{i- 1} + k \times M \]

就可以递推啦

拓展欧拉定理

欧拉定理:

\(a^{\varphi(m)} \equiv1\pmod m~~~~~~~~~~~~~~~~~~~~(gcd(a,m)=1)\)

拓展欧拉定理:

\[a^b\equiv a^{b~mod~\varphi(m)+\varphi(m)}\pmod m~~~~~~~~~~~~~~(b>\varphi(m)) \]

这里没有a,m互质的要求

证明

首先我们唯一分解\(m=p_1^{q_1}p_2^{q_2}......p_n^{q_n}\)

现在我们只需要证明对于每个\(p_i^{q_i}都有\)

\(a^b\equiv a^{b~mod~\varphi(m)+\varphi(m)}\pmod {p_1^{q_1}}\)

因为

\[\left. \begin{matrix} x\equiv y\pmod {m_1}\\ x\equiv y\pmod {m_2}\\ \end{matrix} \right\} \implies x\equiv y\pmod{m1m2} \]

(x-y既是m1倍数也是m2倍数)

如果\(gcd(a,{p_i^{q_i}})=1\)

\[a^b\equiv a^{\lfloor \frac b {\varphi(m)}\rfloor*\varphi(m)+b~mod~\varphi(m)}\equiv a^{b~mod~\varphi(m)}\pmod {p_i^{q_i}} \]

因为

\[\varphi(x)=\varphi(p_1)*p_1^{q_1-1}*\varphi(p_2)*p_2^{q_2-1}*......\varphi(p_n)*p_n^{q_n-1}\\ \varphi(p_i^{q_i})=\varphi(p_i)*p_i^{q_i-1}\\ a^{\varphi(p_i^{q_i})}\equiv 1 \pmod {p_i^{q_i}} \]

总的来说:

\[\lfloor \frac b {\varphi(m)}\rfloor*\varphi(m)=k*\varphi({p_i^{q_i}}) \]

证毕

如果\(gcd(a,p_i^{q_i})\ne 1\)

因为\(p_i\)为质数,所以一定有\(p_i|a\)

因为\(b\ge\varphi(m)\ge\varphi(p_i^{q_i})\ge{q_i}\)

\[\left. \begin{matrix} a^b\equiv0\pmod {p_i^{q_i}}\\ a^{\varphi(m)}\equiv0 \pmod{p_i^{q_i}} \end{matrix} \right\} \implies a^b\equiv a^{{\varphi(m)}}\pmod {{p_i}^{q_i}} \]

综上所述

\[\begin{cases} a^b\equiv a^{b~mod~\varphi(m)}\pmod {p_i^{q_i}}~~~~~~~~gcd(a,p_i)=1\\ a^b\equiv a^{{\varphi(m)}}\pmod {{p_i}^{q_i}}~~~~~~~~~~~~~~~gcd(a,p_i)\ne1 \end{cases} \]

如何合并?

\[\implies\begin{cases} a^b\equiv a^{\varphi(m)+b~mod~\varphi(m)}\pmod {p_i^{q_i}}~~~~~~~~~~~~gcd(a,p_i)=1\\ a^b\equiv a^{\varphi(m)+b~mod~\varphi(m)}\pmod {{p_i}^{q_i}}~~~~~~~~~~~gcd(a,p_i)\ne1\ \end{cases} \]

第一个式子,乘上一个\(\varphi(m)\)欧拉定理结果不变

第二个式子\(a^{\varphi(m)}\equiv0\pmod {p_i^{q_i}}\)随便乘上一些东西没什么关系

综上:

\[a^b\equiv a^{\varphi(m)+b~mod~\varphi(m)}\pmod {m} \]

posted @ 2023-02-18 14:37  He_Zi  阅读(42)  评论(0编辑  收藏  举报