数论概论读书笔记 28.幂模p与原根

幂模p与原根

如果 a a p互素,费马小定理告诉我们, ap11 (mod p) a p − 1 ≡ 1   ( m o d   p )

辣么这个指数 p1 p − 1 是唯一的使得结果为1的嘛

我们选一些 a a p看一下

对于 a=3,p=7 a = 3 , p = 7 :指数只有为6时才取到1。

img

模p余1的a的最小次幂:

img

从表中可以看出,似乎有这样的性质:

  • 最小指数 e e 似乎整除p1
  • 总有一些指数需要到指数 p1 p − 1

为了方便,我们定义 a a p ep(a)=[使ae1(mod p)e] e p ( a ) = [ 使 得 a e ≡ 1 ( m o d   p ) 的 最 小 e ]

a a p要是互素的。

规定 ep(a)1 e p ( a ) ≥ 1 显然 ep(a)p1 e p ( a ) ≤ p − 1

次数整除性质 设a是不被素数 p p 整除的整数,假设an1 (mod p),则次数 ep(a) e p ( a ) 整除 n n ,特别地ep(a)总整除 p1 p − 1

证明: 次数 ep(a) e p ( a ) 的定义告诉我们

aep(a)1 (mod p) a e p ( a ) ≡ 1   ( m o d   p )

假设 an1( mod p) a n ≡ 1 (   m o d   p )

G=gcd(ep(a),n) G = g c d ( e p ( a ) , n )

并设 (u,v) ( u , v ) 是方程 ep(a)unv=G e p ( a ) u − n v = G 的正整数解。(可知一定有解)

现在有两种不同的方法计算 aep(a)u a e p ( a ) u

aep(a)u=(aep(a))u1 (mod p)aep(a)u=anv+GaG (mod p) a e p ( a ) u = ( a e p ( a ) ) u ≡ 1   ( m o d   p ) a e p ( a ) u = a n v + G ≡ a G   ( m o d   p )

这表明 aG1( mod p) a G ≡ 1 (   m o d   p ) ,所以必有 ep(a)G e p ( a ) ≤ G

另一方面 G | ep(a) G   |   e p ( a ) ,所以 G=ep(a) | n G = e p ( a )   |   n

证毕。

下一个任务是观察具有最大可能次数,即 ep(a)=p1 e p ( a ) = p − 1 的数a

如果a是这样的数,则幂

a1,a2,a3,...,ap2,ap1( mod p) a 1 , a 2 , a 3 , . . . , a p − 2 , a p − 1 (   m o d   p )

必须都是模 p p 不同的。[如果幂不是全不相同,则对某指数1i<jp1 aiaj (mod p) a i ≡ a j   ( m o d   p ) ,由于a,p互质,则有 1aji (mod p) 1 ≡ a j − i   ( m o d   p ) ,由于 ji<p1 j − i < p − 1 ,则矛盾]。这 p1 p − 1 个不同的数取遍了 [1,p1] [ 1 , p − 1 ]

这样的数很重要,为了方便,我们称这样的数 g g 为模p的原根,即 ep(g)=p1 e p ( g ) = p − 1

回顾前面的那张表,5的原根是2,3, 7的原根是3,5 ,11的原根是2,6,7,8

可见原根可以不止一个,辣到底有多少个?所有素数都有原根吗?

原根定理 每个素数 p p 都有原根。更精确地,有恰好φ(p1)个模 p p 的原根。

神奇!尽管原根定理没有指出求p的原根的具体方法,但一旦能求得一个原根,就可以容易得求出其他原根(后面介绍)。求原根的常用方法是从小到大枚举正整数a=2,3,5,6……。因为原根的分布比较广。(思考为什么没有4)。

为啥没4?因为 4(p1)22p11 (mod p) 4 ( p − 1 ) 2 ≡ 2 p − 1 ≡ 1   ( m o d   p ) ,即4一定不是原根。(可见2的高次幂都不是)

证明: 1p1 1 ∼ p − 1 之间的每个数 a a ep(a) | (p1) ,所以,对整数 p1 p − 1 的每个因子 d d ,我们可能会问,有多少个ep(a)等于 d d ,由于要用,我们记这个数ψ(d),1a<p

ψ(p1) ψ ( p − 1 ) 为模 p p 原根个数

n是整除 p1 p − 1 的任何数,比如说 p1=nk p − 1 = n k ,则可将多项式 Xp11 X p − 1 − 1 分解成 Xnk1=(Xn)k1=(Xn1)((Xn)k1+(Xn)k2+...+(Xn)2+Xn+1) X n k − 1 = ( X n ) k − 1 = ( X n − 1 ) ( ( X n ) k − 1 + ( X n ) k − 2 + . . . + ( X n ) 2 + X n + 1 )

我们数一下这些多项式模 p p 有多少个根。

首先,Xp110 (mod p)恰好有 p1 p − 1 个解,即 [1,p1] [ 1 , p − 1 ] 这些。

另一方面, (Xn1)0 (mod p) ( X n − 1 ) ≡ 0   ( m o d   p ) 至多有 n n 个解,且

(Xn)k1+(Xn)k2+...+(Xn)2+Xn+10 (mod p)

至多有 nkn n k − n 个解。

因此我们得到:

img

如果上式成立,则 Xn1 X n − 1 p p 恰有n个根。这就证明了下述重要事实。

如果 n | p1 n   |   p − 1 ,则同余式 Xn10 (mod p) X n − 1 ≡ 0   ( m o d   p ) 恰好有 n n 个根满足0X<p

现在再用另一种计数方法计数上面同余式的解的个数。

如果 X=a X = a 是一个解,则 an1 (mod p) a n ≡ 1   ( m o d   p ) ,因此 ep(a) | n e p ( a )   |   n ,即 ep(a) e p ( a ) 对应 n n 的一个因子d

从这个角度, Xn10 (mod p) X n − 1 ≡ 0   ( m o d   p ) 解的个数等于

d|nψ(d)=ψ(d1)+ψ(d2)+...+ψ(dr) ∑ d | n ψ ( d ) = ψ ( d 1 ) + ψ ( d 2 ) + . . . + ψ ( d r )

综合上面两个角度,我们得到一个结论:

n n 整除p1,则 d|nψ(d)=n ∑ d | n ψ ( d ) = n

这个公式和欧拉函数的形式一样!

实际上这里 ψ ψ 就是 φ φ

首先, φ(1)=1 φ ( 1 ) = 1 ,而 ψ(1)=1 ψ ( 1 ) = 1

下面证明当 n=q n = q 为素数时, ψ(n)=φ(n) ψ ( n ) = φ ( n )

q的因数是1和q,所以 ψ(q)+ψ(1)=q=φ(q)+φ(1) ψ ( q ) + ψ ( 1 ) = q = φ ( q ) + φ ( 1 )

由于 ψ(1)=φ(1) ψ ( 1 ) = φ ( 1 ) ,则 ψ(q)=φ(q) ψ ( q ) = φ ( q )

n=q2 n = q 2 n=q1q2 n = q 1 q 2 也可以类似证明

通过从小的 n n 值到较大的n的值的研究,说明了对每个 n n 证明φ(n)=ψ(n)的思路。

更正式地,可以给出归纳证明,这里不展示了。

综上,我们已证明对整除 p1 p − 1 的每个整数 n n ,恰好有φ(n)个数 a a 使得ep(a)=n,取 n=p1 n = p − 1 ,则 φ(p1) φ ( p − 1 ) 为原根个数。显然,每个素数至少有一个原根。

阿廷猜想 有无穷多个素数 p p 使得2是模p的原根。

广义阿廷猜想 设整数 a a 不是完全平方也不等于1,则有无穷多个素数 p p 使得a是模 p p <script type="math/tex" id="MathJax-Element-181">p</script>的原根。

一个题目

img

答案是0

一个拓展

img

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值