Proof. From Theorem 8.8, we know that p has a primitive root r that is also a primitive root modulo p2, so that
rp−1≡1(modp2)
Using mathematical induction, we will prove that for this primitive root r ,
rpk−2(p−1)≡1(modpk)
for all positive integers k . Once we have established this congruence, we can show that r is also a primitive root modulo pk by the following reasoning. Let
n= ord p∗ε.
From Theorem 6.8 , we know that n∣ϕ(pk)=pk−1(p−1). On the other hand, since
rn≡1(modpk)
we also know that
rn≡1(modp)
From Theorem 8.1, we see that p−1=ϕ(p)∣n. Because (p−1)∣n, and n∣pk−1(p−1), we know that n=pt(p−1), where t is an integer such that 0⩽t⩽k−1. If n=pt(p−1) with t⩽k−2, then
rpk−2(p−1)=(rp′(p−1))pk−2−1≡1(modpk)
which would contradict (8.3). Hence, ord kr=pk−1(p−1)=ϕ(pk). Consequently, r is also a primitive root modulo pk.
All that remains is to prove (8.3) using mathematical induction. The case of k=2 follows from (8.2). Let us assume the assertion is true for the positive integer k⩾2. Then
rpk−2(p−1)≡1(modpk)
Since (r,p)=1, we know that (r,pk−1)=1. Consequently, from Euler's theorem, we know that
rpk−2(p−1)≡rϕ(pk−1)
Therefore, there is an integer d such that
rpk−2(p−1)=1+dpk−1
where p\d, since by hypothesis rpt−2(p−1)≡1(modpk). We take the p th power of both sides of the above equation, to obtain, via the binomial theorem,
rpk−1(p−1)=(1+dpk−1)p=1+p(dpk−1)+(2p)p2(dpk−1)2+⋯+(dpk−1)p≡1+dpk(modpk+1)
Since p∤d, we can conclude that
rpk−1(p−1)≡1(modpk+1)
This completes the proof by induction.