在正题之前,我们需要群论的相关知识,实际上对某个数取模构成的集合就是一个群。
群是一个特殊的集合,所以首先它是一个集合,其次,在集合之上构成群的条件就是,集合里面的元素之间存在一个二元运算,会生成其他在集合里的任意元素。
设 S S 为一个群, ⊕ ⊕ 为一个二元运算。
则严格定义:
封闭性: ∀a,b∈S,a⊕b∈S ∀ a , b ∈ S , a ⊕ b ∈ S
单位元: ∃e∈S,对于∀a∈S,有a⊕e=a ∃ e ∈ S , 对 于 ∀ a ∈ S , 有 a ⊕ e = a
结合律: ∀a,b,c∈S,(a⊕b)⊕c=a⊕(b⊕c) ∀ a , b , c ∈ S , ( a ⊕ b ) ⊕ c = a ⊕ ( b ⊕ c )
逆元: ∀a∈S,唯一∃b∈S,满足a⊕b=b⊕a=e ∀ a ∈ S , 唯 一 ∃ b ∈ S , 满 足 a ⊕ b = b ⊕ a = e
满足以上4个条件,我们称为 (S,⊕) ( S , ⊕ ) 为一个群。
群有有限和无限之分,就是看群里面的元素数量的个数啦,这个很简单。
我们定义 ∗n ∗ n 为在模 n n 意义下的乘法运算。
那么我们可以构造出一种群(也是我们接下要讨论的)。
设
Z∗n={a<n:gcd(a,n)=1} Z n ∗ = { a < n : g c d ( a , n ) = 1 }
显然这个集合就是一个群,其数量就等于
ϕ(n) ϕ ( n ) (就是欧拉函数的定义啊…)。
例如
Z15={1,2,4,7,8,11,13,14} Z 15 = { 1 , 2 , 4 , 7 , 8 , 11 , 13 , 14 } ,这个可以自行验证。易知
|Z∗n|=ϕ(n) | Z n ∗ | = ϕ ( n )
子群:如果
S′⊂S,并且(S′,⊕)也是个群,则(S′,⊕)是(S,⊕)的子群 S ′ ⊂ S , 并 且 ( S ′ , ⊕ ) 也 是 个 群 , 则 ( S ′ , ⊕ ) 是 ( S , ⊕ ) 的 子 群
定理1:如果
(S′,⊕)是(S,⊕)的子群 ( S ′ , ⊕ ) 是 ( S , ⊕ ) 的 子 群 ,则
|S′|整除|S| | S ′ | 整 除 | S |
由一个元素生成的子群:我们有一个方法来生成一个子群,就是我们从原群里取出一个数设 a a 。
我们定义:
a(k)=⊕ki=1a=a⊕a⊕...⊕a a ( k ) = ⊕ i = 1 k a = a ⊕ a ⊕ . . . ⊕ a
在
k k 不同取值的情况下所构成的集合,我们定义为子群
<a>={a(k):k>=1} < a >= { a ( k ) : k >= 1 }
所以显然在模
n n 乘法意义下,
a(k)=ak mod n a ( k ) = a k m o d n
那么一个问题就是这个群有多少个元素?
在群 S S 中,元素a的阶定义为 a(t)=e a ( t ) = e 的最小正整数 t t ,用 ord(a) o r d ( a ) 表示。
定理2: |<a>|=ord(a) | < a > | = o r d ( a )
由此产生的推论是:
设有ax≡1 (mod p),则满足ord(a)整除x 设 有 a x ≡ 1 ( m o d p ) , 则 满 足 o r d ( a ) 整 除 x
所以易知
ord(a)整除ϕ(p) o r d ( a ) 整 除 ϕ ( p )
则有
aϕ(p)≡1 (mod p)(传说中的欧拉定理?) a ϕ ( p ) ≡ 1 ( m o d p ) ( 传 说 中 的 欧 拉 定 理 ? )
定义:若
ord(a)=|Z∗n|,则a是n的一个 o r d ( a ) = | Z n ∗ | , 则 a 是 n 的 一 个
原根
,如果Z∗n , 如 果 Z n ∗ 有至少一个原根,那么称这个群是
循环的。
下一个问题:任意
n n 都有原根么?
定理3:
Z∗n Z n ∗ 是循环的,当n的值为
2,4,pe,2pe,(p是所有大于2的质数,e是所有正整数) 2 , 4 , p e , 2 p e , ( p 是 所 有 大 于 2 的 质 数 , e 是 所 有 正 整 数 )
那么显然有的结论:
若g是Z∗n的一个原根,a是这个群里的任意元素,那么必然存在唯一的x使得gx≡a(mod n) 若 g 是 Z n ∗ 的 一 个 原 根 , a 是 这 个 群 里 的 任 意 元 素 , 那 么 必 然 存 在 唯 一 的 x 使 得 g x ≡ a ( m o d n )
我们称
x为对模n到基g上的a的一个 x 为 对 模 n 到 基 g 上 的 a 的 一 个
离散对数,记为
x=indn,g(a) x = i n d n , g ( a )
定理4(离散对数定理):
如果g是Z∗n的一个原根,则当且仅当x≡y(mod ϕ(n))成立 如 果 g 是 Z n ∗ 的 一 个 原 根 , 则 当 且 仅 当 x ≡ y ( m o d ϕ ( n ) ) 成 立 ,有
gx≡gy(mod n) g x ≡ g y ( m o d n )
好了,就先到这了