Loading [MathJax]/jax/output/HTML-CSS/jax.js

2014年6月23日 星期一

[數論] 原根 (Primitive Roots)

參考資料
張文忠,基礎數論:原理及題解,中央圖書,2002年出版,ISBN:978-957-637-493
李華介,基礎數論 http://math.ntnu.edu.tw/~li/ent-html/node34.html
Integers with Primitive Roots https://proofwiki.org/wiki/Integers_with_Primitive_Roots
Primitive Roots Modulo the First 1000 Numbers
http://dbfin.com/2012/04/primitive-roots-modulo-the-first-1000-numbers/

在前兩篇 (二次剩餘Legendre Symbol) 我們只有討論二次剩餘的存在性,並沒有給出一個完整地求解方法,當然列舉法也算一種求解方法,但這不在本篇的討論範圍內。為了要求解,我們會用到「原根(Primitive roots)」的概念。

原根定義
設整數 am 互質。 使 aδ1(modm) 成立的最小正整數 δ 稱為 a 對模 m 的次數(degree)或階(order)。根據 Euler's theorem,若 整數 am 互質,則 aϕ(m)1(modm)。當 δ=ϕ(m),稱 a 是模 m 的一個原根。

定理1:若 a 對模 m 的次數是 δ若 δn,則 an1(modm),n>0
<pf>
這是一個充分必要條件的證明。
先證明充分性。假設 δn,即 n=kδ,kZ。因此 anakδ(aδ)k1k1(modm)

證明必要性。若 n 不是 δ 的倍數,表示存在兩整數 qr,使得 n=qδ+r,0<r<δ,則
1anaqδ+r(aδ)qar1arar(modm)
這與 δ 為最小的定義矛盾,故 δn。證畢。

定理2:若 a 對模 m 的次數為 δ,則 1,a,a2,,aδ1 對模 m 皆不同餘。
<pf>
假設有兩整數 kl,滿足 akal(modm),0k<l<δ。因為 gcd(a,m)=1,故有 alakalk1(modm)。因為 lk<δ,這與 δ 是最小的定義矛盾,故原命題成立。

在 二次剩餘 這篇,證明 Euler's Criterion 時,就用到了原根的性質。利用原根的概念,m 的簡化剩餘系可以用一套規律的方式寫下。假設 a 是模 m 的一個原根,根據上述定理2,{a0,a1,,aϕ(m)1} 其實就是模 m 的簡化剩餘系。我們之後習慣用這種簡化剩餘系說明之。

{a0,a1,,aϕ(m)1} 是模 m 的簡化剩餘系。


定理3:若 a 對模 m 的次數是r。設有一數 λ>0aλ 對模 m 的次數是 t,則 t=r(λ,r)
<pf>
根據上述定理1,我們有 rλt,即得 r(λ,r)λ(λ,r)t。因為 (r(λ,r),λ(λ,r))=1,所以 r(λ,r)t

另一方面,(aλ)r(λ,r)arλ(λ,r)1(modm),根據定理1,有 tr(λ,r)。所以 t=r(λ,r)

這個定理告訴我們,如果 g 是模 m 的原根,則 gk 是模 m 原根的充分必要條件是 gcd(k,ϕ(m))=1。這是一個非常重要的結論!例如我們找到了模 m 的一個原根 g,只要 g 的次方數 kϕ(m) 互質,那麼 gk 也會是模 m 的一個原根。換句話說,
只要找到了模 m 的一個原根,我們就可以找出其他的原根。


定理4:設 a 對模 m 的次數是 δ。若 gcd(λ,δ)=10<λδ,則 aλ 對模 m 的次數均為 δ,符合條件的 λϕ(δ) 個。

<pf>
1,2,,δ 中,與 δ 互質的數有 ϕ(δ) 個。當 gcd(λ,δ)=1,根據定理3,我們知道 aλ 對模 m 的次數均為 δ。證畢。

根據定理3,只要 g 的次方數 kϕ(m) 互質,那麼 gk 也會是模 m 的一個原根。與 ϕ(m) 互質的數的個數有 ϕ(ϕ(m))。換句話說,

設模 m 有原根,則它共有 ϕ(ϕ(m)) 個對於模 m 不相同的原根。


定理5:若 a 對模 m 的次數為 sb 對模 m 的次數為 t。若 gcd(s,t)=1,則 ab 對模 m 的次數為 st
<pf>
ab 對模 m 的次數為 δ(ab)st=astbst=[as]t[bt]s1(modm)。我們得到 δst

另一方面,1[(ab)δ]s(ab)sδasδbsδasδ(bs)δbsδ(modm),我們得到 tsδ。因為 gcd(s,t)=1,所以 tsδ 可改寫成 tδ

同理,1[(ab)t]δatδbtδ(at)δbtδbtδ(modm),可以得到 sδ。因為 gcd(s,t)=1,所以有 stδ,而一開始已證明 δst,故 st=δ,證畢。

實際解二次同餘方程之前,其實有很多東西要講。首先,原根是否一定存在?答案是否,原根必須要符合某些條件才會存在。例如對於模 8ϕ(8)=ϕ(23)=2322=4,由於任何與 8 互質的整數都是奇數,奇數的平方除以 8 都是餘 1,這表示對於奇數 xx21(mod8)2<ϕ(8),故模 8 沒有原根。

討論完原根的存在性之後,接著再討論如何求出原根,最後利用原根的特性,求出二次同餘式、甚至是高次同餘式的解。

原根的存在性
m2, 4, pk, 2pk (p 為奇質數) 四者之一時,原根才存在。

證明可在各數論書籍找到,故略。我們把重點放在原根的計算上。

原根的計算