Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  znval Structured version   Visualization version   GIF version

Theorem znval 20231
 Description: The value of the ℤ/nℤ structure. It is defined as the quotient ring ℤ / 𝑛ℤ, with an "artificial" ordering added to make it a Toset. (In other words, ℤ/nℤ is a ring with an order , but it is not an ordered ring , which as a term implies that the order is compatible with the ring operations in some way.) (Contributed by Mario Carneiro, 14-Jun-2015.) (Revised by Mario Carneiro, 2-May-2016.) (Revised by AV, 13-Jun-2019.)
Hypotheses
Ref Expression
znval.s 𝑆 = (RSpan‘ℤring)
znval.u 𝑈 = (ℤring /s (ℤring ~QG (𝑆‘{𝑁})))
znval.y 𝑌 = (ℤ/nℤ‘𝑁)
znval.f 𝐹 = ((ℤRHom‘𝑈) ↾ 𝑊)
znval.w 𝑊 = if(𝑁 = 0, ℤ, (0..^𝑁))
znval.l = ((𝐹 ∘ ≤ ) ∘ 𝐹)
Assertion
Ref Expression
znval (𝑁 ∈ ℕ0𝑌 = (𝑈 sSet ⟨(le‘ndx), ⟩))

Proof of Theorem znval
Dummy variables 𝑓 𝑛 𝑠 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 znval.y . 2 𝑌 = (ℤ/nℤ‘𝑁)
2 zringring 20170 . . . . 5 ring ∈ Ring
32a1i 11 . . . 4 (𝑛 = 𝑁 → ℤring ∈ Ring)
4 ovexd 7174 . . . . 5 ((𝑛 = 𝑁𝑧 = ℤring) → (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛}))) ∈ V)
5 id 22 . . . . . . 7 (𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛}))) → 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛}))))
6 simpr 488 . . . . . . . . 9 ((𝑛 = 𝑁𝑧 = ℤring) → 𝑧 = ℤring)
76fveq2d 6653 . . . . . . . . . . . 12 ((𝑛 = 𝑁𝑧 = ℤring) → (RSpan‘𝑧) = (RSpan‘ℤring))
8 znval.s . . . . . . . . . . . 12 𝑆 = (RSpan‘ℤring)
97, 8eqtr4di 2854 . . . . . . . . . . 11 ((𝑛 = 𝑁𝑧 = ℤring) → (RSpan‘𝑧) = 𝑆)
10 simpl 486 . . . . . . . . . . . 12 ((𝑛 = 𝑁𝑧 = ℤring) → 𝑛 = 𝑁)
1110sneqd 4540 . . . . . . . . . . 11 ((𝑛 = 𝑁𝑧 = ℤring) → {𝑛} = {𝑁})
129, 11fveq12d 6656 . . . . . . . . . 10 ((𝑛 = 𝑁𝑧 = ℤring) → ((RSpan‘𝑧)‘{𝑛}) = (𝑆‘{𝑁}))
136, 12oveq12d 7157 . . . . . . . . 9 ((𝑛 = 𝑁𝑧 = ℤring) → (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})) = (ℤring ~QG (𝑆‘{𝑁})))
146, 13oveq12d 7157 . . . . . . . 8 ((𝑛 = 𝑁𝑧 = ℤring) → (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛}))) = (ℤring /s (ℤring ~QG (𝑆‘{𝑁}))))
15 znval.u . . . . . . . 8 𝑈 = (ℤring /s (ℤring ~QG (𝑆‘{𝑁})))
1614, 15eqtr4di 2854 . . . . . . 7 ((𝑛 = 𝑁𝑧 = ℤring) → (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛}))) = 𝑈)
175, 16sylan9eqr 2858 . . . . . 6 (((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) → 𝑠 = 𝑈)
18 fvex 6662 . . . . . . . . . 10 (ℤRHom‘𝑠) ∈ V
1918resex 5870 . . . . . . . . 9 ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛))) ∈ V
2019a1i 11 . . . . . . . 8 (((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) → ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛))) ∈ V)
21 id 22 . . . . . . . . . . . 12 (𝑓 = ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛))) → 𝑓 = ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛))))
2217fveq2d 6653 . . . . . . . . . . . . . 14 (((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) → (ℤRHom‘𝑠) = (ℤRHom‘𝑈))
23 simpll 766 . . . . . . . . . . . . . . . . 17 (((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) → 𝑛 = 𝑁)
2423eqeq1d 2803 . . . . . . . . . . . . . . . 16 (((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) → (𝑛 = 0 ↔ 𝑁 = 0))
2523oveq2d 7155 . . . . . . . . . . . . . . . 16 (((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) → (0..^𝑛) = (0..^𝑁))
2624, 25ifbieq2d 4453 . . . . . . . . . . . . . . 15 (((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) → if(𝑛 = 0, ℤ, (0..^𝑛)) = if(𝑁 = 0, ℤ, (0..^𝑁)))
27 znval.w . . . . . . . . . . . . . . 15 𝑊 = if(𝑁 = 0, ℤ, (0..^𝑁))
2826, 27eqtr4di 2854 . . . . . . . . . . . . . 14 (((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) → if(𝑛 = 0, ℤ, (0..^𝑛)) = 𝑊)
2922, 28reseq12d 5823 . . . . . . . . . . . . 13 (((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) → ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛))) = ((ℤRHom‘𝑈) ↾ 𝑊))
30 znval.f . . . . . . . . . . . . 13 𝐹 = ((ℤRHom‘𝑈) ↾ 𝑊)
3129, 30eqtr4di 2854 . . . . . . . . . . . 12 (((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) → ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛))) = 𝐹)
3221, 31sylan9eqr 2858 . . . . . . . . . . 11 ((((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) ∧ 𝑓 = ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛)))) → 𝑓 = 𝐹)
3332coeq1d 5700 . . . . . . . . . 10 ((((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) ∧ 𝑓 = ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛)))) → (𝑓 ∘ ≤ ) = (𝐹 ∘ ≤ ))
3432cnveqd 5714 . . . . . . . . . 10 ((((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) ∧ 𝑓 = ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛)))) → 𝑓 = 𝐹)
3533, 34coeq12d 5703 . . . . . . . . 9 ((((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) ∧ 𝑓 = ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛)))) → ((𝑓 ∘ ≤ ) ∘ 𝑓) = ((𝐹 ∘ ≤ ) ∘ 𝐹))
36 znval.l . . . . . . . . 9 = ((𝐹 ∘ ≤ ) ∘ 𝐹)
3735, 36eqtr4di 2854 . . . . . . . 8 ((((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) ∧ 𝑓 = ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛)))) → ((𝑓 ∘ ≤ ) ∘ 𝑓) = )
3820, 37csbied 3867 . . . . . . 7 (((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) → ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛))) / 𝑓((𝑓 ∘ ≤ ) ∘ 𝑓) = )
3938opeq2d 4775 . . . . . 6 (((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) → ⟨(le‘ndx), ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛))) / 𝑓((𝑓 ∘ ≤ ) ∘ 𝑓)⟩ = ⟨(le‘ndx), ⟩)
4017, 39oveq12d 7157 . . . . 5 (((𝑛 = 𝑁𝑧 = ℤring) ∧ 𝑠 = (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛})))) → (𝑠 sSet ⟨(le‘ndx), ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛))) / 𝑓((𝑓 ∘ ≤ ) ∘ 𝑓)⟩) = (𝑈 sSet ⟨(le‘ndx), ⟩))
414, 40csbied 3867 . . . 4 ((𝑛 = 𝑁𝑧 = ℤring) → (𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛}))) / 𝑠(𝑠 sSet ⟨(le‘ndx), ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛))) / 𝑓((𝑓 ∘ ≤ ) ∘ 𝑓)⟩) = (𝑈 sSet ⟨(le‘ndx), ⟩))
423, 41csbied 3867 . . 3 (𝑛 = 𝑁ring / 𝑧(𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛}))) / 𝑠(𝑠 sSet ⟨(le‘ndx), ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛))) / 𝑓((𝑓 ∘ ≤ ) ∘ 𝑓)⟩) = (𝑈 sSet ⟨(le‘ndx), ⟩))
43 df-zn 20204 . . 3 ℤ/nℤ = (𝑛 ∈ ℕ0ring / 𝑧(𝑧 /s (𝑧 ~QG ((RSpan‘𝑧)‘{𝑛}))) / 𝑠(𝑠 sSet ⟨(le‘ndx), ((ℤRHom‘𝑠) ↾ if(𝑛 = 0, ℤ, (0..^𝑛))) / 𝑓((𝑓 ∘ ≤ ) ∘ 𝑓)⟩))
44 ovex 7172 . . 3 (𝑈 sSet ⟨(le‘ndx), ⟩) ∈ V
4542, 43, 44fvmpt 6749 . 2 (𝑁 ∈ ℕ0 → (ℤ/nℤ‘𝑁) = (𝑈 sSet ⟨(le‘ndx), ⟩))
461, 45syl5eq 2848 1 (𝑁 ∈ ℕ0𝑌 = (𝑈 sSet ⟨(le‘ndx), ⟩))
 Colors of variables: wff setvar class Syntax hints:   → wi 4   ∧ wa 399   = wceq 1538   ∈ wcel 2112  Vcvv 3444  ⦋csb 3831  ifcif 4428  {csn 4528  ⟨cop 4534  ◡ccnv 5522   ↾ cres 5525   ∘ ccom 5527  ‘cfv 6328  (class class class)co 7139  0cc0 10530   ≤ cle 10669  ℕ0cn0 11889  ℤcz 11973  ..^cfzo 13032  ndxcnx 16476   sSet csts 16477  lecple 16568   /s cqus 16774   ~QG cqg 18271  Ringcrg 19294  RSpancrsp 19940  ℤringzring 20167  ℤRHomczrh 20197  ℤ/nℤczn 20200 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2114  ax-9 2122  ax-10 2143  ax-11 2159  ax-12 2176  ax-ext 2773  ax-sep 5170  ax-nul 5177  ax-pow 5234  ax-pr 5298  ax-un 7445  ax-cnex 10586  ax-resscn 10587  ax-1cn 10588  ax-icn 10589  ax-addcl 10590  ax-addrcl 10591  ax-mulcl 10592  ax-mulrcl 10593  ax-mulcom 10594  ax-addass 10595  ax-mulass 10596  ax-distr 10597  ax-i2m1 10598  ax-1ne0 10599  ax-1rid 10600  ax-rnegex 10601  ax-rrecex 10602  ax-cnre 10603  ax-pre-lttri 10604  ax-pre-lttrn 10605  ax-pre-ltadd 10606  ax-pre-mulgt0 10607  ax-addf 10609  ax-mulf 10610 This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2601  df-eu 2632  df-clab 2780  df-cleq 2794  df-clel 2873  df-nfc 2941  df-ne 2991  df-nel 3095  df-ral 3114  df-rex 3115  df-reu 3116  df-rmo 3117  df-rab 3118  df-v 3446  df-sbc 3724  df-csb 3832  df-dif 3887  df-un 3889  df-in 3891  df-ss 3901  df-pss 3903  df-nul 4247  df-if 4429  df-pw 4502  df-sn 4529  df-pr 4531  df-tp 4533  df-op 4535  df-uni 4804  df-int 4842  df-iun 4886  df-br 5034  df-opab 5096  df-mpt 5114  df-tr 5140  df-id 5428  df-eprel 5433  df-po 5442  df-so 5443  df-fr 5482  df-we 5484  df-xp 5529  df-rel 5530  df-cnv 5531  df-co 5532  df-dm 5533  df-rn 5534  df-res 5535  df-ima 5536  df-pred 6120  df-ord 6166  df-on 6167  df-lim 6168  df-suc 6169  df-iota 6287  df-fun 6330  df-fn 6331  df-f 6332  df-f1 6333  df-fo 6334  df-f1o 6335  df-fv 6336  df-riota 7097  df-ov 7142  df-oprab 7143  df-mpo 7144  df-om 7565  df-1st 7675  df-2nd 7676  df-wrecs 7934  df-recs 7995  df-rdg 8033  df-1o 8089  df-oadd 8093  df-er 8276  df-en 8497  df-dom 8498  df-sdom 8499  df-fin 8500  df-pnf 10670  df-mnf 10671  df-xr 10672  df-ltxr 10673  df-le 10674  df-sub 10865  df-neg 10866  df-nn 11630  df-2 11692  df-3 11693  df-4 11694  df-5 11695  df-6 11696  df-7 11697  df-8 11698  df-9 11699  df-n0 11890  df-z 11974  df-dec 12091  df-uz 12236  df-fz 12890  df-struct 16481  df-ndx 16482  df-slot 16483  df-base 16485  df-sets 16486  df-ress 16487  df-plusg 16574  df-mulr 16575  df-starv 16576  df-tset 16580  df-ple 16581  df-ds 16583  df-unif 16584  df-0g 16711  df-mgm 17848  df-sgrp 17897  df-mnd 17908  df-grp 18102  df-minusg 18103  df-subg 18272  df-cmn 18904  df-mgp 19237  df-ur 19249  df-ring 19296  df-cring 19297  df-subrg 19530  df-cnfld 20096  df-zring 20168  df-zn 20204 This theorem is referenced by:  znle  20232  znval2  20233
 Copyright terms: Public domain W3C validator
{"found_math": false, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 0, "mathjax_display_tex": 0, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0, "katex": 0, "math-container": 0, "wp-katex-eq": 0, "align": 0, "equation": 0, "x-ck12": 0, "texerror": 0}