DETERMINING PRIMITIVE ROOTS by Christoph and John C. Witzgall September 15, 2015
Divisors/Multipliers Integers will be capitalized. For A, B > 0, gcd(A, B) = greatest common divisor: W | A and W|B => W|gcd (A, B) lcm(A, B) = least common multiple A|W and B|W => lcm(A, B)|W (1) A, B are relatively prime gcd(A, B)=1 gcd(A, B) × lcm(A, B) = A×B
REDUCTION MODULO P>0 For P > 0, any integer X may be represented as X = S×P + r, 0 ≤ r < P, with r the remainder of X modulo P and S the value of integer (“long”) division of X by P. We say that X is reduced to r modulo P.
ARITHMETIC MODULO P>0 The reduction process is used to define the arithmetic modulo P. For remainders a, b between 0 and P-1, the operations a + b, a - b, a×b are evaluated using their integer face value, if necessary, reducing the results modulo P.
THE GROUP G P For P a prime, the remainders, 1, 2, 3, …, P–1 under multiplication modulo P form the group, G P our subject of interest.
CYCLES MODULO 7 1
1 2
CYCLES MODULO
CYCLES MODULO
CYCLES MODULO
CYCLES MODULO
CYCLES MODULO
CYCLES MODULO
CYCLES MODULO
CYCLES MODULO 7 (1 2 4) 1
CYCLES MODULO 7 (1 2 4) 1 3
CYCLES MODULO 7 (1 2 4)
CYCLES MODULO 7 (1 2 4) 1 3 2
CYCLES MODULO 7 (1 2 4)
CYCLES MODULO 7 (1 2 4)
CYCLES MODULO 7 (1 2 4)
CYCLES MODULO 7 (1 2 4)
CYCLES MODULO 7 (1 2 4)
CYCLES MODULO 7 (1 2 4)
CYCLES MODULO 7 (1 2 4)
CYCLES MODULO 7 C(2) = (1 2 4) C(3) = ( )3 = primitive root C(4) = (1 4 2) C(5) = ( ) 5 = primitive root C(6) = (1 6)
GROUPS Groups considered here are finite and abelian. The notation |G| = “order of G” Means “number of elements.” Fundamentally, (2) N = |G| => a N = 1 for a Є G H ⊆ G => |H| divides |G|
CYCLES The cycle C(a) = (1, a, a 2, …, a N-1 ), a N = 1, encapsulates the period of a sequence of consecu- tive powers of an element a Є G. (3) N = |C(a)|, a R = 1 => N|R The entries in C(a) form a group. Such groups, generated by a single element are called cyclic.
SUBCYCLES Suppose N = ǀC(a)ǀ, KǀN, M = N/K. Then C(a K ) = (1 a K a 2K … ) is a subcycle of C(a). Its length is given by (4) Proposition: |C(a K )| = N/K = M Proof: a KM = a N = 1. If a KJ = 1 for 0 < J ≤ M then N|KJ. Thus M|J, so that J = M.
SPREADS Subgroups H 1, H 2 ⊂ G together generate what we call their spread H 1 ᴗ H 2 Spread H 1 H 2 Inter section
ORDERS OF SPREADS
COROLLARY
PRIMITIVE ROOTS (6) Primitive Root Theorem: G p is cyclic This means that G p may be generated by a single one of its elements. Each such generator is a primitive root of P. We propose: A constructive proof based on prime factorization of P-1 An algorithm for computing primitive roots.
APPROACH In what follows, we aim to prove the (7) Theorem: The spread of two cycles C(a) and C(b) in G P is cyclic by characterizing a generator x Є G P : __ C(a) ∪ C(b) = C(x) Successively collapsing pairs of cycles into single ones then yields a primitive root.
RELATIVELY PRIME CYCLES We call cycles C(a), C(b) in group G relatively prime if ǀC(a)ǀ, ǀC(b)ǀ are relatively prime. (8) Theorem: The spread of relatively prime cycles C(a) and C(b) is cyclic: C(a) ∪ C(b) = C(a×b). (Proof after the next slide.)
CONVENTION For what follows in this presentation, we are using the notation A = | C(a)|, B = | C(b)| for the orders of cycles C(a) and C(b).
PROOF OF THEOREM (8) By (5) and (1), |C(a) ∪ C(b)| = A ×B = lcm (A, B). For M > 0: (a×b) M = 1 a M = (b M ) -1 Є C(a) ∩ C(b) a M = b M = 1 A|M and B|M by (3) In other words, the exponent M = lcm(A, B) = A×B is the smallest positive exponent with (a×b) M = 1. Thus C(a) ∪ C(b) = C (a×b).
CYCLES MODULO 11 C(2) = ( ) C(3) = ( ) C(4) = ( ) C(5) = ( ) C(6) = ( ) C(7) = ( ) C(8) = ( ) C(9) = ( ) C(10) = ( 1 10) Cycles of equal lengths have the same elements.
LAGRANGE
CONSEQUENCES Recall A = |C(a)|, B = |C(b)|. In G P the statements: i. A|B C(a) ⊆ C(b) (10) ii. |C(a) ∩ C(b)| = gcd (A, B) iii. |C(a) ∪ C(b)| = lcm (A, B) are consequences of Lagrange (9).
SEPARATION We call U|A and V|B separators of A and B if (11) ( i) lcm(A/U, B/V) = lcm(A, B) ( ii) gcd(A/U, B/V) = 1 (12) Theorem: If U and V separate A and B, C(a) ∪ C(b) = C(a U × b V ).
Proof of Theorem 12 Proof: By (4), |C(a U )|=A/U, |C(b V )|=B/V. Thus by (10) |C(a) ∪ C(b)| = lcm(A,B) |C(a U ) ∪ C(b V )| = lcm(A/U, B/V) Yielding by (11.i), C(a) ∪ C(b) = C(a U ) ∪ C(b V ). As C(a U ) ⊆ C(a), C(b V ) ⊆ C(b), we have C(a) ∪ C(b) = C(a U ) ∪ C(b V ) By (11.i), C(a) and C(b) are relatively prime. By (8) C(a U ) ∪ C(b V ) = C(a U × b V ).
SEPARATOR PRODUCT
FACTORIZATION A = 120 B = 1260 The prime factors involved in both are 2, 3, 5, 7 Prime factorizations of A and B: A = 120 = 8 × 3 × 5 × 1 B = 1260 = 4 × 9 × 5 × 7 lcm(A, B) = 8 × 9 × 5 × 7 gcd(A, B) = 4 × 3 × 5 × 1
THE GIST A= 120 = 8 × 3 × 5 × 1 8 × 1 × 5 × 1 = 40 =A/U B=1260 = 4 × 9 × 5 × 7 1 × 9 × 1 × 7 = 63 =B/V U = 3 × 1 = 3, V = 4 × 5 = 20 Reducing the factors of lower multiplicity to 0 leaves lcm(A, B) unchanged, while reducing A by U and B by V, effecting separation.
Stepwise Separation
CUMULATIVE MULTIPLICATION
PARTIAL SEPARATOR (15) Theorem: With C = gcd(A, B), W = gcd(A/C, C) > 1 is a partial separator of A, B. Proof: In view of (14), it suffices to show that any prime divisor Q|W is a partial separator of A, B. The multiplicity, mult(Q|A), of Q in A exceeds mult(Q|C). Then gcd(Q, B/C) ≤ gcd(A/C, B/C) = 1, Implies gcd(Q, B/C) = 1 so that mult(Q|B) = mult(Q|C) < mult (Q|A). Thus gcd(A, B/Q) = gcd(A, B)/Q.
TERMINATION
EXAMPLE We revisit the 1.A = 120, B = 1260 C = gcd(A, B) = 60, A/C = 2 W = gcd(A/C, C) = gcd(2,60) = 2 2.A = 120, B = (B/2) = 630 C = gcd(A, B) = 30, A/C = 4 W = gcd(A/C, C) = gcd(4,30) = 2 3.A = 120, B = (B/2) = 315 C = gcd(A, B) = 15, A/C = 8 W = gcd(A/C, C) = gcd(8, 315) = 1 4. U = C = 15, V = 2 × 2 = 4
SEPARATION ALGORITHM Given: integer A, B > 0; Wanted: separators U,V. Step 1: 1 → V, gcd(A, B) → C Step 2: If C = 1 → step 7 Step 3: A/C → X Step 4: gcd (X, C) → W Step 5: If W = 1 → step 7 Step 6: V×W → V, C/W → C, X×W → X, → step 4 Step 7: C → U, → terminate
NUMBERS 1228 primes ≤ 10,000 primitive roots calculated 24% separation required 470 instances of primitive root = 2
Copies of this Power Point are available at the following link Witzgall.html Witzgall.html