Users' Mathboxes Mathbox for metakunt < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  isprimroot2 Structured version   Visualization version   GIF version

Theorem isprimroot2 42197
Description: Alternative way of creating primitive roots. (Contributed by metakunt, 14-Jul-2025.)
Hypotheses
Ref Expression
isprimroot2.1 (𝜑𝑅 ∈ CMnd)
isprimroot2.2 (𝜑𝐾 ∈ ℕ)
isprimroot2.3 (𝜑𝑀 ∈ (Base‘𝑅))
isprimroot2.4 (𝜑 → ((od‘𝑅)‘𝑀) = 𝐾)
Assertion
Ref Expression
isprimroot2 (𝜑𝑀 ∈ (𝑅 PrimRoots 𝐾))

Proof of Theorem isprimroot2
Dummy variable 𝑙 is distinct from all other variables.
StepHypRef Expression
1 isprimroot2.3 . . 3 (𝜑𝑀 ∈ (Base‘𝑅))
2 isprimroot2.4 . . . . . 6 (𝜑 → ((od‘𝑅)‘𝑀) = 𝐾)
32eqcomd 2739 . . . . 5 (𝜑𝐾 = ((od‘𝑅)‘𝑀))
43oveq1d 7370 . . . 4 (𝜑 → (𝐾(.g𝑅)𝑀) = (((od‘𝑅)‘𝑀)(.g𝑅)𝑀))
5 eqid 2733 . . . . . 6 (Base‘𝑅) = (Base‘𝑅)
6 eqid 2733 . . . . . 6 (od‘𝑅) = (od‘𝑅)
7 eqid 2733 . . . . . 6 (.g𝑅) = (.g𝑅)
8 eqid 2733 . . . . . 6 (0g𝑅) = (0g𝑅)
95, 6, 7, 8odid 19460 . . . . 5 (𝑀 ∈ (Base‘𝑅) → (((od‘𝑅)‘𝑀)(.g𝑅)𝑀) = (0g𝑅))
101, 9syl 17 . . . 4 (𝜑 → (((od‘𝑅)‘𝑀)(.g𝑅)𝑀) = (0g𝑅))
114, 10eqtrd 2768 . . 3 (𝜑 → (𝐾(.g𝑅)𝑀) = (0g𝑅))
122ad2antrr 726 . . . . . . 7 (((𝜑𝑙 ∈ ℕ0) ∧ (𝑙(.g𝑅)𝑀) = (0g𝑅)) → ((od‘𝑅)‘𝑀) = 𝐾)
1312eqcomd 2739 . . . . . 6 (((𝜑𝑙 ∈ ℕ0) ∧ (𝑙(.g𝑅)𝑀) = (0g𝑅)) → 𝐾 = ((od‘𝑅)‘𝑀))
14 isprimroot2.1 . . . . . . . . . . . 12 (𝜑𝑅 ∈ CMnd)
1514cmnmndd 19726 . . . . . . . . . . 11 (𝜑𝑅 ∈ Mnd)
1615adantr 480 . . . . . . . . . 10 ((𝜑𝑙 ∈ ℕ0) → 𝑅 ∈ Mnd)
171adantr 480 . . . . . . . . . 10 ((𝜑𝑙 ∈ ℕ0) → 𝑀 ∈ (Base‘𝑅))
18 simpr 484 . . . . . . . . . 10 ((𝜑𝑙 ∈ ℕ0) → 𝑙 ∈ ℕ0)
195, 6, 7, 8oddvdsnn0 19466 . . . . . . . . . 10 ((𝑅 ∈ Mnd ∧ 𝑀 ∈ (Base‘𝑅) ∧ 𝑙 ∈ ℕ0) → (((od‘𝑅)‘𝑀) ∥ 𝑙 ↔ (𝑙(.g𝑅)𝑀) = (0g𝑅)))
2016, 17, 18, 19syl3anc 1373 . . . . . . . . 9 ((𝜑𝑙 ∈ ℕ0) → (((od‘𝑅)‘𝑀) ∥ 𝑙 ↔ (𝑙(.g𝑅)𝑀) = (0g𝑅)))
2120bicomd 223 . . . . . . . 8 ((𝜑𝑙 ∈ ℕ0) → ((𝑙(.g𝑅)𝑀) = (0g𝑅) ↔ ((od‘𝑅)‘𝑀) ∥ 𝑙))
2221biimpd 229 . . . . . . 7 ((𝜑𝑙 ∈ ℕ0) → ((𝑙(.g𝑅)𝑀) = (0g𝑅) → ((od‘𝑅)‘𝑀) ∥ 𝑙))
2322imp 406 . . . . . 6 (((𝜑𝑙 ∈ ℕ0) ∧ (𝑙(.g𝑅)𝑀) = (0g𝑅)) → ((od‘𝑅)‘𝑀) ∥ 𝑙)
2413, 23eqbrtrd 5117 . . . . 5 (((𝜑𝑙 ∈ ℕ0) ∧ (𝑙(.g𝑅)𝑀) = (0g𝑅)) → 𝐾𝑙)
2524ex 412 . . . 4 ((𝜑𝑙 ∈ ℕ0) → ((𝑙(.g𝑅)𝑀) = (0g𝑅) → 𝐾𝑙))
2625ralrimiva 3126 . . 3 (𝜑 → ∀𝑙 ∈ ℕ0 ((𝑙(.g𝑅)𝑀) = (0g𝑅) → 𝐾𝑙))
271, 11, 263jca 1128 . 2 (𝜑 → (𝑀 ∈ (Base‘𝑅) ∧ (𝐾(.g𝑅)𝑀) = (0g𝑅) ∧ ∀𝑙 ∈ ℕ0 ((𝑙(.g𝑅)𝑀) = (0g𝑅) → 𝐾𝑙)))
28 isprimroot2.2 . . . 4 (𝜑𝐾 ∈ ℕ)
2928nnnn0d 12452 . . 3 (𝜑𝐾 ∈ ℕ0)
3014, 29, 7isprimroot 42196 . 2 (𝜑 → (𝑀 ∈ (𝑅 PrimRoots 𝐾) ↔ (𝑀 ∈ (Base‘𝑅) ∧ (𝐾(.g𝑅)𝑀) = (0g𝑅) ∧ ∀𝑙 ∈ ℕ0 ((𝑙(.g𝑅)𝑀) = (0g𝑅) → 𝐾𝑙))))
3127, 30mpbird 257 1 (𝜑𝑀 ∈ (𝑅 PrimRoots 𝐾))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1086   = wceq 1541  wcel 2113  wral 3049   class class class wbr 5095  cfv 6489  (class class class)co 7355  cn 12135  0cn0 12391  cdvds 16173  Basecbs 17130  0gc0g 17353  Mndcmnd 18652  .gcmg 18990  odcod 19446  CMndccmn 19702   PrimRoots cprimroots 42194
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1968  ax-7 2009  ax-8 2115  ax-9 2123  ax-10 2146  ax-11 2162  ax-12 2182  ax-ext 2705  ax-sep 5238  ax-nul 5248  ax-pow 5307  ax-pr 5374  ax-un 7677  ax-cnex 11072  ax-resscn 11073  ax-1cn 11074  ax-icn 11075  ax-addcl 11076  ax-addrcl 11077  ax-mulcl 11078  ax-mulrcl 11079  ax-mulcom 11080  ax-addass 11081  ax-mulass 11082  ax-distr 11083  ax-i2m1 11084  ax-1ne0 11085  ax-1rid 11086  ax-rnegex 11087  ax-rrecex 11088  ax-cnre 11089  ax-pre-lttri 11090  ax-pre-lttrn 11091  ax-pre-ltadd 11092  ax-pre-mulgt0 11093  ax-pre-sup 11094
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2537  df-eu 2566  df-clab 2712  df-cleq 2725  df-clel 2808  df-nfc 2883  df-ne 2931  df-nel 3035  df-ral 3050  df-rex 3059  df-rmo 3348  df-reu 3349  df-rab 3398  df-v 3440  df-sbc 3739  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4285  df-if 4477  df-pw 4553  df-sn 4578  df-pr 4580  df-op 4584  df-uni 4861  df-iun 4945  df-br 5096  df-opab 5158  df-mpt 5177  df-tr 5203  df-id 5516  df-eprel 5521  df-po 5529  df-so 5530  df-fr 5574  df-we 5576  df-xp 5627  df-rel 5628  df-cnv 5629  df-co 5630  df-dm 5631  df-rn 5632  df-res 5633  df-ima 5634  df-pred 6256  df-ord 6317  df-on 6318  df-lim 6319  df-suc 6320  df-iota 6445  df-fun 6491  df-fn 6492  df-f 6493  df-f1 6494  df-fo 6495  df-f1o 6496  df-fv 6497  df-riota 7312  df-ov 7358  df-oprab 7359  df-mpo 7360  df-om 7806  df-1st 7930  df-2nd 7931  df-frecs 8220  df-wrecs 8251  df-recs 8300  df-rdg 8338  df-er 8631  df-en 8879  df-dom 8880  df-sdom 8881  df-sup 9336  df-inf 9337  df-pnf 11158  df-mnf 11159  df-xr 11160  df-ltxr 11161  df-le 11162  df-sub 11356  df-neg 11357  df-div 11785  df-nn 12136  df-n0 12392  df-z 12479  df-uz 12743  df-rp 12901  df-fz 13418  df-fl 13706  df-mod 13784  df-seq 13919  df-dvds 16174  df-0g 17355  df-mgm 18558  df-sgrp 18637  df-mnd 18653  df-mulg 18991  df-od 19450  df-cmn 19704  df-primroots 42195
This theorem is referenced by:  unitscyglem5  42302
  Copyright terms: Public domain W3C validator