| Step | Hyp | Ref | Expression | 
						
							| 1 |  | odhash.x | ⊢ 𝑋  =  ( Base ‘ 𝐺 ) | 
						
							| 2 |  | odhash.o | ⊢ 𝑂  =  ( od ‘ 𝐺 ) | 
						
							| 3 |  | odhash.k | ⊢ 𝐾  =  ( mrCls ‘ ( SubGrp ‘ 𝐺 ) ) | 
						
							| 4 |  | eqid | ⊢ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) )  =  ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) ) | 
						
							| 5 | 4 | mptpreima | ⊢ ( ◡ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) )  “  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } )  =  { 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ∣  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 )  ∈  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } } | 
						
							| 6 | 5 | fveq2i | ⊢ ( ♯ ‘ ( ◡ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) )  “  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } ) )  =  ( ♯ ‘ { 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ∣  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 )  ∈  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } } ) | 
						
							| 7 |  | eqid | ⊢ ( .g ‘ 𝐺 )  =  ( .g ‘ 𝐺 ) | 
						
							| 8 | 1 7 2 3 | odf1o2 | ⊢ ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  →  ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) ) : ( 0 ..^ ( 𝑂 ‘ 𝐴 ) ) –1-1-onto→ ( 𝐾 ‘ { 𝐴 } ) ) | 
						
							| 9 |  | f1ocnv | ⊢ ( ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) ) : ( 0 ..^ ( 𝑂 ‘ 𝐴 ) ) –1-1-onto→ ( 𝐾 ‘ { 𝐴 } )  →  ◡ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) ) : ( 𝐾 ‘ { 𝐴 } ) –1-1-onto→ ( 0 ..^ ( 𝑂 ‘ 𝐴 ) ) ) | 
						
							| 10 |  | f1of1 | ⊢ ( ◡ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) ) : ( 𝐾 ‘ { 𝐴 } ) –1-1-onto→ ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  →  ◡ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) ) : ( 𝐾 ‘ { 𝐴 } ) –1-1→ ( 0 ..^ ( 𝑂 ‘ 𝐴 ) ) ) | 
						
							| 11 | 8 9 10 | 3syl | ⊢ ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  →  ◡ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) ) : ( 𝐾 ‘ { 𝐴 } ) –1-1→ ( 0 ..^ ( 𝑂 ‘ 𝐴 ) ) ) | 
						
							| 12 |  | ssrab2 | ⊢ { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) }  ⊆  ( 𝐾 ‘ { 𝐴 } ) | 
						
							| 13 |  | fvex | ⊢ ( 𝐾 ‘ { 𝐴 } )  ∈  V | 
						
							| 14 | 13 | rabex | ⊢ { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) }  ∈  V | 
						
							| 15 | 14 | f1imaen | ⊢ ( ( ◡ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) ) : ( 𝐾 ‘ { 𝐴 } ) –1-1→ ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ∧  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) }  ⊆  ( 𝐾 ‘ { 𝐴 } ) )  →  ( ◡ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) )  “  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } )  ≈  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } ) | 
						
							| 16 |  | hasheni | ⊢ ( ( ◡ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) )  “  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } )  ≈  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) }  →  ( ♯ ‘ ( ◡ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) )  “  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } ) )  =  ( ♯ ‘ { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } ) ) | 
						
							| 17 | 15 16 | syl | ⊢ ( ( ◡ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) ) : ( 𝐾 ‘ { 𝐴 } ) –1-1→ ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ∧  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) }  ⊆  ( 𝐾 ‘ { 𝐴 } ) )  →  ( ♯ ‘ ( ◡ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) )  “  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } ) )  =  ( ♯ ‘ { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } ) ) | 
						
							| 18 | 11 12 17 | sylancl | ⊢ ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  →  ( ♯ ‘ ( ◡ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ↦  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) )  “  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } ) )  =  ( ♯ ‘ { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } ) ) | 
						
							| 19 |  | simpl1 | ⊢ ( ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  ∧  𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) ) )  →  𝐺  ∈  Grp ) | 
						
							| 20 |  | simpl2 | ⊢ ( ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  ∧  𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) ) )  →  𝐴  ∈  𝑋 ) | 
						
							| 21 |  | elfzoelz | ⊢ ( 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  →  𝑦  ∈  ℤ ) | 
						
							| 22 | 21 | adantl | ⊢ ( ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  ∧  𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) ) )  →  𝑦  ∈  ℤ ) | 
						
							| 23 | 1 7 3 | cycsubg2cl | ⊢ ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  𝑦  ∈  ℤ )  →  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 )  ∈  ( 𝐾 ‘ { 𝐴 } ) ) | 
						
							| 24 | 19 20 22 23 | syl3anc | ⊢ ( ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  ∧  𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) ) )  →  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 )  ∈  ( 𝐾 ‘ { 𝐴 } ) ) | 
						
							| 25 |  | fveqeq2 | ⊢ ( 𝑥  =  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 )  →  ( ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 )  ↔  ( 𝑂 ‘ ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) )  =  ( 𝑂 ‘ 𝐴 ) ) ) | 
						
							| 26 | 25 | elrab3 | ⊢ ( ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 )  ∈  ( 𝐾 ‘ { 𝐴 } )  →  ( ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 )  ∈  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) }  ↔  ( 𝑂 ‘ ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) )  =  ( 𝑂 ‘ 𝐴 ) ) ) | 
						
							| 27 | 24 26 | syl | ⊢ ( ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  ∧  𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) ) )  →  ( ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 )  ∈  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) }  ↔  ( 𝑂 ‘ ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) )  =  ( 𝑂 ‘ 𝐴 ) ) ) | 
						
							| 28 |  | simpl3 | ⊢ ( ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  ∧  𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) ) )  →  ( 𝑂 ‘ 𝐴 )  ∈  ℕ ) | 
						
							| 29 | 1 2 7 | odmulgeq | ⊢ ( ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  𝑦  ∈  ℤ )  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  →  ( ( 𝑂 ‘ ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) )  =  ( 𝑂 ‘ 𝐴 )  ↔  ( 𝑦  gcd  ( 𝑂 ‘ 𝐴 ) )  =  1 ) ) | 
						
							| 30 | 19 20 22 28 29 | syl31anc | ⊢ ( ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  ∧  𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) ) )  →  ( ( 𝑂 ‘ ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 ) )  =  ( 𝑂 ‘ 𝐴 )  ↔  ( 𝑦  gcd  ( 𝑂 ‘ 𝐴 ) )  =  1 ) ) | 
						
							| 31 | 27 30 | bitrd | ⊢ ( ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  ∧  𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) ) )  →  ( ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 )  ∈  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) }  ↔  ( 𝑦  gcd  ( 𝑂 ‘ 𝐴 ) )  =  1 ) ) | 
						
							| 32 | 31 | rabbidva | ⊢ ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  →  { 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ∣  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 )  ∈  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } }  =  { 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ∣  ( 𝑦  gcd  ( 𝑂 ‘ 𝐴 ) )  =  1 } ) | 
						
							| 33 | 32 | fveq2d | ⊢ ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  →  ( ♯ ‘ { 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ∣  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 )  ∈  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } } )  =  ( ♯ ‘ { 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ∣  ( 𝑦  gcd  ( 𝑂 ‘ 𝐴 ) )  =  1 } ) ) | 
						
							| 34 |  | dfphi2 | ⊢ ( ( 𝑂 ‘ 𝐴 )  ∈  ℕ  →  ( ϕ ‘ ( 𝑂 ‘ 𝐴 ) )  =  ( ♯ ‘ { 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ∣  ( 𝑦  gcd  ( 𝑂 ‘ 𝐴 ) )  =  1 } ) ) | 
						
							| 35 | 34 | 3ad2ant3 | ⊢ ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  →  ( ϕ ‘ ( 𝑂 ‘ 𝐴 ) )  =  ( ♯ ‘ { 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ∣  ( 𝑦  gcd  ( 𝑂 ‘ 𝐴 ) )  =  1 } ) ) | 
						
							| 36 | 33 35 | eqtr4d | ⊢ ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  →  ( ♯ ‘ { 𝑦  ∈  ( 0 ..^ ( 𝑂 ‘ 𝐴 ) )  ∣  ( 𝑦 ( .g ‘ 𝐺 ) 𝐴 )  ∈  { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } } )  =  ( ϕ ‘ ( 𝑂 ‘ 𝐴 ) ) ) | 
						
							| 37 | 6 18 36 | 3eqtr3a | ⊢ ( ( 𝐺  ∈  Grp  ∧  𝐴  ∈  𝑋  ∧  ( 𝑂 ‘ 𝐴 )  ∈  ℕ )  →  ( ♯ ‘ { 𝑥  ∈  ( 𝐾 ‘ { 𝐴 } )  ∣  ( 𝑂 ‘ 𝑥 )  =  ( 𝑂 ‘ 𝐴 ) } )  =  ( ϕ ‘ ( 𝑂 ‘ 𝐴 ) ) ) |