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

Theorem marrepfval 21617
Description: First substitution for the definition of the matrix row replacement function. (Contributed by AV, 12-Feb-2019.) (Proof shortened by AV, 2-Mar-2024.)
Hypotheses
Ref Expression
marrepfval.a 𝐴 = (𝑁 Mat 𝑅)
marrepfval.b 𝐵 = (Base‘𝐴)
marrepfval.q 𝑄 = (𝑁 matRRep 𝑅)
marrepfval.z 0 = (0g𝑅)
Assertion
Ref Expression
marrepfval 𝑄 = (𝑚𝐵, 𝑠 ∈ (Base‘𝑅) ↦ (𝑘𝑁, 𝑙𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗)))))
Distinct variable groups:   𝐵,𝑚,𝑠   𝑖,𝑁,𝑗,𝑘,𝑙,𝑚,𝑠   𝑅,𝑖,𝑗,𝑘,𝑙,𝑚,𝑠
Allowed substitution hints:   𝐴(𝑖,𝑗,𝑘,𝑚,𝑠,𝑙)   𝐵(𝑖,𝑗,𝑘,𝑙)   𝑄(𝑖,𝑗,𝑘,𝑚,𝑠,𝑙)   0 (𝑖,𝑗,𝑘,𝑚,𝑠,𝑙)

Proof of Theorem marrepfval
Dummy variables 𝑛 𝑟 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 marrepfval.q . 2 𝑄 = (𝑁 matRRep 𝑅)
2 marrepfval.b . . . . . 6 𝐵 = (Base‘𝐴)
32fvexi 6770 . . . . 5 𝐵 ∈ V
4 fvexd 6771 . . . . 5 ((𝑁 ∈ V ∧ 𝑅 ∈ V) → (Base‘𝑅) ∈ V)
5 mpoexga 7891 . . . . 5 ((𝐵 ∈ V ∧ (Base‘𝑅) ∈ V) → (𝑚𝐵, 𝑠 ∈ (Base‘𝑅) ↦ (𝑘𝑁, 𝑙𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗))))) ∈ V)
63, 4, 5sylancr 586 . . . 4 ((𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑚𝐵, 𝑠 ∈ (Base‘𝑅) ↦ (𝑘𝑁, 𝑙𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗))))) ∈ V)
7 oveq12 7264 . . . . . . . 8 ((𝑛 = 𝑁𝑟 = 𝑅) → (𝑛 Mat 𝑟) = (𝑁 Mat 𝑅))
87fveq2d 6760 . . . . . . 7 ((𝑛 = 𝑁𝑟 = 𝑅) → (Base‘(𝑛 Mat 𝑟)) = (Base‘(𝑁 Mat 𝑅)))
9 marrepfval.a . . . . . . . . 9 𝐴 = (𝑁 Mat 𝑅)
109fveq2i 6759 . . . . . . . 8 (Base‘𝐴) = (Base‘(𝑁 Mat 𝑅))
112, 10eqtri 2766 . . . . . . 7 𝐵 = (Base‘(𝑁 Mat 𝑅))
128, 11eqtr4di 2797 . . . . . 6 ((𝑛 = 𝑁𝑟 = 𝑅) → (Base‘(𝑛 Mat 𝑟)) = 𝐵)
13 fveq2 6756 . . . . . . 7 (𝑟 = 𝑅 → (Base‘𝑟) = (Base‘𝑅))
1413adantl 481 . . . . . 6 ((𝑛 = 𝑁𝑟 = 𝑅) → (Base‘𝑟) = (Base‘𝑅))
15 simpl 482 . . . . . . 7 ((𝑛 = 𝑁𝑟 = 𝑅) → 𝑛 = 𝑁)
16 fveq2 6756 . . . . . . . . . . . 12 (𝑟 = 𝑅 → (0g𝑟) = (0g𝑅))
17 marrepfval.z . . . . . . . . . . . 12 0 = (0g𝑅)
1816, 17eqtr4di 2797 . . . . . . . . . . 11 (𝑟 = 𝑅 → (0g𝑟) = 0 )
1918ifeq2d 4476 . . . . . . . . . 10 (𝑟 = 𝑅 → if(𝑗 = 𝑙, 𝑠, (0g𝑟)) = if(𝑗 = 𝑙, 𝑠, 0 ))
2019ifeq1d 4475 . . . . . . . . 9 (𝑟 = 𝑅 → if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, (0g𝑟)), (𝑖𝑚𝑗)) = if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗)))
2120adantl 481 . . . . . . . 8 ((𝑛 = 𝑁𝑟 = 𝑅) → if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, (0g𝑟)), (𝑖𝑚𝑗)) = if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗)))
2215, 15, 21mpoeq123dv 7328 . . . . . . 7 ((𝑛 = 𝑁𝑟 = 𝑅) → (𝑖𝑛, 𝑗𝑛 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, (0g𝑟)), (𝑖𝑚𝑗))) = (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗))))
2315, 15, 22mpoeq123dv 7328 . . . . . 6 ((𝑛 = 𝑁𝑟 = 𝑅) → (𝑘𝑛, 𝑙𝑛 ↦ (𝑖𝑛, 𝑗𝑛 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, (0g𝑟)), (𝑖𝑚𝑗)))) = (𝑘𝑁, 𝑙𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗)))))
2412, 14, 23mpoeq123dv 7328 . . . . 5 ((𝑛 = 𝑁𝑟 = 𝑅) → (𝑚 ∈ (Base‘(𝑛 Mat 𝑟)), 𝑠 ∈ (Base‘𝑟) ↦ (𝑘𝑛, 𝑙𝑛 ↦ (𝑖𝑛, 𝑗𝑛 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, (0g𝑟)), (𝑖𝑚𝑗))))) = (𝑚𝐵, 𝑠 ∈ (Base‘𝑅) ↦ (𝑘𝑁, 𝑙𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗))))))
25 df-marrep 21615 . . . . 5 matRRep = (𝑛 ∈ V, 𝑟 ∈ V ↦ (𝑚 ∈ (Base‘(𝑛 Mat 𝑟)), 𝑠 ∈ (Base‘𝑟) ↦ (𝑘𝑛, 𝑙𝑛 ↦ (𝑖𝑛, 𝑗𝑛 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, (0g𝑟)), (𝑖𝑚𝑗))))))
2624, 25ovmpoga 7405 . . . 4 ((𝑁 ∈ V ∧ 𝑅 ∈ V ∧ (𝑚𝐵, 𝑠 ∈ (Base‘𝑅) ↦ (𝑘𝑁, 𝑙𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗))))) ∈ V) → (𝑁 matRRep 𝑅) = (𝑚𝐵, 𝑠 ∈ (Base‘𝑅) ↦ (𝑘𝑁, 𝑙𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗))))))
276, 26mpd3an3 1460 . . 3 ((𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑁 matRRep 𝑅) = (𝑚𝐵, 𝑠 ∈ (Base‘𝑅) ↦ (𝑘𝑁, 𝑙𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗))))))
2825mpondm0 7488 . . . 4 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑁 matRRep 𝑅) = ∅)
29 matbas0pc 21466 . . . . . . 7 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (Base‘(𝑁 Mat 𝑅)) = ∅)
3011, 29eqtrid 2790 . . . . . 6 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → 𝐵 = ∅)
3130orcd 869 . . . . 5 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝐵 = ∅ ∨ (Base‘𝑅) = ∅))
32 0mpo0 7336 . . . . 5 ((𝐵 = ∅ ∨ (Base‘𝑅) = ∅) → (𝑚𝐵, 𝑠 ∈ (Base‘𝑅) ↦ (𝑘𝑁, 𝑙𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗))))) = ∅)
3331, 32syl 17 . . . 4 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑚𝐵, 𝑠 ∈ (Base‘𝑅) ↦ (𝑘𝑁, 𝑙𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗))))) = ∅)
3428, 33eqtr4d 2781 . . 3 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑁 matRRep 𝑅) = (𝑚𝐵, 𝑠 ∈ (Base‘𝑅) ↦ (𝑘𝑁, 𝑙𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗))))))
3527, 34pm2.61i 182 . 2 (𝑁 matRRep 𝑅) = (𝑚𝐵, 𝑠 ∈ (Base‘𝑅) ↦ (𝑘𝑁, 𝑙𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗)))))
361, 35eqtri 2766 1 𝑄 = (𝑚𝐵, 𝑠 ∈ (Base‘𝑅) ↦ (𝑘𝑁, 𝑙𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑖 = 𝑘, if(𝑗 = 𝑙, 𝑠, 0 ), (𝑖𝑚𝑗)))))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wa 395  wo 843   = wceq 1539  wcel 2108  Vcvv 3422  c0 4253  ifcif 4456  cfv 6418  (class class class)co 7255  cmpo 7257  Basecbs 16840  0gc0g 17067   Mat cmat 21464   matRRep cmarrep 21613
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1799  ax-4 1813  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2110  ax-9 2118  ax-10 2139  ax-11 2156  ax-12 2173  ax-ext 2709  ax-rep 5205  ax-sep 5218  ax-nul 5225  ax-pow 5283  ax-pr 5347  ax-un 7566  ax-cnex 10858  ax-1cn 10860  ax-addcl 10862
This theorem depends on definitions:  df-bi 206  df-an 396  df-or 844  df-3or 1086  df-3an 1087  df-tru 1542  df-fal 1552  df-ex 1784  df-nf 1788  df-sb 2069  df-mo 2540  df-eu 2569  df-clab 2716  df-cleq 2730  df-clel 2817  df-nfc 2888  df-ne 2943  df-ral 3068  df-rex 3069  df-reu 3070  df-rab 3072  df-v 3424  df-sbc 3712  df-csb 3829  df-dif 3886  df-un 3888  df-in 3890  df-ss 3900  df-pss 3902  df-nul 4254  df-if 4457  df-pw 4532  df-sn 4559  df-pr 4561  df-tp 4563  df-op 4565  df-uni 4837  df-iun 4923  df-br 5071  df-opab 5133  df-mpt 5154  df-tr 5188  df-id 5480  df-eprel 5486  df-po 5494  df-so 5495  df-fr 5535  df-we 5537  df-xp 5586  df-rel 5587  df-cnv 5588  df-co 5589  df-dm 5590  df-rn 5591  df-res 5592  df-ima 5593  df-pred 6191  df-ord 6254  df-on 6255  df-lim 6256  df-suc 6257  df-iota 6376  df-fun 6420  df-fn 6421  df-f 6422  df-f1 6423  df-fo 6424  df-f1o 6425  df-fv 6426  df-ov 7258  df-oprab 7259  df-mpo 7260  df-om 7688  df-1st 7804  df-2nd 7805  df-frecs 8068  df-wrecs 8099  df-recs 8173  df-rdg 8212  df-nn 11904  df-slot 16811  df-ndx 16823  df-base 16841  df-mat 21465  df-marrep 21615
This theorem is referenced by:  marrepval0  21618
  Copyright terms: Public domain W3C validator