Loading

原根小记

定义

  • :对于 \(a\perp m\),定义阶 \(\delta_m(a)\) 表示最小的 \(i\) 满足 \(a^i \equiv 1 \pmod m\)

  • 原根:对于 \(a\perp m\)\(a\)\(n\) 的原根当且仅当 \(\delta_m(a) = \varphi(m)\)

性质:

  1. \(a,a^2,a^3,...,a^{\delta_m(a)}\) 互不相同。

  2. \(a^i\equiv 1 \pmod m \Leftrightarrow \delta_m(a)|i\)

  3. \(\delta_n(a) | \varphi(m)\)

  4. \(\forall a,b \in \mathbb N^+\),若 \(\delta_m(a)\perp \delta_m(b)\),那么 \(\delta_m(ab) = \delta_m(a)\delta_m(b)\)

  5. \(\delta_m(a^k) = \dfrac {\delta_m(a)}{\gcd(\delta_m(a), k)}\)

原根判定

判定 \(a\) 是否为 \(m\) 的原根,即判定 \(\delta_m(a) = \varphi(m)\)

\(a\not\perp m\) 时显然。

由费马小定理,\(a^{\varphi(m)} \equiv 1 \pmod m\)。由性质 1/2,若 \(a\) 不为 \(m\) 的原根,那么 \(\exists i | \varphi(m)\) 满足 \(a^i \equiv 1 \pmod m\)

枚举 \(\varphi(m)\) 的约数即可判定。当然也有更好的方法,设 \(\varphi(m) = p_1^{c_1}p_2^{c_2}...p_k^{c_k}\),令 \(b_i = \dfrac {\varphi(m)}{p_i}\),如果 \(a\) 不是原根,那么有 \(\exists i\in [1, k],\ \delta_m(a)|b_i\)

由性质 1,可得 \(a^{b_i} \equiv 1 \pmod m\)。因此,我们可以对 \(\varphi(m)\) 质因数分解,枚举每个 \(b_i\) 并判定。

存在性

\(p\) 为奇质数,当 \(m = 1,2,4,p^k,2p^k\) 时有原根。

环形理解

\(g\)\(m\) 的原根。取出 \(1\sim m\) 中所有与 \(m\) 互质的点,对于点 \(x\),连边 \(x\to xg \bmod m\)。从任意一个点开始走,一共走 \(\varphi(m)\) 步后回到原点。

此时这 \(\varphi(m)\) 个点构成了一个环。

离散对数与剩余

  • 定义离散对数 \(\text{ind}_a(b) = \min \{i | a^i \equiv b \pmod m\}\)

在环上,对于 \(a\perp m\)\(\text{ind}_g(a)\) 实际上是从 \(1\) 开始最少走多少步到达点 \(a\)

  • 对于 \(a\),若存在 \(x\) 满足 \(x^k\equiv a \pmod m\),则称 \(x\)\(a\)\(k\) 次剩余

求剩余:待补

posted @ 2024-08-07 10:51  Lgx_Q  阅读(11)  评论(0编辑  收藏  举报