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

Theorem mamulid 22609
Description: The identity matrix (as operation in maps-to notation) is a left identity (for any matrix with the same number of rows). (Contributed by Stefan O'Rear, 3-Sep-2015.) (Proof shortened by AV, 22-Jul-2019.)
Hypotheses
Ref Expression
mamumat1cl.b 𝐵 = (Base‘𝑅)
mamumat1cl.r (𝜑𝑅 ∈ Ring)
mamumat1cl.o 1 = (1r𝑅)
mamumat1cl.z 0 = (0g𝑅)
mamumat1cl.i 𝐼 = (𝑖𝑀, 𝑗𝑀 ↦ if(𝑖 = 𝑗, 1 , 0 ))
mamumat1cl.m (𝜑𝑀 ∈ Fin)
mamulid.n (𝜑𝑁 ∈ Fin)
mamulid.f 𝐹 = (𝑅 maMul ⟨𝑀, 𝑀, 𝑁⟩)
mamulid.x (𝜑𝑋 ∈ (𝐵m (𝑀 × 𝑁)))
Assertion
Ref Expression
mamulid (𝜑 → (𝐼𝐹𝑋) = 𝑋)
Distinct variable groups:   𝑖,𝑗,𝐵   𝑖,𝑀,𝑗   𝜑,𝑖,𝑗   0 ,𝑖,𝑗   1 ,𝑖,𝑗
Allowed substitution hints:   𝑅(𝑖, 𝑗)   𝐹(𝑖, 𝑗)   𝐼(𝑖, 𝑗)   𝑁(𝑖, 𝑗)   𝑋(𝑖, 𝑗)

Proof of Theorem mamulid
Dummy variables 𝑘 𝑙 𝑚 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 mamulid.f . . . . 5 𝐹 = (𝑅 maMul ⟨𝑀, 𝑀, 𝑁⟩)
2 mamumat1cl.b . . . . 5 𝐵 = (Base‘𝑅)
3 eqid 2762 . . . . 5 (.r𝑅) = (.r𝑅)
4 mamumat1cl.r . . . . . 6 (𝜑𝑅 ∈ Ring)
54adantr 485 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝑅 ∈ Ring)
6 mamumat1cl.m . . . . . 6 (𝜑𝑀 ∈ Fin)
76adantr 485 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝑀 ∈ Fin)
8 mamulid.n . . . . . 6 (𝜑𝑁 ∈ Fin)
98adantr 485 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝑁 ∈ Fin)
10 mamumat1cl.o . . . . . . 7 1 = (1r𝑅)
11 mamumat1cl.z . . . . . . 7 0 = (0g𝑅)
12 mamumat1cl.i . . . . . . 7 𝐼 = (𝑖𝑀, 𝑗𝑀 ↦ if(𝑖 = 𝑗, 1 , 0 ))
132, 4, 10, 11, 12, 6mamumat1cl 22607 . . . . . 6 (𝜑𝐼 ∈ (𝐵m (𝑀 × 𝑀)))
1413adantr 485 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝐼 ∈ (𝐵m (𝑀 × 𝑀)))
15 mamulid.x . . . . . 6 (𝜑𝑋 ∈ (𝐵m (𝑀 × 𝑁)))
1615adantr 485 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝑋 ∈ (𝐵m (𝑀 × 𝑁)))
17 simprl 782 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝑙𝑀)
18 simprr 784 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝑘𝑁)
191, 2, 3, 5, 7, 7, 9, 14, 16, 17, 18mamufv 22562 . . . 4 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → (𝑙(𝐼𝐹𝑋)𝑘) = (𝑅 Σg (𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)))))
20 ringmnd 20331 . . . . . 6 (𝑅 ∈ Ring → 𝑅 ∈ Mnd)
215, 20syl 18 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝑅 ∈ Mnd)
224ad2antrr 738 . . . . . . 7 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → 𝑅 ∈ Ring)
23 elmapi 8844 . . . . . . . . . 10 (𝐼 ∈ (𝐵m (𝑀 × 𝑀)) → 𝐼:(𝑀 × 𝑀)⟶𝐵)
2413, 23syl 18 . . . . . . . . 9 (𝜑𝐼:(𝑀 × 𝑀)⟶𝐵)
2524ad2antrr 738 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → 𝐼:(𝑀 × 𝑀)⟶𝐵)
26 simplrl 788 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → 𝑙𝑀)
27 simpr 489 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → 𝑚𝑀)
2825, 26, 27fovcdmd 7584 . . . . . . 7 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → (𝑙𝐼𝑚) ∈ 𝐵)
29 elmapi 8844 . . . . . . . . . 10 (𝑋 ∈ (𝐵m (𝑀 × 𝑁)) → 𝑋:(𝑀 × 𝑁)⟶𝐵)
3015, 29syl 18 . . . . . . . . 9 (𝜑𝑋:(𝑀 × 𝑁)⟶𝐵)
3130ad2antrr 738 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → 𝑋:(𝑀 × 𝑁)⟶𝐵)
32 simplrr 789 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → 𝑘𝑁)
3331, 27, 32fovcdmd 7584 . . . . . . 7 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → (𝑚𝑋𝑘) ∈ 𝐵)
342, 3ringcl 20338 . . . . . . 7 ((𝑅 ∈ Ring ∧ (𝑙𝐼𝑚) ∈ 𝐵 ∧ (𝑚𝑋𝑘) ∈ 𝐵) → ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)) ∈ 𝐵)
3522, 28, 33, 34syl3anc 1397 . . . . . 6 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)) ∈ 𝐵)
3635fmpttd 7110 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → (𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘))):𝑀𝐵)
37263adant3 1149 . . . . . . . . . 10 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → 𝑙𝑀)
38 simp2 1154 . . . . . . . . . 10 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → 𝑚𝑀)
392, 4, 10, 11, 12, 6mat1comp 22608 . . . . . . . . . . 11 ((𝑙𝑀𝑚𝑀) → (𝑙𝐼𝑚) = if(𝑙 = 𝑚, 1 , 0 ))
40 equcom 2047 . . . . . . . . . . . . 13 (𝑙 = 𝑚𝑚 = 𝑙)
4140a1i 11 . . . . . . . . . . . 12 ((𝑙𝑀𝑚𝑀) → (𝑙 = 𝑚𝑚 = 𝑙))
4241ifbid 4510 . . . . . . . . . . 11 ((𝑙𝑀𝑚𝑀) → if(𝑙 = 𝑚, 1 , 0 ) = if(𝑚 = 𝑙, 1 , 0 ))
4339, 42eqtrd 2797 . . . . . . . . . 10 ((𝑙𝑀𝑚𝑀) → (𝑙𝐼𝑚) = if(𝑚 = 𝑙, 1 , 0 ))
4437, 38, 43syl2anc 595 . . . . . . . . 9 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → (𝑙𝐼𝑚) = if(𝑚 = 𝑙, 1 , 0 ))
45 ifnefalse 4498 . . . . . . . . . 10 (𝑚𝑙 → if(𝑚 = 𝑙, 1 , 0 ) = 0 )
46453ad2ant3 1152 . . . . . . . . 9 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → if(𝑚 = 𝑙, 1 , 0 ) = 0 )
4744, 46eqtrd 2797 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → (𝑙𝐼𝑚) = 0 )
4847oveq1d 7427 . . . . . . 7 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)) = ( 0 (.r𝑅)(𝑚𝑋𝑘)))
492, 3, 11ringlz 20383 . . . . . . . . 9 ((𝑅 ∈ Ring ∧ (𝑚𝑋𝑘) ∈ 𝐵) → ( 0 (.r𝑅)(𝑚𝑋𝑘)) = 0 )
5022, 33, 49syl2anc 595 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → ( 0 (.r𝑅)(𝑚𝑋𝑘)) = 0 )
51503adant3 1149 . . . . . . 7 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → ( 0 (.r𝑅)(𝑚𝑋𝑘)) = 0 )
5248, 51eqtrd 2797 . . . . . 6 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)) = 0 )
5352, 7suppsssn 8195 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → ((𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘))) supp 0 ) ⊆ {𝑙})
542, 11, 21, 7, 17, 36, 53gsumpt 20038 . . . 4 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → (𝑅 Σg (𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)))) = ((𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)))‘𝑙))
55 oveq2 7420 . . . . . . . 8 (𝑚 = 𝑙 → (𝑙𝐼𝑚) = (𝑙𝐼𝑙))
56 oveq1 7419 . . . . . . . 8 (𝑚 = 𝑙 → (𝑚𝑋𝑘) = (𝑙𝑋𝑘))
5755, 56oveq12d 7430 . . . . . . 7 (𝑚 = 𝑙 → ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)) = ((𝑙𝐼𝑙)(.r𝑅)(𝑙𝑋𝑘)))
58 eqid 2762 . . . . . . 7 (𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘))) = (𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)))
59 ovex 7445 . . . . . . 7 ((𝑙𝐼𝑙)(.r𝑅)(𝑙𝑋𝑘)) ∈ V
6057, 58, 59fvmpt 6989 . . . . . 6 (𝑙𝑀 → ((𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)))‘𝑙) = ((𝑙𝐼𝑙)(.r𝑅)(𝑙𝑋𝑘)))
6160ad2antrl 740 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → ((𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)))‘𝑙) = ((𝑙𝐼𝑙)(.r𝑅)(𝑙𝑋𝑘)))
62 equequ1 2054 . . . . . . . . . 10 (𝑖 = 𝑙 → (𝑖 = 𝑗𝑙 = 𝑗))
6362ifbid 4510 . . . . . . . . 9 (𝑖 = 𝑙 → if(𝑖 = 𝑗, 1 , 0 ) = if(𝑙 = 𝑗, 1 , 0 ))
64 equequ2 2055 . . . . . . . . . . 11 (𝑗 = 𝑙 → (𝑙 = 𝑗𝑙 = 𝑙))
6564ifbid 4510 . . . . . . . . . 10 (𝑗 = 𝑙 → if(𝑙 = 𝑗, 1 , 0 ) = if(𝑙 = 𝑙, 1 , 0 ))
66 equid 2041 . . . . . . . . . . 11 𝑙 = 𝑙
6766iftruei 4493 . . . . . . . . . 10 if(𝑙 = 𝑙, 1 , 0 ) = 1
6865, 67eqtrdi 2813 . . . . . . . . 9 (𝑗 = 𝑙 → if(𝑙 = 𝑗, 1 , 0 ) = 1 )
6910fvexi 6895 . . . . . . . . 9 1 ∈ V
7063, 68, 12, 69ovmpo 7572 . . . . . . . 8 ((𝑙𝑀𝑙𝑀) → (𝑙𝐼𝑙) = 1 )
7170anidms 576 . . . . . . 7 (𝑙𝑀 → (𝑙𝐼𝑙) = 1 )
7271ad2antrl 740 . . . . . 6 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → (𝑙𝐼𝑙) = 1 )
7372oveq1d 7427 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → ((𝑙𝐼𝑙)(.r𝑅)(𝑙𝑋𝑘)) = ( 1 (.r𝑅)(𝑙𝑋𝑘)))
7430fovcdmda 7583 . . . . . 6 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → (𝑙𝑋𝑘) ∈ 𝐵)
752, 3, 10ringlidm 20359 . . . . . 6 ((𝑅 ∈ Ring ∧ (𝑙𝑋𝑘) ∈ 𝐵) → ( 1 (.r𝑅)(𝑙𝑋𝑘)) = (𝑙𝑋𝑘))
765, 74, 75syl2anc 595 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → ( 1 (.r𝑅)(𝑙𝑋𝑘)) = (𝑙𝑋𝑘))
7761, 73, 763eqtrd 2801 . . . 4 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → ((𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)))‘𝑙) = (𝑙𝑋𝑘))
7819, 54, 773eqtrd 2801 . . 3 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → (𝑙(𝐼𝐹𝑋)𝑘) = (𝑙𝑋𝑘))
7978ralrimivva 3207 . 2 (𝜑 → ∀𝑙𝑀𝑘𝑁 (𝑙(𝐼𝐹𝑋)𝑘) = (𝑙𝑋𝑘))
802, 4, 1, 6, 6, 8, 13, 15mamucl 22569 . . . . 5 (𝜑 → (𝐼𝐹𝑋) ∈ (𝐵m (𝑀 × 𝑁)))
81 elmapi 8844 . . . . 5 ((𝐼𝐹𝑋) ∈ (𝐵m (𝑀 × 𝑁)) → (𝐼𝐹𝑋):(𝑀 × 𝑁)⟶𝐵)
8280, 81syl 18 . . . 4 (𝜑 → (𝐼𝐹𝑋):(𝑀 × 𝑁)⟶𝐵)
8382ffnd 6706 . . 3 (𝜑 → (𝐼𝐹𝑋) Fn (𝑀 × 𝑁))
8430ffnd 6706 . . 3 (𝜑𝑋 Fn (𝑀 × 𝑁))
85 eqfnov2 7542 . . 3 (((𝐼𝐹𝑋) Fn (𝑀 × 𝑁) ∧ 𝑋 Fn (𝑀 × 𝑁)) → ((𝐼𝐹𝑋) = 𝑋 ↔ ∀𝑙𝑀𝑘𝑁 (𝑙(𝐼𝐹𝑋)𝑘) = (𝑙𝑋𝑘)))
8683, 84, 85syl2anc 595 . 2 (𝜑 → ((𝐼𝐹𝑋) = 𝑋 ↔ ∀𝑙𝑀𝑘𝑁 (𝑙(𝐼𝐹𝑋)𝑘) = (𝑙𝑋𝑘)))
8779, 86mpbird 260 1 (𝜑 → (𝐼𝐹𝑋) = 𝑋)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 400  w3a 1102   = wceq 1569  wcel 2142  wne 2957  wral 3078  ifcif 4486  cotp 4596  cmpt 5191   × cxp 5658   Fn wfn 6531  wf 6532  cfv 6536  (class class class)co 7412  cmpo 7414  m cmap 8822  Fincfn 8941  Basecbs 17275  .rcmulr 17317  0gc0g 17498   Σg cgsu 17499  Mndcmnd 18798  1rcur 20269  Ringcrg 20321   maMul cmmul 22558
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1824  ax-4 1838  ax-5 1939  ax-6 1996  ax-7 2037  ax-8 2144  ax-9 2152  ax-10 2175  ax-11 2191  ax-12 2212  ax-ext 2734  ax-rep 5237  ax-sep 5256  ax-nul 5268  ax-pow 5335  ax-pr 5403  ax-un 7734  ax-cnex 11162  ax-resscn 11163  ax-1cn 11164  ax-icn 11165  ax-addcl 11166  ax-addrcl 11167  ax-mulcl 11168  ax-mulrcl 11169  ax-mulcom 11170  ax-addass 11171  ax-mulass 11172  ax-distr 11173  ax-i2m1 11174  ax-1ne0 11175  ax-1rid 11176  ax-rnegex 11177  ax-rrecex 11178  ax-cnre 11179  ax-pre-lttri 11180  ax-pre-lttrn 11181  ax-pre-ltadd 11182  ax-pre-mulgt0 11183
This proof depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1103  df-3an 1104  df-tru 1572  df-fal 1582  df-ex 1809  df-nf 1813  df-sb 2096  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-nel 3064  df-ral 3079  df-rex 3089  df-rmo 3368  df-reu 3369  df-rab 3416  df-v 3456  df-sbc 3744  df-csb 3853  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-pss 3924  df-nul 4286  df-if 4487  df-pw 4563  df-sn 4589  df-pr 4591  df-op 4595  df-ot 4597  df-uni 4872  df-int 4912  df-iun 4957  df-iin 4958  df-br 5109  df-opab 5173  df-mpt 5192  df-tr 5218  df-id 5555  df-eprel 5560  df-po 5568  df-so 5569  df-fr 5613  df-se 5614  df-we 5615  df-xp 5666  df-rel 5667  df-cnv 5668  df-co 5669  df-dm 5670  df-rn 5671  df-res 5672  df-ima 5673  df-pred 6302  df-ord 6363  df-on 6364  df-lim 6365  df-suc 6366  df-iota 6492  df-fun 6538  df-fn 6539  df-f 6540  df-f1 6541  df-fo 6542  df-f1o 6543  df-fv 6544  df-isom 6545  df-riota 7369  df-ov 7415  df-oprab 7416  df-mpo 7417  df-om 7861  df-1st 7984  df-2nd 7985  df-supp 8155  df-frecs 8276  df-wrecs 8307  df-recs 8356  df-rdg 8395  df-1o 8451  df-2o 8452  df-er 8692  df-map 8824  df-en 8942  df-dom 8943  df-sdom 8944  df-fin 8945  df-fsupp 9320  df-oi 9470  df-card 9932  df-pnf 11251  df-mnf 11252  df-xr 11253  df-ltxr 11254  df-le 11255  df-sub 11449  df-neg 11450  df-nn 12240  df-2 12309  df-n0 12511  df-z 12598  df-uz 12869  df-fz 13542  df-fzo 13690  df-seq 14045  df-hash 14374  df-sets 17230  df-slot 17248  df-ndx 17260  df-base 17276  df-ress 17297  df-plusg 17329  df-0g 17500  df-gsum 17501  df-mre 17644  df-mrc 17645  df-acs 17647  df-mgm 18704  df-sgrp 18783  df-mnd 18799  df-submnd 18848  df-grp 19009  df-minusg 19010  df-mulg 19140  df-cntz 19393  df-cmn 19858  df-abl 19859  df-mgp 20223  df-rng 20237  df-ur 20270  df-ring 20323  df-mamu 22559
This theorem is used by:  matring  22611  mat1  22615
  Copyright terms: Public domain W3C validator