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

Theorem marepvfval 21820
Description: First substitution for the definition of the function replacing a column of a matrix by a vector. (Contributed by AV, 14-Feb-2019.) (Revised by AV, 26-Feb-2019.) (Proof shortened by AV, 2-Mar-2024.)
Hypotheses
Ref Expression
marepvfval.a 𝐴 = (𝑁 Mat 𝑅)
marepvfval.b 𝐵 = (Base‘𝐴)
marepvfval.q 𝑄 = (𝑁 matRepV 𝑅)
marepvfval.v 𝑉 = ((Base‘𝑅) ↑m 𝑁)
Assertion
Ref Expression
marepvfval 𝑄 = (𝑚𝐵, 𝑣𝑉 ↦ (𝑘𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗)))))
Distinct variable groups:   𝐵,𝑚,𝑣   𝑖,𝑁,𝑗,𝑘,𝑚,𝑣   𝑅,𝑖,𝑗,𝑘,𝑚,𝑣   𝑚,𝑉,𝑣
Allowed substitution hints:   𝐴(𝑣,𝑖,𝑗,𝑘,𝑚)   𝐵(𝑖,𝑗,𝑘)   𝑄(𝑣,𝑖,𝑗,𝑘,𝑚)   𝑉(𝑖,𝑗,𝑘)

Proof of Theorem marepvfval
Dummy variables 𝑛 𝑟 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 marepvfval.q . 2 𝑄 = (𝑁 matRepV 𝑅)
2 marepvfval.b . . . . . 6 𝐵 = (Base‘𝐴)
32fvexi 6839 . . . . 5 𝐵 ∈ V
4 marepvfval.v . . . . . . 7 𝑉 = ((Base‘𝑅) ↑m 𝑁)
54ovexi 7371 . . . . . 6 𝑉 ∈ V
65a1i 11 . . . . 5 ((𝑁 ∈ V ∧ 𝑅 ∈ V) → 𝑉 ∈ V)
7 mpoexga 7986 . . . . 5 ((𝐵 ∈ V ∧ 𝑉 ∈ V) → (𝑚𝐵, 𝑣𝑉 ↦ (𝑘𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗))))) ∈ V)
83, 6, 7sylancr 587 . . . 4 ((𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑚𝐵, 𝑣𝑉 ↦ (𝑘𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗))))) ∈ V)
9 oveq12 7346 . . . . . . . . 9 ((𝑛 = 𝑁𝑟 = 𝑅) → (𝑛 Mat 𝑟) = (𝑁 Mat 𝑅))
10 marepvfval.a . . . . . . . . 9 𝐴 = (𝑁 Mat 𝑅)
119, 10eqtr4di 2794 . . . . . . . 8 ((𝑛 = 𝑁𝑟 = 𝑅) → (𝑛 Mat 𝑟) = 𝐴)
1211fveq2d 6829 . . . . . . 7 ((𝑛 = 𝑁𝑟 = 𝑅) → (Base‘(𝑛 Mat 𝑟)) = (Base‘𝐴))
1312, 2eqtr4di 2794 . . . . . 6 ((𝑛 = 𝑁𝑟 = 𝑅) → (Base‘(𝑛 Mat 𝑟)) = 𝐵)
14 fveq2 6825 . . . . . . . . 9 (𝑟 = 𝑅 → (Base‘𝑟) = (Base‘𝑅))
1514adantl 482 . . . . . . . 8 ((𝑛 = 𝑁𝑟 = 𝑅) → (Base‘𝑟) = (Base‘𝑅))
16 simpl 483 . . . . . . . 8 ((𝑛 = 𝑁𝑟 = 𝑅) → 𝑛 = 𝑁)
1715, 16oveq12d 7355 . . . . . . 7 ((𝑛 = 𝑁𝑟 = 𝑅) → ((Base‘𝑟) ↑m 𝑛) = ((Base‘𝑅) ↑m 𝑁))
1817, 4eqtr4di 2794 . . . . . 6 ((𝑛 = 𝑁𝑟 = 𝑅) → ((Base‘𝑟) ↑m 𝑛) = 𝑉)
19 eqidd 2737 . . . . . . . 8 ((𝑛 = 𝑁𝑟 = 𝑅) → if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗)) = if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗)))
2016, 16, 19mpoeq123dv 7412 . . . . . . 7 ((𝑛 = 𝑁𝑟 = 𝑅) → (𝑖𝑛, 𝑗𝑛 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗))) = (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗))))
2116, 20mpteq12dv 5183 . . . . . 6 ((𝑛 = 𝑁𝑟 = 𝑅) → (𝑘𝑛 ↦ (𝑖𝑛, 𝑗𝑛 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗)))) = (𝑘𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗)))))
2213, 18, 21mpoeq123dv 7412 . . . . 5 ((𝑛 = 𝑁𝑟 = 𝑅) → (𝑚 ∈ (Base‘(𝑛 Mat 𝑟)), 𝑣 ∈ ((Base‘𝑟) ↑m 𝑛) ↦ (𝑘𝑛 ↦ (𝑖𝑛, 𝑗𝑛 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗))))) = (𝑚𝐵, 𝑣𝑉 ↦ (𝑘𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗))))))
23 df-marepv 21814 . . . . 5 matRepV = (𝑛 ∈ V, 𝑟 ∈ V ↦ (𝑚 ∈ (Base‘(𝑛 Mat 𝑟)), 𝑣 ∈ ((Base‘𝑟) ↑m 𝑛) ↦ (𝑘𝑛 ↦ (𝑖𝑛, 𝑗𝑛 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗))))))
2422, 23ovmpoga 7489 . . . 4 ((𝑁 ∈ V ∧ 𝑅 ∈ V ∧ (𝑚𝐵, 𝑣𝑉 ↦ (𝑘𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗))))) ∈ V) → (𝑁 matRepV 𝑅) = (𝑚𝐵, 𝑣𝑉 ↦ (𝑘𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗))))))
258, 24mpd3an3 1461 . . 3 ((𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑁 matRepV 𝑅) = (𝑚𝐵, 𝑣𝑉 ↦ (𝑘𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗))))))
2623mpondm0 7572 . . . 4 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑁 matRepV 𝑅) = ∅)
2710fveq2i 6828 . . . . . . . 8 (Base‘𝐴) = (Base‘(𝑁 Mat 𝑅))
282, 27eqtri 2764 . . . . . . 7 𝐵 = (Base‘(𝑁 Mat 𝑅))
29 matbas0pc 21662 . . . . . . 7 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (Base‘(𝑁 Mat 𝑅)) = ∅)
3028, 29eqtrid 2788 . . . . . 6 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → 𝐵 = ∅)
3130orcd 870 . . . . 5 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝐵 = ∅ ∨ 𝑉 = ∅))
32 0mpo0 7420 . . . . 5 ((𝐵 = ∅ ∨ 𝑉 = ∅) → (𝑚𝐵, 𝑣𝑉 ↦ (𝑘𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗))))) = ∅)
3331, 32syl 17 . . . 4 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑚𝐵, 𝑣𝑉 ↦ (𝑘𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗))))) = ∅)
3426, 33eqtr4d 2779 . . 3 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑁 matRepV 𝑅) = (𝑚𝐵, 𝑣𝑉 ↦ (𝑘𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗))))))
3525, 34pm2.61i 182 . 2 (𝑁 matRepV 𝑅) = (𝑚𝐵, 𝑣𝑉 ↦ (𝑘𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗)))))
361, 35eqtri 2764 1 𝑄 = (𝑚𝐵, 𝑣𝑉 ↦ (𝑘𝑁 ↦ (𝑖𝑁, 𝑗𝑁 ↦ if(𝑗 = 𝑘, (𝑣𝑖), (𝑖𝑚𝑗)))))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wa 396  wo 844   = wceq 1540  wcel 2105  Vcvv 3441  c0 4269  ifcif 4473  cmpt 5175  cfv 6479  (class class class)co 7337  cmpo 7339  m cmap 8686  Basecbs 17009   Mat cmat 21660   matRepV cmatrepV 21812
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 1912  ax-6 1970  ax-7 2010  ax-8 2107  ax-9 2115  ax-10 2136  ax-11 2153  ax-12 2170  ax-ext 2707  ax-rep 5229  ax-sep 5243  ax-nul 5250  ax-pow 5308  ax-pr 5372  ax-un 7650  ax-cnex 11028  ax-1cn 11030  ax-addcl 11032
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1781  df-nf 1785  df-sb 2067  df-mo 2538  df-eu 2567  df-clab 2714  df-cleq 2728  df-clel 2814  df-nfc 2886  df-ne 2941  df-ral 3062  df-rex 3071  df-reu 3350  df-rab 3404  df-v 3443  df-sbc 3728  df-csb 3844  df-dif 3901  df-un 3903  df-in 3905  df-ss 3915  df-pss 3917  df-nul 4270  df-if 4474  df-pw 4549  df-sn 4574  df-pr 4576  df-op 4580  df-uni 4853  df-iun 4943  df-br 5093  df-opab 5155  df-mpt 5176  df-tr 5210  df-id 5518  df-eprel 5524  df-po 5532  df-so 5533  df-fr 5575  df-we 5577  df-xp 5626  df-rel 5627  df-cnv 5628  df-co 5629  df-dm 5630  df-rn 5631  df-res 5632  df-ima 5633  df-pred 6238  df-ord 6305  df-on 6306  df-lim 6307  df-suc 6308  df-iota 6431  df-fun 6481  df-fn 6482  df-f 6483  df-f1 6484  df-fo 6485  df-f1o 6486  df-fv 6487  df-ov 7340  df-oprab 7341  df-mpo 7342  df-om 7781  df-1st 7899  df-2nd 7900  df-frecs 8167  df-wrecs 8198  df-recs 8272  df-rdg 8311  df-nn 12075  df-slot 16980  df-ndx 16992  df-base 17010  df-mat 21661  df-marepv 21814
This theorem is referenced by:  marepvval0  21821
  Copyright terms: Public domain W3C validator