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

 Description: First substitution for the adjunct (cofactor) matrix. (Contributed by SO, 11-Jul-2018.)
Hypotheses
Ref Expression
madufval.a 𝐴 = (𝑁 Mat 𝑅)
Assertion
Ref Expression
madufval 𝐽 = (𝑚𝐵 ↦ (𝑖𝑁, 𝑗𝑁 ↦ (𝐷‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙))))))
Distinct variable groups:   𝑚,𝑁,𝑖,𝑗,𝑘,𝑙   𝑅,𝑚,𝑖,𝑗,𝑘,𝑙   𝐵,𝑚
Allowed substitution hints:   𝐴(𝑖,𝑗,𝑘,𝑚,𝑙)   𝐵(𝑖,𝑗,𝑘,𝑙)   𝐷(𝑖,𝑗,𝑘,𝑚,𝑙)   1 (𝑖,𝑗,𝑘,𝑚,𝑙)   𝐽(𝑖,𝑗,𝑘,𝑚,𝑙)   0 (𝑖,𝑗,𝑘,𝑚,𝑙)

Dummy variables 𝑛 𝑟 are mutually distinct and distinct from all other variables.
StepHypRef Expression
2 fvoveq1 7172 . . . . . 6 (𝑛 = 𝑁 → (Base‘(𝑛 Mat 𝑟)) = (Base‘(𝑁 Mat 𝑟)))
3 id 22 . . . . . . 7 (𝑛 = 𝑁𝑛 = 𝑁)
4 oveq1 7156 . . . . . . . 8 (𝑛 = 𝑁 → (𝑛 maDet 𝑟) = (𝑁 maDet 𝑟))
5 eqidd 2825 . . . . . . . . 9 (𝑛 = 𝑁 → if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙)) = if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙)))
63, 3, 5mpoeq123dv 7222 . . . . . . . 8 (𝑛 = 𝑁 → (𝑘𝑛, 𝑙𝑛 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙))) = (𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙))))
74, 6fveq12d 6668 . . . . . . 7 (𝑛 = 𝑁 → ((𝑛 maDet 𝑟)‘(𝑘𝑛, 𝑙𝑛 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙)))) = ((𝑁 maDet 𝑟)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙)))))
83, 3, 7mpoeq123dv 7222 . . . . . 6 (𝑛 = 𝑁 → (𝑖𝑛, 𝑗𝑛 ↦ ((𝑛 maDet 𝑟)‘(𝑘𝑛, 𝑙𝑛 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙))))) = (𝑖𝑁, 𝑗𝑁 ↦ ((𝑁 maDet 𝑟)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙))))))
92, 8mpteq12dv 5137 . . . . 5 (𝑛 = 𝑁 → (𝑚 ∈ (Base‘(𝑛 Mat 𝑟)) ↦ (𝑖𝑛, 𝑗𝑛 ↦ ((𝑛 maDet 𝑟)‘(𝑘𝑛, 𝑙𝑛 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙)))))) = (𝑚 ∈ (Base‘(𝑁 Mat 𝑟)) ↦ (𝑖𝑁, 𝑗𝑁 ↦ ((𝑁 maDet 𝑟)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙)))))))
10 oveq2 7157 . . . . . . 7 (𝑟 = 𝑅 → (𝑁 Mat 𝑟) = (𝑁 Mat 𝑅))
1110fveq2d 6665 . . . . . 6 (𝑟 = 𝑅 → (Base‘(𝑁 Mat 𝑟)) = (Base‘(𝑁 Mat 𝑅)))
12 oveq2 7157 . . . . . . . 8 (𝑟 = 𝑅 → (𝑁 maDet 𝑟) = (𝑁 maDet 𝑅))
13 fveq2 6661 . . . . . . . . . . 11 (𝑟 = 𝑅 → (1r𝑟) = (1r𝑅))
14 fveq2 6661 . . . . . . . . . . 11 (𝑟 = 𝑅 → (0g𝑟) = (0g𝑅))
1513, 14ifeq12d 4470 . . . . . . . . . 10 (𝑟 = 𝑅 → if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)) = if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)))
1615ifeq1d 4468 . . . . . . . . 9 (𝑟 = 𝑅 → if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙)) = if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)), (𝑘𝑚𝑙)))
1716mpoeq3dv 7226 . . . . . . . 8 (𝑟 = 𝑅 → (𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙))) = (𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)), (𝑘𝑚𝑙))))
1812, 17fveq12d 6668 . . . . . . 7 (𝑟 = 𝑅 → ((𝑁 maDet 𝑟)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙)))) = ((𝑁 maDet 𝑅)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)), (𝑘𝑚𝑙)))))
1918mpoeq3dv 7226 . . . . . 6 (𝑟 = 𝑅 → (𝑖𝑁, 𝑗𝑁 ↦ ((𝑁 maDet 𝑟)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙))))) = (𝑖𝑁, 𝑗𝑁 ↦ ((𝑁 maDet 𝑅)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)), (𝑘𝑚𝑙))))))
2011, 19mpteq12dv 5137 . . . . 5 (𝑟 = 𝑅 → (𝑚 ∈ (Base‘(𝑁 Mat 𝑟)) ↦ (𝑖𝑁, 𝑗𝑁 ↦ ((𝑁 maDet 𝑟)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙)))))) = (𝑚 ∈ (Base‘(𝑁 Mat 𝑅)) ↦ (𝑖𝑁, 𝑗𝑁 ↦ ((𝑁 maDet 𝑅)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)), (𝑘𝑚𝑙)))))))
21 df-madu 21243 . . . . 5 maAdju = (𝑛 ∈ V, 𝑟 ∈ V ↦ (𝑚 ∈ (Base‘(𝑛 Mat 𝑟)) ↦ (𝑖𝑛, 𝑗𝑛 ↦ ((𝑛 maDet 𝑟)‘(𝑘𝑛, 𝑙𝑛 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑟), (0g𝑟)), (𝑘𝑚𝑙)))))))
22 fvex 6674 . . . . . 6 (Base‘(𝑁 Mat 𝑅)) ∈ V
2322mptex 6977 . . . . 5 (𝑚 ∈ (Base‘(𝑁 Mat 𝑅)) ↦ (𝑖𝑁, 𝑗𝑁 ↦ ((𝑁 maDet 𝑅)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)), (𝑘𝑚𝑙)))))) ∈ V
249, 20, 21, 23ovmpo 7303 . . . 4 ((𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑁 maAdju 𝑅) = (𝑚 ∈ (Base‘(𝑁 Mat 𝑅)) ↦ (𝑖𝑁, 𝑗𝑁 ↦ ((𝑁 maDet 𝑅)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)), (𝑘𝑚𝑙)))))))
25 madufval.b . . . . . 6 𝐵 = (Base‘𝐴)
26 madufval.a . . . . . . 7 𝐴 = (𝑁 Mat 𝑅)
2726fveq2i 6664 . . . . . 6 (Base‘𝐴) = (Base‘(𝑁 Mat 𝑅))
2825, 27eqtri 2847 . . . . 5 𝐵 = (Base‘(𝑁 Mat 𝑅))
29 madufval.d . . . . . . . 8 𝐷 = (𝑁 maDet 𝑅)
30 madufval.o . . . . . . . . . . . 12 1 = (1r𝑅)
3130a1i 11 . . . . . . . . . . 11 ((𝑘𝑁𝑙𝑁) → 1 = (1r𝑅))
32 madufval.z . . . . . . . . . . . 12 0 = (0g𝑅)
3332a1i 11 . . . . . . . . . . 11 ((𝑘𝑁𝑙𝑁) → 0 = (0g𝑅))
3431, 33ifeq12d 4470 . . . . . . . . . 10 ((𝑘𝑁𝑙𝑁) → if(𝑙 = 𝑖, 1 , 0 ) = if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)))
3534ifeq1d 4468 . . . . . . . . 9 ((𝑘𝑁𝑙𝑁) → if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙)) = if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)), (𝑘𝑚𝑙)))
3635mpoeq3ia 7225 . . . . . . . 8 (𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙))) = (𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)), (𝑘𝑚𝑙)))
3729, 36fveq12i 6667 . . . . . . 7 (𝐷‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙)))) = ((𝑁 maDet 𝑅)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)), (𝑘𝑚𝑙))))
3837a1i 11 . . . . . 6 ((𝑖𝑁𝑗𝑁) → (𝐷‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙)))) = ((𝑁 maDet 𝑅)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)), (𝑘𝑚𝑙)))))
3938mpoeq3ia 7225 . . . . 5 (𝑖𝑁, 𝑗𝑁 ↦ (𝐷‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙))))) = (𝑖𝑁, 𝑗𝑁 ↦ ((𝑁 maDet 𝑅)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)), (𝑘𝑚𝑙)))))
4028, 39mpteq12i 5145 . . . 4 (𝑚𝐵 ↦ (𝑖𝑁, 𝑗𝑁 ↦ (𝐷‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙)))))) = (𝑚 ∈ (Base‘(𝑁 Mat 𝑅)) ↦ (𝑖𝑁, 𝑗𝑁 ↦ ((𝑁 maDet 𝑅)‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, (1r𝑅), (0g𝑅)), (𝑘𝑚𝑙))))))
4124, 40syl6eqr 2877 . . 3 ((𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑁 maAdju 𝑅) = (𝑚𝐵 ↦ (𝑖𝑁, 𝑗𝑁 ↦ (𝐷‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙)))))))
4221reldmmpo 7278 . . . . 5 Rel dom maAdju
4342ovprc 7187 . . . 4 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑁 maAdju 𝑅) = ∅)
44 df-mat 21017 . . . . . . . . . . 11 Mat = (𝑛 ∈ Fin, 𝑟 ∈ V ↦ ((𝑟 freeLMod (𝑛 × 𝑛)) sSet ⟨(.r‘ndx), (𝑟 maMul ⟨𝑛, 𝑛, 𝑛⟩)⟩))
4544reldmmpo 7278 . . . . . . . . . 10 Rel dom Mat
4645ovprc 7187 . . . . . . . . 9 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑁 Mat 𝑅) = ∅)
4726, 46syl5eq 2871 . . . . . . . 8 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → 𝐴 = ∅)
4847fveq2d 6665 . . . . . . 7 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (Base‘𝐴) = (Base‘∅))
49 base0 16536 . . . . . . 7 ∅ = (Base‘∅)
5048, 25, 493eqtr4g 2884 . . . . . 6 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → 𝐵 = ∅)
5150mpteq1d 5141 . . . . 5 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑚𝐵 ↦ (𝑖𝑁, 𝑗𝑁 ↦ (𝐷‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙)))))) = (𝑚 ∈ ∅ ↦ (𝑖𝑁, 𝑗𝑁 ↦ (𝐷‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙)))))))
52 mpt0 6479 . . . . 5 (𝑚 ∈ ∅ ↦ (𝑖𝑁, 𝑗𝑁 ↦ (𝐷‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙)))))) = ∅
5351, 52syl6eq 2875 . . . 4 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑚𝐵 ↦ (𝑖𝑁, 𝑗𝑁 ↦ (𝐷‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙)))))) = ∅)
5443, 53eqtr4d 2862 . . 3 (¬ (𝑁 ∈ V ∧ 𝑅 ∈ V) → (𝑁 maAdju 𝑅) = (𝑚𝐵 ↦ (𝑖𝑁, 𝑗𝑁 ↦ (𝐷‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙)))))))
5541, 54pm2.61i 185 . 2 (𝑁 maAdju 𝑅) = (𝑚𝐵 ↦ (𝑖𝑁, 𝑗𝑁 ↦ (𝐷‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙))))))
561, 55eqtri 2847 1 𝐽 = (𝑚𝐵 ↦ (𝑖𝑁, 𝑗𝑁 ↦ (𝐷‘(𝑘𝑁, 𝑙𝑁 ↦ if(𝑘 = 𝑗, if(𝑙 = 𝑖, 1 , 0 ), (𝑘𝑚𝑙))))))
 Colors of variables: wff setvar class Syntax hints:  ¬ wn 3   ∧ wa 399   = wceq 1538   ∈ wcel 2115  Vcvv 3480  ∅c0 4276  ifcif 4450  ⟨cop 4556  ⟨cotp 4558   ↦ cmpt 5132   × cxp 5540  ‘cfv 6343  (class class class)co 7149   ∈ cmpo 7151  Fincfn 8505  ndxcnx 16480   sSet csts 16481  Basecbs 16483  .rcmulr 16566  0gc0g 16713  1rcur 19251   freeLMod cfrlm 20890   maMul cmmul 20994   Mat cmat 21016   maDet cmdat 21193   maAdju cmadu 21241 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 1912  ax-6 1971  ax-7 2016  ax-8 2117  ax-9 2125  ax-10 2146  ax-11 2162  ax-12 2179  ax-ext 2796  ax-rep 5176  ax-sep 5189  ax-nul 5196  ax-pow 5253  ax-pr 5317 This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2071  df-mo 2624  df-eu 2655  df-clab 2803  df-cleq 2817  df-clel 2896  df-nfc 2964  df-ne 3015  df-ral 3138  df-rex 3139  df-reu 3140  df-rab 3142  df-v 3482  df-sbc 3759  df-csb 3867  df-dif 3922  df-un 3924  df-in 3926  df-ss 3936  df-nul 4277  df-if 4451  df-sn 4551  df-pr 4553  df-op 4557  df-uni 4825  df-iun 4907  df-br 5053  df-opab 5115  df-mpt 5133  df-id 5447  df-xp 5548  df-rel 5549  df-cnv 5550  df-co 5551  df-dm 5552  df-rn 5553  df-res 5554  df-ima 5555  df-iota 6302  df-fun 6345  df-fn 6346  df-f 6347  df-f1 6348  df-fo 6349  df-f1o 6350  df-fv 6351  df-ov 7152  df-oprab 7153  df-mpo 7154  df-slot 16487  df-base 16489  df-mat 21017  df-madu 21243 This theorem is referenced by:  maduval  21247  maduf  21250
 Copyright terms: Public domain W3C validator