Primitive Roots
給定 m∈ N, 若存在 a ∈ Z 使得 {a,a2, . . . , aϕ(m)} 成為一個 reduced residue system modulo m, 則稱 a 是 modulo m 之下的 primitive root. Primitive roots 的概念可以幫助我們解高次 的 congruence equation. 在本章中我們將探討 Primitive Root Theorem, 即了解怎樣的正整 數 m 會使得在 modulo m 之下有 primitive root. 並依此來解高次的 congruence equation.
6.1. Order 與 Primitive Roots
給定 m∈ N 以及 a ∈ Z, 我們已知如何判別 x2≡ a (mod m) 有解或無解, 而 primitive root 的概念可以幫助我們找到解.
考慮 x2≡ 5 (mod 11). 利用 quadratic reciprocity law 我們知 ( 5
11 )
= (11
5 )
= (1
5 )
= 1, 故知 x2≡ 5 (mod 11) 有解. 然而解為何呢? 我們可以利用 2 在 modulo 11 之下特有的性 質幫助我們找解. 下表為 2n 在 modulo 11 的情形.
n 1 2 3 4 5 6 7 8 9 10 2n (mod 11) 2 4 8 5 10 9 7 3 6 1
我們發現第二行 (即 an 那一行) 中這 10 (=ϕ(11)) 個數在 modulo 11 之下皆相異, 而且因 2 和 11 互質所以自然 2n 和 11 互質, 因此由 reduced residue system 的定義知{2,22, . . . , 210} 是一個 reduced residue system modulo 11. 這代表的意義是每個和 11 互質的數 a, 都可以 找到 1≤ n ≤ 10 使得 a ≡ 2n (mod 11). 另一方面我們僅將 n 列到 10 的原因是因為 210≡ 1 (mod 11), 如果 m = 10k + i 其中 0≤ i ≤ 9, 則 2m≡ 2i (mod 11). 也就是每 10 次方一循環, 所以列出 10 次就夠了. 又由於已知當 1≤ i ̸= j ≤ 10 時, 2i̸≡ 2j (mod 11), 我們知 2i≡ 2j (mod 11) 若且唯若 i≡ j (mod 10). 結合這些結果可以幫助我們解 x2≡ 5 (mod 11). 原因 如下: 假設 x = c 是一解, 由於 5 和 11 互質, 故知 c 和 11 互質. 因此知存在 t∈ N 使得 c≡ 2t (mod 11). 然而 5≡ 24 (mod 11), 故由 22t≡ c2≡ 5 ≡ 24 (mod 11) 得 2t≡ 4 (mod 10).
我們很巧妙的將解二次的 x2≡ 5 (mod 11) 轉化成解一次的 2t ≡ 4 (mod 10) (注意 modulo 不同的數). 故利用 Proposition 4.2.1 解得 t ≡ 2 (mod 5), 也就是說 t = 2,7,... 為 2t ≡ 4 79
80 6. Primitive Roots
(mod 10) 之解. 將之代回 c = 2t, 得 c≡ 4,7 (mod 11). 故知 x ≡ ±4 (mod 11) 為 x2≡ 5 (mod 11) 之解.
可 依 此 法 解 二 次 congruence equation 歸 功 於 在 modulo 11 之 下 {2,22, . . . , 210} 是 reduced residue system. 要 注 意 並 不 是 2 永 遠 有 此 特 性. 例 如 23≡ 1 (mod 7), 所以 {2,22, . . . , 26} 在 modulo 7 之下並不是 reduced residue system. 我們將有此特性的元素給 個特定的名子.
Definition 6.1.1. 給定 m∈ N, 若 a ∈ Z 且與 m 互質滿足 {a,a2, . . . , aϕ(m)} 是一個 reduced residue system modulo m, 則稱 a 為 modulo m 之下的一個 primitive root.
要注意並不是對所有的 m 皆有 primitive root. 例如在 modulo 15 之下, 所有和 15 互質 的數 a 皆有 a4≡ 1 (mod 15), 所以又因 aϕ(15)= a8≡ 1 (mod 15) 知 {a,a2, a3, a4, . . . , a8} 不 可能形成 reduced residue system modulo 15. 也就是說在 modulo 15 之下並無 primitive root. 我們最主要的目的就是要探討哪些 m∈ N 在 modulo m 之下會有 primitive root.
首先我們必須了解怎樣的 a 在 modulo m 之下會是 primitive root. 由於 S ={a,a2, . . . , aϕ(m)}
是 reduced residue system modulo m, 所以若 1≤ i ̸= j ≤ϕ(m), 則 ai̸≡ aj (mod m). 否則 S 在 modulo m 之下會有少於 ϕ(m) 個同餘類, 無法形成 reduced residue system modulo m.
然而 a 和 m 互質, Euler’s Theorem (3.3.2) 告訴我們 aϕ(m)≡ 1 (mod m), 所以 a 在 modulo m 之下是 primitive root 的先決條件是若 1≤ i ≤ϕ(m) − 1, 則 ai̸≡ 1 (mod m) (否則會造成 1≤ i <ϕ(m) 且 ai≡ aϕ(m) (mod m) 的矛盾). 也就是說滿足 an≡ 1 (mod m) 的最小正整數 n 為 n =ϕ(m). 因此給定 a ∈ Z 且 gcd(a,m) = 1, 最小的正整數 n 滿足 an≡ 1 (mod m) 為何, 是判斷 a 在 modulo m 之下是否為 primitive root 的重要依據. 我們自然有以下之定義.
Definition 6.1.2. 給定 m∈ N 以及 a ∈ Z 滿足 gcd(a,m) = 1. 若 n ∈ N 是最小的正整數滿 足 an≡ 1 (mod m), 則稱 n 為 a 在 modulo m 之下的 order, 並以 ordm(a) = n 表之.
要注意由於 gcd(a, m) = 1, Euler’s Theorem 告訴我們 aϕ(m)≡ 1 (mod m), 所以 ordm(a) 必存在且依定義知 ordm(a)≤ϕ(m). 首先我們來看依定義馬上可得之性質.
Lemma 6.1.3. 給定 m∈ N 以及 a ∈ Z 滿足 gcd(a,m) = 1.
(1) 若 a≡ b (mod m) 則 ordm(a) = ordm(b).
(2) ordm(a) = 1 若且唯若 a≡ 1 (mod m).
Proof. (1) 若 a≡ b (mod m), 知對任意 i ∈ N 皆有 ai≡ bi (mod m), 故 若 n 是 最 小 的 正 整 數 使 得 an ≡ 1 (mod m), 則 n 也會是最小的正整數使得 bn ≡ 1 (mod m). 因此知 ordm(a) = ordm(b).
(2) 若 ordm(a) = 1, 表示 a1≡ 1 (mod m), 故得 a ≡ 1 (mod m). 反之, 若 a ≡ 1 (mod m), 當然 n = 1 是最小的正整數使得 an≡ 1 (mod m), 故知 ordm(a) = 1.
其實 order 的定義和最大公因數的定義類似, 我們要說 ordm(a) = n 等於要說兩件事:
(1) an≡ 1 (mod m).
(2) 若 1≤ i ≤ n − 1, 則 ai̸≡ 1 (mod m).
要記住這兩件事缺一不可才能保證 ordm(a) = n. 接下來我們就來看依此兩點可推得 ordm(a) 的性質.
Proposition 6.1.4. 給定 m∈ N 以及 a ∈ Z 滿足 gcd(a,m) = 1. 假設 ordm(a) = n. 則 ak≡ 1 (mod m) 若且唯若 n|k.
Proof. 假設 ak≡ 1 (mod m). 利用 Division Algorithm (Theorem 1.2.1) 知存在 h,r ∈ Z 滿 足 k = nh + r, 其中 0≤ r ≤ n − 1. 由 an≡ 1 (mod m) 知 ak= anh+r= (an)har≡ ar (mod m).
現假設 r̸= 0 (即 1 ≤ r ≤ n − 1), 則由 ak≡ 1 (mod m) 之假設知 ar≡ 1 (mod m). 此和 n 是 最小的正整數滿足 an≡ 1 (mod m) 相違背, 故知 r = 0, 即 n|k.
反之若 n|k, 即存在 h ∈ Z 滿足 k = nh, 故得 ak= anh= (an)h≡ 1 (mod m). 若 a 和 m 互質, Euler’s Theorem 告訴我們 aϕ(m)≡ 1 (mod 1), 故由 Proposition 6.1.4 知 ordm(a)|ϕ(m), 這比我們前面依定義知 ordm(a)≤ϕ(m) 好多了. 同樣的, 利用 Proposition 6.1.4, 我們可以有更好的方式來判定 ordm(a) 之值.
Corollary 6.1.5. 給定 m∈ N 以及 a ∈ Z 滿足 gcd(a,m) = 1. 則 ordm(a) = n 若且唯若 n 滿足以下兩條件:
(1) an≡ 1 (mod m).
(2) 若 ak≡ 1 (mod m), 則 n|k.
Proof. 若 ordm(a) = n, 則自然有 an≡ 1 (mod m), 再利用 Proposition 6.1.4 知, 若 ak≡ 1 (mod m), 則 n|k.
反之若 n 滿足 (1), (2) 兩項, 我們要證明 ordm(a) = n. 由於 (1) 已知 an≡ 1 (mod m), 故 僅剩要證明若 1≤ i ≤ n − 1, 則 ai̸≡ 1 (mod m). 我們用反證法, 假設 ai≡ 1 (mod m), 則由 (2) 知 n|i. 此和 1 ≤ i ≤ n − 1 相矛盾, 故知 ai̸≡ 1 (mod m). 也就是說 ordm(a) = n. Corollary 6.1.5 的 (2) 將 ordm(a) = n 原本表最小的正整數滿足 an≡ 1 (mod m) 的性質 轉換成看似更強的性質 (就如同當初原本最大公因數是最大的公因數可轉換成為所有的公 因數的倍數這樣的性質) 在以後有關 order 的理論推導中有很大的幫助.
計算 order 的另一個重要的原因是我們可以知道 ai 在 modulo m 之下的週期.
Proposition 6.1.6. 給定 m∈ N 以及 a ∈ Z 滿足 gcd(a,m) = 1. 假設 ordm(a) = n 且 i, j∈ N.
則 ai≡ aj (mod m) 若且唯若 i≡ j (mod n).
Proof. 假設 ai≡ aj (mod m), 不失一般性我們也假設 i≥ j, 此時 ai− aj= aj(ai− j− 1). 利 用 m|ai− aj 以及 m 和 aj 互質 (因 m 和 a 互質), Proposition 1.2.6 告訴我們 m|ai− j− 1, 即 ai− j≡ 1 (mod m). 故利用 ordm(a) = n 以及 Proposition 6.1.4 知 n|i− j, 亦即 i ≡ j (mod n).
82 6. Primitive Roots
反之, 若 i≡ j (mod n), 不失一般性我們假設 i ≥ j, 則有 n|i − j. 故再利用 Proposition 6.1.4 知 ai− j≡ 1 (mod m). 兩邊乘上 aj 因此有 ai= ajai− j≡ aj (mod m). 若 ordm(a) = n, Proposition 6.1.6 不只告訴我們 a, a2, . . . , ai, . . . 在 modulo m 之下的週 期為 n (即每隔 n 個 i, ai 會形成一循環) 而且告訴我們, a, a2, . . . , an 在 modulo m 之下皆相 異. 否則若存在 1≤ j < i ≤ n 使得 ai≡ aj (mod m), 可得 n|i − j 而與 0 < i − j < n − 1 相 矛盾. 依此我們可以確定可以用 ordm(a) 之值來判定 a 在 modulo m 之下是否為 primitive root.
Corollary 6.1.7. 給定 m∈ N 以及 a ∈ Z 滿足 gcd(a,m) = 1. 則 ordm(a) =ϕ(m) 若且唯若 a 在 modulo m 之下是一個 primitive root.
Proof. 假設 a 是 modulo m 之下的一個 primitive root. 由於 a, a2, . . . , aϕ(m) 在 modulo m 之下皆不同餘, 故知若 1≤ i ≤ϕ(m), 則 ai ̸≡ aϕ(m) (mod m). 又由於 Euler’s Theorem 知 aϕ(m)≡ 1 (mod m), 故知 ordm(a) =ϕ(m).
反之, 假設 ordm(a) =ϕ(m), 由 Proposition 6.1.6 知若 ai≡ aj (mod m), 則ϕ(m)|i− j. 因 此 a, a2, . . . , aϕ(m) 在 modulo m 之下皆不同餘. 又由於 a 和 m 互質, 知 ai 皆與 m 互質, 故 {a,a2, . . . , aϕ(m)} 是一個 reduced residue system modulo m, 也就是說 a 在 modulo m 之下
是一個 primitive root.
若已知 a 在 modulo m 的 order, 則對任意 i∈ N, 利用 Corollary 6.1.5 我們都可算出 ai 在 modulo m 之下的 order.
Proposition 6.1.8. 給定 m∈ N 以及 a ∈ Z 滿足 gcd(a,m) = 1. 若 ordm(a) = n, 則對於任 意的正整數 i,
ordm(ai) = n gcd(i, n).
Proof. 為了方便, 我們令 d = gcd(i, n). 欲證明 ordm(ai) = n/d, 首先得證明 (ai)n/d≡ 1 (mod m). 事實上因為 d 是 i 的因數, i/d 是個整數. 再加上由假設 ordm(a) = n, 故 an≡ 1 (mod m). 所以可得
(ai)n/d= (an)i/d ≡ 1 (mod m).
接 下 來 我 們 須 證 明, 若 (ai)k ≡ 1 (mod m) 則 (n/d)|k (參見 Corollary 6.1.5(2)). 若 (ai)k≡ 1 (mod m), 即 aki≡ 1 (mod m). 故由 Proposition 6.1.4, 我們可得 n|ki. 但因 d 是 n 和 i 的最大公因數. 我們有 n/d 和 i/d 皆為整數且互質. 故由 n|ki 可得 (n/d)|k(i/d). 再由
n/d 和 i/d 互質, 得 (n/d)|k.
由 Proposition 6.1.8, 我們知 ordm(ai) 整除 ordm(a) 而且 ordm(ai) = ordm(a) 若且唯若 gcd(i, ordm(a)) = 1. 因此在 modulo m 之下 primitive root 若存在, 則我們可推知在 modulo m 之下會有多少個 primitive roots.
Corollary 6.1.9. 給定 m∈ N 以及 a ∈ Z 滿足 gcd(a,m) = 1. 若 ordm(a) = n, 則{a,a2, . . . , an} 中共有ϕ(n) 個元素其在 modulo m 之下的 order 為 n. 特別地, 若在 modulo m 之下 primitive root 是存在的, 則在 modulo m 之下共有ϕ(ϕ(m)) 個 primitive roots.
Proof. 已知 ordm(a) = n, 由 Proposition 6.1.8 知 ordm(ai) = n 若且唯若 gcd(n, i) = 1. 又由 於 a, a2, . . . , an 在 modulo m 之下皆相異, 故 {a,a2, . . . , an} 中在 modulo m 之下 order 為 n 的元素個數等於和 n 互質且小於 n 的正整數的個數, 依定義知此數為ϕ(n).
現假設在 modulo m 之下有 primitive root 且 a 為一個 primitive root. 故知 ordm(a) = ϕ(m) 且所有和 m 互質的整數在 modulo m 之下皆和 S = {a,a2, . . . , aϕ(m)} 中某個元素同 餘. 所以在 modulo m 之下所有的 primitive root 皆可在 S 中找到. 然而由前知 S 中共 有 ϕ(ϕ(m)) 個元素其在 modulo m 之下的 order 為 ϕ(m), 且 Corollary 6.1.7 告訴我們在 modulo m 之下只有這些元素為 primitive root. 故知在 modulo m 之下共有 ϕ(ϕ(m)) 個
primitive roots.
6.2. 沒有 Primitive Root 的情況
我們將探討有哪些 m 在 modulo m 之下沒有 primitive root.
我們仍然從唯一的偶質數 2 出發. 在 modulo 2 之下ϕ(2) = 1, 而任何的奇數在 modulo 2 之下皆餘 1, 故所有的奇數皆為 primitive root. 在 modulo 4 時, {1,3} 是一個 reduced residue system modulo 4, 而 31̸≡ 1 (mod 4) 且 32≡ 1 (mod 4) 故得 ord4(3) = 2 =ϕ(4), 故 知 3 在 modulo 4 之下是 primitive root. 事實上若 a∈ Z 滿足 a ≡ 3 (mod 4) 則 a 在 modulo 4 之下為 primitive root.
接著我們來看 8 情形, 由於 {1,3,5,7} 是一個 reduced residue system modulo 8, 我 們 來 看 看 它 們 在 modulo 8 之 下 之 order 為 何. 很 明 顯 的 ord8(1) = 1 且 因 為 7≡ −1 (mod 8), 故知 ord8(7) = 2. 另外 31≡ 3 (mod 8) 且 32≡ 1 (mod 8), 故知 ord8(3) = 2. 同理 得 ord8(5) = 2. 由於所有和 8 互質的數在 modulo 8 之下必和 1, 3, 5, 7 中某一數同餘, 因此 由 Lemma 6.1.3(1) 知沒有一個和 8 互質的數其在 modulo 8 之下的 order 為 ϕ(8) = 4. 故 知在 modulo 8 之下沒有 primitive root.
或許大家看到 modulo 8 之下沒有 primitive root 很自然會認為那麼在 modulo 16 之 下也沒有 primitive root. 事實上這件事並不能直接用 order 的定義得到. 也就是說若已知 ord8(a) = n 並不能直接用 order 的性質推出 ord16(a) 之值. 頂多我們知道若 ord16(a) = n′, 則由 an′ ≡ 1 (mod 16) 可知 an′ ≡ 1 (mod 8), 故利用 Proposition 6.1.4 得 n|n′. 但我們並不 能由此以及 n <ϕ(8) 推出 n′<ϕ(16). 所以要推出在 modulo 16 或甚至 modulo 2n, n > 3 時沒有 primitive root, 是需要多下功夫的. 在前面我們已算出對任意奇數 a, 皆滿足 a2≡ 1 (mod 23). 我們要用歸納法推出以下結果.
Lemma 6.2.1. 假設 a 為一奇數, 則對任意 n∈ N 皆有 a2n ≡ 1 (mod 2n+2).
84 6. Primitive Roots
Proof. 我們已知當 n = 1 時這是對的. 假設當 n = k 時皆有 a2k≡ 1 (mod 2k+2),我們要證 明當 n = k + 1 時亦成立. 依假設我們知存在 b∈ Z 使得 a2k = 1 + 2k+2b. 故
a2k+1= (a2k)2= (1 + 2k+2b)2= 1 + 2(2k+2b) + (2k+2b)2.
由於 2(k + 2) = k + (k + 4) > k + 3, 我們得 a2k+1≡ 1 (mod 2k+3). 也就是說當 n = k + 1 時
a2n ≡ 1 (mod 2n+2) 亦成立, 故由數學歸納法得證本定理.
依 order 的定義我們馬上由 Lemma 6.2.1 知當 a 為奇數且 n∈ N 時, ord2n+2(a)≤ 2n< 2n+1=ϕ(2n+2),
故得證以下重要的結果.
Proposition 6.2.2. 當 n∈ N 且 n ≥ 3 時, 在 modulo 2n 之下沒有 primitive root.
接下來我們要探討另一種沒有 primitive root 的情況, 首先我們來看另一個有關 order 簡單的性質.
Lemma 6.2.3. 給定互質的兩正整數 m, n 以及 a∈ Z 滿足 gcd(a,mn) = 1. 則 ordmn(a)≤ ϕ(mn)
gcd(ϕ(m),ϕ(n)).
Proof. 令 d = gcd(ϕ(m),ϕ(n)). 由於 gcd(a,mn) = 1, 我們知 gcd(a,m) = gcd(a,n) = 1. 因 此由 Euler’s Theorem 我們有 aϕ(m)≡ 1 (mod m) 以及 aϕ(n)≡ 1 (mod n). 因此由 ϕ(mn) = ϕ(m)ϕ(n) (因 gcd(m,n) = 1) 以及 ϕ(n)/d ∈ N 可得
aϕ(mn)d = (aϕ(m))ϕ(n)d ≡ 1 (mod m).
同理可得 aϕ(mn)/d≡ 1 (mod n). 也就是說 m|aϕ(mn)/d−1 且 n|aϕ(mn)/d−1, 故再因 gcd(m,n) = 1 利用 Proposition 1.2.6(2) 可得 mn|aϕ(mn)/d− 1, 即 aϕ(mn)/d≡ 1 (mod mn). 故依 order 之定
義得 ordmn(a)≤ϕ(mn)/d.
特別地, 假設 m 是一個大於 2 的整數. 若 m 沒有奇的質因數, 即 m = 2k 其中 k≥ 2. 此時 ϕ(m) = ϕ(2k) = 2k−1, 故得 2|ϕ(m). 若 m 有奇的質因數, 即存在一奇質數 p 使得 m = plm′, 其中 l∈ N 且 p - m′. 此時 ϕ(m) = ϕ(pl)ϕ(m′) = (p− 1)pl−1ϕ(m′), 同樣可得 2|ϕ(m). 因此可 知當 m, n > 2 時 gcd(ϕ(m),ϕ(n)) ≥ 2. 利用此一結果, 我們馬上可得另一個重要結論.
Proposition 6.2.4. 當 m > 2 且 n > 2 為兩互質的整數時, 在 modulo mn 之下沒有 primitive root.
Proof. 因 m, n 皆大於 2 我們知 2|ϕ(m) 且 2|ϕ(n) 故得 gcd(ϕ(m),ϕ(n)) ≥ 2. 另一方面 m 和 n 是互質的, 故對任一與 mn 互質的整數 a, 由 Lemma 6.2.3 知
ordmn(a)≤ ϕ(mn)
gcd(ϕ(m),ϕ(n))≤ ϕ(mn)
2 <ϕ(mn).
故知在 modulo mn 之下無 primitive root.
當 m > 1 且沒有奇的質因數時, 我們知道當 m = 2, 4 時在 modulo m 之下有 primitive root, 而在其他狀況 (即 m = 2n 且 n≥ 3) Proposition 6.2.2 告訴我們在 modulo m 之下沒 有 primitive root. 當 m 有奇的質因數時, Proposition 6.2.4 告訴我們若 m 有兩個或兩個以 上奇的質因數時, 在 modulo m 之下沒有 primitive root. 而當 m 只有一個奇的質因數時, Proposition 6.2.4 也告訴我們若 4|m, 在 modulo m 之下沒有 primitive root. 所以我們僅剩 下 m 僅有一個奇的質因數且 4- m 的情形未討論, 即 m = pn 或 m = 2pn, 其中 p 為奇質數的 情形.
Exercise 6.1. 請以計算方式處理以下問題:
(1) 試求 ord15(8) (2) 試求 ord17(9)
(3) 說明在 modulo 15 之下無 primitive roots.
(4) 說明在 modulo 16 之下無 primitive roots.
Exercise 6.2. 假設 m∈ N 且 gcd(a,m) = gcd(b,m) = 1.
(1) 證明若 gcd(ordm(a), ordm(b)) = 1 則 ordm(ab) = ordm(a)· ordm(b).
(2) 試證明若 ordm(a) = m− 1, 則 m 必為質數.
Exercise 6.3. 假設 a, n∈ N 且 a > 1. 試證明 ordan−1(a) = n, 並依此得證 n|ϕ(an− 1).
Exercise 6.4. 假設 m, n∈ N 且 gcd(a,mn) = 1.
(1) 試證明 lcm(ordm(a), ordn(a))| ordmn(a).
(2) 若又假設 gcd(m, n) = 1, 試證明 ordmn(a)| lcm(ordm(a), ordn(a)). 並 依 此 得 證 當 gcd(m, n) = 1 時 ordmn(a) = lcm(ordm(a), ordn(a)).
———————————– June, 01 2018