前置知识:费马小定理欧拉定理拉格朗日定理

阶和原根,是理解模 既约剩余系 乘法结构的重要工具.基于此,可以定义 离散对数 等概念.更为一般的讨论可以参见抽象代数部分 群论环论 等页面相关章节.

本节中,总是假设模数 和底数 互素,即 ,也记作

对于 ,幂次 呈现一种循环结构.这个循环节的最小长度,就是 的阶.阶就定义为幂 第一次回到起点 时的指数:

对于 ,满足同余式 的最小正整数 称作 的阶(the order of modulo ),记作

抽象代数 中,这里的「阶」就是模 既约剩余系关于乘法形成的群中,元素 的阶.用记号 表示阶只适用于这个特殊的群.下面的诸多性质可以直接推广到抽象代数中群元素的阶的性质.

另外还有「半阶」的概念,在数论中会用 记号表示.它是满足同余式 的最小正整数.半阶不是群论中的概念.阶一定存在,半阶不一定存在.

幂的循环结构

利用阶,可以刻画幂的循环结构.对于幂 ,可以将指数 对阶 做带余除法:

进而,利用幂的运算律,就得到

这说明,对于任意指数的幂,可以将它平移到第一个非负的循环节.由此,可以得到一系列关于阶的性质.

性质 1

对于 ,幂次 两两不同余.

性质 2

对于 ,同余关系 成立,当且仅当

欧拉定理 中,同余关系 对于所有 都成立.结合 性质 2,这说明对于所有 ,都有 .换句话说, 是所有 的阶的一个公倍数.对于一个正整数 ,所有 的阶 的最小公倍数,记作 ,就是 Carmichael 函数.后文会详细讨论它的性质.

和其他的循环结构类似,可以根据 的阶计算 的阶.

性质 3

对于 ,有

乘积的阶

是与 互素的不同整数.如果已知阶 ,那么,同样可以获得一些关于它们乘积 的阶 的信息.

性质 4

对于 ,那么,有

对于 的阶互素的情形,这一结论有着更为简单的形式.

性质 4'

对于 ,那么,有

一般情形中,性质 4 得到的界已经是紧的.乘积的阶取得下界的情形很容易构造:例如 时,,但是它们的乘积的阶

尽管一般情形中,乘积 的阶未必是它们的阶的最小公倍数,但是总能找到一个元素使得它的阶等于这个最小公倍数.

性质 5

对于 ,总是存在 使得

这一结论常用于构造出指定阶的元素.

原根

原根是一些特殊元素——它的阶就等于所有模 既约剩余系的个数.

原根

对于 ,如果存在 使得 ,就称 的原根(primitive root modulo ).其中,欧拉函数

并非所有正整数 都存在模 的原根.由上文的 性质 1,如果模 的原根 存在,那么, 所在的同余类互不相同,构成模 既约剩余系.特别地,对于素数 ,余数 对于 两两不同.

抽象代数 中,原根就是循环群的生成元.这个概念只在模 既约剩余系关于乘法形成的群中有「原根」这个名字,在一般的循环群中都称作「生成元」.并非每个模 既约剩余系关于乘法形成的群都是循环群,存在原根就表明它同构于循环群,如果不存在原根就表明不同构.

模为 时,模 整数乘法群就是 .这显然是循环群,所以原根就是

原根判定定理

如果已知模数 的全体素因子,那么很容易判断模 的原根是否存在.

定理

对于整数 ,那么, 是模 的原根,当且仅当对于 的每个素因数 ,都有

原根个数

原根如果存在,也未必唯一.一般地,对于模 既约剩余系中所有元素可能的阶和某个阶的元素数量,有如下结论:

定理

如果正整数 有原根 ,那么,当且仅当 时,模 阶元素存在,且恰有 个.特别地,模 的原根个数为

原根存在定理

本节将建立如下原根存在定理:

定理

的原根存在,当且仅当 ,其中, 是奇素数且

为说明这一结论,需要分别讨论如下四种情形:

  1. ,原根分别是 ,显然存在.

  2. 是奇素数的幂,其中, 为奇素数,

引理 1

对于奇素数 ,模 的原根存在.

引理 2

对于奇素数 ,模 的原根存在.

  1. ,其中, 为奇素数,

引理 3

对于奇素数 ,模 的原根存在.

  1. ,其中, 为奇素数,

引理 4

假设 且不存在奇素数 和正整数 使得 .那么,模 的原根不存在.

综合以上四个引理,我们便给出了一个数存在原根的充要条件.

求原根的算法

对于任何存在原根的模数 ,要求得它的原根 ,只需要枚举可能的正整数,并逐个判断它是否为原根即可.枚举时,通常有两种处理方式:从小到大逐一枚举、随机生成一些正整数.这两种枚举方式的实际效率相当.

从小到大逐一枚举时,得到的是模 的最小原根 ,因此,枚举部分的复杂度取决于 的大小.对此,有如下估计:

  • 上界的估计:王元 1 和 Burgess2 证明了素数 的最小原根 ,其中 .Cohen, Odoni, and Stothers3 和 Elliott and Murata4 分别证明了该估计对于模数 也成立,其中, 是奇素数.由于对于 ,模 (或 )的原根也是模 (或 )的原根,所以,最小原根的上界 对于所有情形都成立.
  • 下界的估计:Fridlander5 和 Salié6 证明了存在 ,使得对于无穷多素数 ,都有最小原根 成立.
  • 平均情形的估计:Burgess and Elliott7 证明了平均情形下素数 的最小原根 .Elliott and Murata8 进一步猜想素数 的最小原根的平均值是一个常数,且通过数值验证 9 得到它大概为 .随后,Elliott and Murata4 将这一猜想推广到模 的情形.

根据这些分析,暴力寻找最小原根时,枚举部分的复杂度 是可以接受的.

除了从小到大枚举外,还可以通过随机生成正整数并验证的方法寻找原根.原根的密度并不低:10

所以,通过随机方法寻找原根时,枚举部分的期望复杂度为

需要注意的是,判定原根时需要已知 的质因数分解.算法竞赛 常用质因数分解算法 中,复杂度最优的 Pollard Rho 算法也需要 的时间.因此,只要 的质因数分解是未知的,无论采用哪种枚举方式,求原根的复杂度瓶颈都在于质因数分解这一步,而非枚举验证的部分.

Carmichael 函数

相对于模 元素的阶这一局部概念,Carmichael 函数是一个全局概念.它是所有与 互素的整数的幂次的最小公共循环节.

Carmichael 函数

对于 ,定义 为能够使得同余关系 对于所有 都成立的最小正整数 .函数 就称为 Carmichael 函数

根据 性质 2,能够使得 对于所有 都成立,意味着 对于所有 都成立.也就是说,符合这一条件的正整数 ,一定是全体 的公倍数.因此,最小的这样的 就是它们的最小公倍数:

这也常用作 Carmichael 函数的等价定义.

反复应用 性质 5 可知,一定存在某个元素 使得 .因此,上式也可以写作

取得这一最值的元素 也称为模 ‑原根.它对于所有模数 都存在.

递推公式

Carmichael 函数是一个 数论函数.本节讨论它的一个递推公式,并由此给出原根存在定理的另一个证明.

虽然不是积性函数,但是计算 Carmichael 函数时,同样可以对互素的因子分别处理.

引理

对于互素的正整数 ,有

因此,接下来只要计算 Carmichael 函数在素数幂处的取值.首先,处理 的幂次的情形.

引理

对于 ,有 ,且对于 都有

在这个引理的证明过程中,实际上得到了关于模 既约剩余系结构的刻画:

推论

设模数为 .那么,所有奇数都同余于唯一一个 形式的整数同余,其中,.也就是说, 两两不同余,且构成一个既约剩余系.

然后,处理奇素数幂的情形.

引理

对于 ,其中, 是奇素数且 ,有

将本节的结果简单归纳,就得到 Carmichael 函数的递推公式:

定理

对于任意正整数 ,有

利用该递推公式可以加强前文的结果:

推论

对于正整数 ,有

比较原根和 Carmichael 函数的定义可知,模 的原根存在,当且仅当 .从 Carmichael 函数的递推公式中,容易归纳出如下结果:

推论

的原根存在,当且仅当 ,其中, 是奇素数且

由于本节对于递推公式的证明并没有用到原根存在定理,因此,这就构成了对该定理的又一个证明.

Carmichael 数

利用 Carmichael 函数,可以讨论 Carmichael 数(卡迈克尔数,OEIS:A002997)的性质与分布.这是 Fermat 素性测试 一定无法正确排除的合数.

Carmichael 数

对于合数 ,如果对于所有整数 都有同余式 成立,就称 Carmichael 数

最小的 Carmichael 数是

由 Carmichael 函数的定义可知,合数 是 Carmichael 数当且仅当 ,其中 为 Carmichael 函数.进一步地,可以得到如下判断合数 是否为 Carmichael 数的方法:

Korselt 判别法 1

合数 是 Carmichael 数当且仅当 无平方因子且对 的任意质因子 均有

从这一判别法出发,可以建立 Carmichael 数的一些简单性质:

推论

Carmichael 数是奇数,没有平方因子,而且至少有 个不同的素因子.

利用解析数论还可以得到 Carmichael 数分布的一些性质.设 为小于等于 的 Carmichael 数个数.Alford, Granville, and Pomerance11 证明,对于充分大的 ,有 .由此,Carmichael 数有无限多个.在这之前,Erdős12 已经证明,,其中 为常数.因此,Carmichael 数的分布(相对于素数来说)十分稀疏.实际上,有 13

参考资料与注释

Footnotes

  1. Wang Y. “On the least primitive root of a prime.” (in Chinese). Acta Math Sinica, 1959, 4: 432–441; English transl. inSci. Sinica, 1961, 10: 1–14.

  2. BURGESS, David A. “On character sums and primitive roots.” Proceedings of the London Mathematical Society, 1962, 3.1: 179-192.

  3. Cohen, S. D., R. W. K. Odoni, and W. W. Stothers. “On the least primitive root modulo p 2.” Bulletin of the London Mathematical Society 6, no. 1 (1974): 42-46.

  4. Elliott, P. D. T. A., and L. Murata. “The least primitive root mod 2p2.” Mathematika 45, no. 2 (1998): 371-379. 2

  5. FRIDLENDER, V. R. “On the least n-th power non-residue.” Dokl. Akad. Nauk SSSR. 1949. p. 351-352.

  6. SALIÉ, Hans. “Über den kleinsten positiven quadratischen Nichtrest nach einer Primzahl.” Mathematische Nachrichten, 1949, 3.1: 7-8.

  7. Burgess, D. A., and P. D. T. A. Elliott. “The average of the least primitive root.” Mathematika 15, no. 1 (1968): 39-50.

  8. Elliott, Peter DTA, and Leo Murata. “On the average of the least primitive root modulo p.” Journal of The london Mathematical Society 56, no. 3 (1997): 435-454.

  9. 更多结果可以参考 Least prime primitive root of prime numbers

  10. 如果模 的原根存在,那么,,且等号仅在 处取得.进一步地,当 时,对欧拉函数 有估计:.将这两者结合,就得到文中的表达式.关于欧拉函数的该估计,可以参考论文 Rosser, J. Barkley, and Lowell Schoenfeld. “Approximate formulas for some functions of prime numbers.” Illinois Journal of Mathematics 6, no. 1 (1962): 64-94.

  11. W. R. Alford; Andrew Granville; Carl Pomerance (1994). “There are Infinitely Many Carmichael Numbers.” Annals of Mathematics. 140 (3): 703–722.

  12. Erdős, P. (1956). “On pseudoprimes and Carmichael numbers.” Publ. Math. Debrecen. 4 (3–4): 201–206.

  13. PINCH, Richard GE. The Carmichael numbers up to .