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 42902
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 2772 . . . . 5 (𝜑𝐾 = ((od‘𝑅)‘𝑀))
43oveq1d 7438 . . . 4 (𝜑 → (𝐾(.g𝑅)𝑀) = (((od‘𝑅)‘𝑀)(.g𝑅)𝑀))
5 eqid 2766 . . . . . 6 (Base‘𝑅) = (Base‘𝑅)
6 eqid 2766 . . . . . 6 (od‘𝑅) = (od‘𝑅)
7 eqid 2766 . . . . . 6 (.g𝑅) = (.g𝑅)
8 eqid 2766 . . . . . 6 (0g𝑅) = (0g𝑅)
95, 6, 7, 8odid 19639 . . . . 5 (𝑀 ∈ (Base‘𝑅) → (((od‘𝑅)‘𝑀)(.g𝑅)𝑀) = (0g𝑅))
101, 9syl 18 . . . 4 (𝜑 → (((od‘𝑅)‘𝑀)(.g𝑅)𝑀) = (0g𝑅))
114, 10eqtrd 2801 . . 3 (𝜑 → (𝐾(.g𝑅)𝑀) = (0g𝑅))
122ad2antrr 739 . . . . . . 7 (((𝜑𝑙 ∈ ℕ0) ∧ (𝑙(.g𝑅)𝑀) = (0g𝑅)) → ((od‘𝑅)‘𝑀) = 𝐾)
1312eqcomd 2772 . . . . . 6 (((𝜑𝑙 ∈ ℕ0) ∧ (𝑙(.g𝑅)𝑀) = (0g𝑅)) → 𝐾 = ((od‘𝑅)‘𝑀))
14 isprimroot2.1 . . . . . . . . . . . 12 (𝜑𝑅 ∈ CMnd)
1514cmnmndd 19905 . . . . . . . . . . 11 (𝜑𝑅 ∈ Mnd)
1615adantr 486 . . . . . . . . . 10 ((𝜑𝑙 ∈ ℕ0) → 𝑅 ∈ Mnd)
171adantr 486 . . . . . . . . . 10 ((𝜑𝑙 ∈ ℕ0) → 𝑀 ∈ (Base‘𝑅))
18 simpr 490 . . . . . . . . . 10 ((𝜑𝑙 ∈ ℕ0) → 𝑙 ∈ ℕ0)
195, 6, 7, 8oddvdsnn0 19645 . . . . . . . . . 10 ((𝑅 ∈ Mnd ∧ 𝑀 ∈ (Base‘𝑅) ∧ 𝑙 ∈ ℕ0) → (((od‘𝑅)‘𝑀) ∥ 𝑙 ↔ (𝑙(.g𝑅)𝑀) = (0g𝑅)))
2016, 17, 18, 19syl3anc 1398 . . . . . . . . 9 ((𝜑𝑙 ∈ ℕ0) → (((od‘𝑅)‘𝑀) ∥ 𝑙 ↔ (𝑙(.g𝑅)𝑀) = (0g𝑅)))
2120bicomd 226 . . . . . . . 8 ((𝜑𝑙 ∈ ℕ0) → ((𝑙(.g𝑅)𝑀) = (0g𝑅) ↔ ((od‘𝑅)‘𝑀) ∥ 𝑙))
2221biimpd 232 . . . . . . 7 ((𝜑𝑙 ∈ ℕ0) → ((𝑙(.g𝑅)𝑀) = (0g𝑅) → ((od‘𝑅)‘𝑀) ∥ 𝑙))
2322imp 412 . . . . . 6 (((𝜑𝑙 ∈ ℕ0) ∧ (𝑙(.g𝑅)𝑀) = (0g𝑅)) → ((od‘𝑅)‘𝑀) ∥ 𝑙)
2413, 23eqbrtrd 5138 . . . . 5 (((𝜑𝑙 ∈ ℕ0) ∧ (𝑙(.g𝑅)𝑀) = (0g𝑅)) → 𝐾𝑙)
2524ex 418 . . . 4 ((𝜑𝑙 ∈ ℕ0) → ((𝑙(.g𝑅)𝑀) = (0g𝑅) → 𝐾𝑙))
2625ralrimiva 3160 . . 3 (𝜑 → ∀𝑙 ∈ ℕ0 ((𝑙(.g𝑅)𝑀) = (0g𝑅) → 𝐾𝑙))
271, 11, 263jca 1146 . 2 (𝜑 → (𝑀 ∈ (Base‘𝑅) ∧ (𝐾(.g𝑅)𝑀) = (0g𝑅) ∧ ∀𝑙 ∈ ℕ0 ((𝑙(.g𝑅)𝑀) = (0g𝑅) → 𝐾𝑙)))
28 isprimroot2.2 . . . 4 (𝜑𝐾 ∈ ℕ)
2928nnnn0d 12583 . . 3 (𝜑𝐾 ∈ ℕ0)
3014, 29, 7isprimroot 42901 . 2 (𝜑 → (𝑀 ∈ (𝑅 PrimRoots 𝐾) ↔ (𝑀 ∈ (Base‘𝑅) ∧ (𝐾(.g𝑅)𝑀) = (0g𝑅) ∧ ∀𝑙 ∈ ℕ0 ((𝑙(.g𝑅)𝑀) = (0g𝑅) → 𝐾𝑙))))
3127, 30mpbird 260 1 (𝜑𝑀 ∈ (𝑅 PrimRoots 𝐾))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401  w3a 1103   = wceq 1570  wcel 2146  wral 3082   class class class wbr 5114  cfv 6543  (class class class)co 7423  cn 12251  0cn0 12522  cdvds 16335  Basecbs 17294  0gc0g 17517  Mndcmnd 18821  .gcmg 19164  odcod 19625  CMndccmn 19881   PrimRoots cprimroots 42899
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2738  ax-sep 5262  ax-nul 5274  ax-pow 5341  ax-pr 5409  ax-un 7745  ax-cnex 11174  ax-resscn 11175  ax-1cn 11176  ax-icn 11177  ax-addcl 11178  ax-addrcl 11179  ax-mulcl 11180  ax-mulrcl 11181  ax-mulcom 11182  ax-addass 11183  ax-mulass 11184  ax-distr 11185  ax-i2m1 11186  ax-1ne0 11187  ax-1rid 11188  ax-rnegex 11189  ax-rrecex 11190  ax-cnre 11191  ax-pre-lttri 11192  ax-pre-lttrn 11193  ax-pre-ltadd 11194  ax-pre-mulgt0 11195  ax-pre-sup 11196
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2570  df-eu 2600  df-clab 2745  df-cleq 2758  df-clel 2841  df-nfc 2915  df-ne 2962  df-nel 3068  df-ral 3083  df-rex 3093  df-rmo 3372  df-reu 3373  df-rab 3420  df-v 3460  df-sbc 3748  df-csb 3857  df-dif 3911  df-un 3913  df-in 3915  df-ss 3925  df-pss 3928  df-nul 4290  df-if 4493  df-pw 4569  df-sn 4595  df-pr 4597  df-op 4601  df-uni 4878  df-iun 4963  df-br 5115  df-opab 5179  df-mpt 5198  df-tr 5224  df-id 5561  df-eprel 5566  df-po 5574  df-so 5575  df-fr 5619  df-we 5621  df-xp 5672  df-rel 5673  df-cnv 5674  df-co 5675  df-dm 5676  df-rn 5677  df-res 5678  df-ima 5679  df-pred 6309  df-ord 6370  df-on 6371  df-lim 6372  df-suc 6373  df-iota 6499  df-fun 6545  df-fn 6546  df-f 6547  df-f1 6548  df-fo 6549  df-f1o 6550  df-fv 6551  df-riota 7380  df-ov 7426  df-oprab 7427  df-mpo 7428  df-om 7872  df-1st 7995  df-2nd 7996  df-frecs 8287  df-wrecs 8318  df-recs 8367  df-rdg 8406  df-er 8703  df-en 8953  df-dom 8954  df-sdom 8955  df-sup 9412  df-inf 9413  df-pnf 11263  df-mnf 11264  df-xr 11265  df-ltxr 11266  df-le 11267  df-sub 11461  df-neg 11462  df-div 11890  df-nn 12252  df-n0 12523  df-z 12610  df-uz 12881  df-rp 13035  df-fz 13554  df-fl 13845  df-mod 13923  df-seq 14058  df-dvds 16336  df-0g 17519  df-mgm 18723  df-sgrp 18806  df-mnd 18822  df-mulg 19165  df-od 19629  df-cmn 19883  df-primroots 42900
This theorem is used by:  unitscyglem5  43007
  Copyright terms: Public domain W3C validator