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

Theorem dmatmulcl 21557
Description: The product of two diagonal matrices is a diagonal matrix. (Contributed by AV, 20-Aug-2019.) (Revised by AV, 18-Dec-2019.)
Hypotheses
Ref Expression
dmatid.a 𝐴 = (𝑁 Mat 𝑅)
dmatid.b 𝐵 = (Base‘𝐴)
dmatid.0 0 = (0g𝑅)
dmatid.d 𝐷 = (𝑁 DMat 𝑅)
Assertion
Ref Expression
dmatmulcl (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) → (𝑋(.r𝐴)𝑌) ∈ 𝐷)

Proof of Theorem dmatmulcl
Dummy variables 𝑖 𝑗 𝑥 𝑦 𝑚 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 oveq 7261 . . . . . 6 (𝑚 = (𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 )) → (𝑖𝑚𝑗) = (𝑖(𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 ))𝑗))
21eqeq1d 2740 . . . . 5 (𝑚 = (𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 )) → ((𝑖𝑚𝑗) = 0 ↔ (𝑖(𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 ))𝑗) = 0 ))
32imbi2d 340 . . . 4 (𝑚 = (𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 )) → ((𝑖𝑗 → (𝑖𝑚𝑗) = 0 ) ↔ (𝑖𝑗 → (𝑖(𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 ))𝑗) = 0 )))
432ralbidv 3122 . . 3 (𝑚 = (𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 )) → (∀𝑖𝑁𝑗𝑁 (𝑖𝑗 → (𝑖𝑚𝑗) = 0 ) ↔ ∀𝑖𝑁𝑗𝑁 (𝑖𝑗 → (𝑖(𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 ))𝑗) = 0 )))
5 dmatid.a . . . 4 𝐴 = (𝑁 Mat 𝑅)
6 eqid 2738 . . . 4 (Base‘𝑅) = (Base‘𝑅)
7 dmatid.b . . . 4 𝐵 = (Base‘𝐴)
8 simpll 763 . . . 4 (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) → 𝑁 ∈ Fin)
9 simplr 765 . . . 4 (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) → 𝑅 ∈ Ring)
1093ad2ant1 1131 . . . . . 6 ((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ 𝑥𝑁𝑦𝑁) → 𝑅 ∈ Ring)
11 eqid 2738 . . . . . . 7 (Base‘𝐴) = (Base‘𝐴)
12 simp2 1135 . . . . . . 7 ((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ 𝑥𝑁𝑦𝑁) → 𝑥𝑁)
13 simp3 1136 . . . . . . 7 ((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ 𝑥𝑁𝑦𝑁) → 𝑦𝑁)
14 dmatid.0 . . . . . . . . . . 11 0 = (0g𝑅)
15 dmatid.d . . . . . . . . . . 11 𝐷 = (𝑁 DMat 𝑅)
165, 11, 14, 15dmatmat 21551 . . . . . . . . . 10 ((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) → (𝑋𝐷𝑋 ∈ (Base‘𝐴)))
1716imp 406 . . . . . . . . 9 (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ 𝑋𝐷) → 𝑋 ∈ (Base‘𝐴))
1817adantrr 713 . . . . . . . 8 (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) → 𝑋 ∈ (Base‘𝐴))
19183ad2ant1 1131 . . . . . . 7 ((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ 𝑥𝑁𝑦𝑁) → 𝑋 ∈ (Base‘𝐴))
205, 6, 11, 12, 13, 19matecld 21483 . . . . . 6 ((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ 𝑥𝑁𝑦𝑁) → (𝑥𝑋𝑦) ∈ (Base‘𝑅))
215, 11, 14, 15dmatmat 21551 . . . . . . . . . 10 ((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) → (𝑌𝐷𝑌 ∈ (Base‘𝐴)))
2221imp 406 . . . . . . . . 9 (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ 𝑌𝐷) → 𝑌 ∈ (Base‘𝐴))
2322adantrl 712 . . . . . . . 8 (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) → 𝑌 ∈ (Base‘𝐴))
24233ad2ant1 1131 . . . . . . 7 ((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ 𝑥𝑁𝑦𝑁) → 𝑌 ∈ (Base‘𝐴))
255, 6, 11, 12, 13, 24matecld 21483 . . . . . 6 ((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ 𝑥𝑁𝑦𝑁) → (𝑥𝑌𝑦) ∈ (Base‘𝑅))
26 eqid 2738 . . . . . . 7 (.r𝑅) = (.r𝑅)
276, 26ringcl 19715 . . . . . 6 ((𝑅 ∈ Ring ∧ (𝑥𝑋𝑦) ∈ (Base‘𝑅) ∧ (𝑥𝑌𝑦) ∈ (Base‘𝑅)) → ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)) ∈ (Base‘𝑅))
2810, 20, 25, 27syl3anc 1369 . . . . 5 ((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ 𝑥𝑁𝑦𝑁) → ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)) ∈ (Base‘𝑅))
296, 14ring0cl 19723 . . . . . . . 8 (𝑅 ∈ Ring → 0 ∈ (Base‘𝑅))
3029adantl 481 . . . . . . 7 ((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) → 0 ∈ (Base‘𝑅))
3130adantr 480 . . . . . 6 (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) → 0 ∈ (Base‘𝑅))
32313ad2ant1 1131 . . . . 5 ((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ 𝑥𝑁𝑦𝑁) → 0 ∈ (Base‘𝑅))
3328, 32ifcld 4502 . . . 4 ((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ 𝑥𝑁𝑦𝑁) → if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 ) ∈ (Base‘𝑅))
345, 6, 7, 8, 9, 33matbas2d 21480 . . 3 (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) → (𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 )) ∈ 𝐵)
35 eqidd 2739 . . . . . . 7 (((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ (𝑖𝑁𝑗𝑁)) ∧ 𝑖𝑗) → (𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 )) = (𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 )))
36 eqeq12 2755 . . . . . . . . 9 ((𝑥 = 𝑖𝑦 = 𝑗) → (𝑥 = 𝑦𝑖 = 𝑗))
37 oveq12 7264 . . . . . . . . . 10 ((𝑥 = 𝑖𝑦 = 𝑗) → (𝑥𝑋𝑦) = (𝑖𝑋𝑗))
38 oveq12 7264 . . . . . . . . . 10 ((𝑥 = 𝑖𝑦 = 𝑗) → (𝑥𝑌𝑦) = (𝑖𝑌𝑗))
3937, 38oveq12d 7273 . . . . . . . . 9 ((𝑥 = 𝑖𝑦 = 𝑗) → ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)) = ((𝑖𝑋𝑗)(.r𝑅)(𝑖𝑌𝑗)))
4036, 39ifbieq1d 4480 . . . . . . . 8 ((𝑥 = 𝑖𝑦 = 𝑗) → if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 ) = if(𝑖 = 𝑗, ((𝑖𝑋𝑗)(.r𝑅)(𝑖𝑌𝑗)), 0 ))
4140adantl 481 . . . . . . 7 ((((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ (𝑖𝑁𝑗𝑁)) ∧ 𝑖𝑗) ∧ (𝑥 = 𝑖𝑦 = 𝑗)) → if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 ) = if(𝑖 = 𝑗, ((𝑖𝑋𝑗)(.r𝑅)(𝑖𝑌𝑗)), 0 ))
42 simplrl 773 . . . . . . 7 (((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ (𝑖𝑁𝑗𝑁)) ∧ 𝑖𝑗) → 𝑖𝑁)
43 simplrr 774 . . . . . . 7 (((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ (𝑖𝑁𝑗𝑁)) ∧ 𝑖𝑗) → 𝑗𝑁)
44 ovex 7288 . . . . . . . . 9 ((𝑖𝑋𝑗)(.r𝑅)(𝑖𝑌𝑗)) ∈ V
4514fvexi 6770 . . . . . . . . 9 0 ∈ V
4644, 45ifex 4506 . . . . . . . 8 if(𝑖 = 𝑗, ((𝑖𝑋𝑗)(.r𝑅)(𝑖𝑌𝑗)), 0 ) ∈ V
4746a1i 11 . . . . . . 7 (((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ (𝑖𝑁𝑗𝑁)) ∧ 𝑖𝑗) → if(𝑖 = 𝑗, ((𝑖𝑋𝑗)(.r𝑅)(𝑖𝑌𝑗)), 0 ) ∈ V)
4835, 41, 42, 43, 47ovmpod 7403 . . . . . 6 (((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ (𝑖𝑁𝑗𝑁)) ∧ 𝑖𝑗) → (𝑖(𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 ))𝑗) = if(𝑖 = 𝑗, ((𝑖𝑋𝑗)(.r𝑅)(𝑖𝑌𝑗)), 0 ))
49 ifnefalse 4468 . . . . . . 7 (𝑖𝑗 → if(𝑖 = 𝑗, ((𝑖𝑋𝑗)(.r𝑅)(𝑖𝑌𝑗)), 0 ) = 0 )
5049adantl 481 . . . . . 6 (((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ (𝑖𝑁𝑗𝑁)) ∧ 𝑖𝑗) → if(𝑖 = 𝑗, ((𝑖𝑋𝑗)(.r𝑅)(𝑖𝑌𝑗)), 0 ) = 0 )
5148, 50eqtrd 2778 . . . . 5 (((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ (𝑖𝑁𝑗𝑁)) ∧ 𝑖𝑗) → (𝑖(𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 ))𝑗) = 0 )
5251ex 412 . . . 4 ((((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) ∧ (𝑖𝑁𝑗𝑁)) → (𝑖𝑗 → (𝑖(𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 ))𝑗) = 0 ))
5352ralrimivva 3114 . . 3 (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) → ∀𝑖𝑁𝑗𝑁 (𝑖𝑗 → (𝑖(𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 ))𝑗) = 0 ))
544, 34, 53elrabd 3619 . 2 (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) → (𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 )) ∈ {𝑚𝐵 ∣ ∀𝑖𝑁𝑗𝑁 (𝑖𝑗 → (𝑖𝑚𝑗) = 0 )})
555, 7, 14, 15dmatmul 21554 . 2 (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) → (𝑋(.r𝐴)𝑌) = (𝑥𝑁, 𝑦𝑁 ↦ if(𝑥 = 𝑦, ((𝑥𝑋𝑦)(.r𝑅)(𝑥𝑌𝑦)), 0 )))
565, 7, 14, 15dmatval 21549 . . 3 ((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) → 𝐷 = {𝑚𝐵 ∣ ∀𝑖𝑁𝑗𝑁 (𝑖𝑗 → (𝑖𝑚𝑗) = 0 )})
5756adantr 480 . 2 (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) → 𝐷 = {𝑚𝐵 ∣ ∀𝑖𝑁𝑗𝑁 (𝑖𝑗 → (𝑖𝑚𝑗) = 0 )})
5854, 55, 573eltr4d 2854 1 (((𝑁 ∈ Fin ∧ 𝑅 ∈ Ring) ∧ (𝑋𝐷𝑌𝐷)) → (𝑋(.r𝐴)𝑌) ∈ 𝐷)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395  w3a 1085   = wceq 1539  wcel 2108  wne 2942  wral 3063  {crab 3067  Vcvv 3422  ifcif 4456  cfv 6418  (class class class)co 7255  cmpo 7257  Fincfn 8691  Basecbs 16840  .rcmulr 16889  0gc0g 17067  Ringcrg 19698   Mat cmat 21464   DMat cdmat 21545
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-resscn 10859  ax-1cn 10860  ax-icn 10861  ax-addcl 10862  ax-addrcl 10863  ax-mulcl 10864  ax-mulrcl 10865  ax-mulcom 10866  ax-addass 10867  ax-mulass 10868  ax-distr 10869  ax-i2m1 10870  ax-1ne0 10871  ax-1rid 10872  ax-rnegex 10873  ax-rrecex 10874  ax-cnre 10875  ax-pre-lttri 10876  ax-pre-lttrn 10877  ax-pre-ltadd 10878  ax-pre-mulgt0 10879
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-nel 3049  df-ral 3068  df-rex 3069  df-reu 3070  df-rmo 3071  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-ot 4567  df-uni 4837  df-int 4877  df-iun 4923  df-iin 4924  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-se 5536  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-isom 6427  df-riota 7212  df-ov 7258  df-oprab 7259  df-mpo 7260  df-of 7511  df-om 7688  df-1st 7804  df-2nd 7805  df-supp 7949  df-frecs 8068  df-wrecs 8099  df-recs 8173  df-rdg 8212  df-1o 8267  df-er 8456  df-map 8575  df-ixp 8644  df-en 8692  df-dom 8693  df-sdom 8694  df-fin 8695  df-fsupp 9059  df-sup 9131  df-oi 9199  df-card 9628  df-pnf 10942  df-mnf 10943  df-xr 10944  df-ltxr 10945  df-le 10946  df-sub 11137  df-neg 11138  df-nn 11904  df-2 11966  df-3 11967  df-4 11968  df-5 11969  df-6 11970  df-7 11971  df-8 11972  df-9 11973  df-n0 12164  df-z 12250  df-dec 12367  df-uz 12512  df-fz 13169  df-fzo 13312  df-seq 13650  df-hash 13973  df-struct 16776  df-sets 16793  df-slot 16811  df-ndx 16823  df-base 16841  df-ress 16868  df-plusg 16901  df-mulr 16902  df-sca 16904  df-vsca 16905  df-ip 16906  df-tset 16907  df-ple 16908  df-ds 16910  df-hom 16912  df-cco 16913  df-0g 17069  df-gsum 17070  df-prds 17075  df-pws 17077  df-mre 17212  df-mrc 17213  df-acs 17215  df-mgm 18241  df-sgrp 18290  df-mnd 18301  df-submnd 18346  df-grp 18495  df-minusg 18496  df-mulg 18616  df-cntz 18838  df-cmn 19303  df-abl 19304  df-mgp 19636  df-ur 19653  df-ring 19700  df-sra 20349  df-rgmod 20350  df-dsmm 20849  df-frlm 20864  df-mamu 21443  df-mat 21465  df-dmat 21547
This theorem is referenced by:  dmatsrng  21558
  Copyright terms: Public domain W3C validator