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

Theorem mamulid 22664
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 486 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝑅 ∈ Ring)
6 mamumat1cl.m . . . . . 6 (𝜑𝑀 ∈ Fin)
76adantr 486 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝑀 ∈ Fin)
8 mamulid.n . . . . . 6 (𝜑𝑁 ∈ Fin)
98adantr 486 . . . . 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 22662 . . . . . 6 (𝜑𝐼 ∈ (𝐵m (𝑀 × 𝑀)))
1413adantr 486 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝐼 ∈ (𝐵m (𝑀 × 𝑀)))
15 mamulid.x . . . . . 6 (𝜑𝑋 ∈ (𝐵m (𝑀 × 𝑁)))
1615adantr 486 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝑋 ∈ (𝐵m (𝑀 × 𝑁)))
17 simprl 783 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝑙𝑀)
18 simprr 785 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝑘𝑁)
191, 2, 3, 5, 7, 7, 9, 14, 16, 17, 18mamufv 22617 . . . 4 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → (𝑙(𝐼𝐹𝑋)𝑘) = (𝑅 Σg (𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)))))
20 ringmnd 20383 . . . . . 6 (𝑅 ∈ Ring → 𝑅 ∈ Mnd)
215, 20syl 18 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → 𝑅 ∈ Mnd)
224ad2antrr 739 . . . . . . 7 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → 𝑅 ∈ Ring)
23 elmapi 8851 . . . . . . . . . 10 (𝐼 ∈ (𝐵m (𝑀 × 𝑀)) → 𝐼:(𝑀 × 𝑀)⟶𝐵)
2413, 23syl 18 . . . . . . . . 9 (𝜑𝐼:(𝑀 × 𝑀)⟶𝐵)
2524ad2antrr 739 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → 𝐼:(𝑀 × 𝑀)⟶𝐵)
26 simplrl 789 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → 𝑙𝑀)
27 simpr 490 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → 𝑚𝑀)
2825, 26, 27fovcdmd 7589 . . . . . . 7 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → (𝑙𝐼𝑚) ∈ 𝐵)
29 elmapi 8851 . . . . . . . . . 10 (𝑋 ∈ (𝐵m (𝑀 × 𝑁)) → 𝑋:(𝑀 × 𝑁)⟶𝐵)
3015, 29syl 18 . . . . . . . . 9 (𝜑𝑋:(𝑀 × 𝑁)⟶𝐵)
3130ad2antrr 739 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → 𝑋:(𝑀 × 𝑁)⟶𝐵)
32 simplrr 790 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → 𝑘𝑁)
3331, 27, 32fovcdmd 7589 . . . . . . 7 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → (𝑚𝑋𝑘) ∈ 𝐵)
342, 3ringcl 20390 . . . . . . 7 ((𝑅 ∈ Ring ∧ (𝑙𝐼𝑚) ∈ 𝐵 ∧ (𝑚𝑋𝑘) ∈ 𝐵) → ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)) ∈ 𝐵)
3522, 28, 33, 34syl3anc 1398 . . . . . 6 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)) ∈ 𝐵)
3635fmpttd 7111 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → (𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘))):𝑀𝐵)
37263adant3 1150 . . . . . . . . . 10 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → 𝑙𝑀)
38 simp2 1155 . . . . . . . . . 10 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → 𝑚𝑀)
392, 4, 10, 11, 12, 6mat1comp 22663 . . . . . . . . . . 11 ((𝑙𝑀𝑚𝑀) → (𝑙𝐼𝑚) = if(𝑙 = 𝑚, 1 , 0 ))
40 equcom 2051 . . . . . . . . . . . . 13 (𝑙 = 𝑚𝑚 = 𝑙)
4140a1i 11 . . . . . . . . . . . 12 ((𝑙𝑀𝑚𝑀) → (𝑙 = 𝑚𝑚 = 𝑙))
4241ifbid 4509 . . . . . . . . . . 11 ((𝑙𝑀𝑚𝑀) → if(𝑙 = 𝑚, 1 , 0 ) = if(𝑚 = 𝑙, 1 , 0 ))
4339, 42eqtrd 2797 . . . . . . . . . 10 ((𝑙𝑀𝑚𝑀) → (𝑙𝐼𝑚) = if(𝑚 = 𝑙, 1 , 0 ))
4437, 38, 43syl2anc 596 . . . . . . . . 9 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → (𝑙𝐼𝑚) = if(𝑚 = 𝑙, 1 , 0 ))
45 ifnefalse 4497 . . . . . . . . . 10 (𝑚𝑙 → if(𝑚 = 𝑙, 1 , 0 ) = 0 )
46453ad2ant3 1153 . . . . . . . . 9 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → if(𝑚 = 𝑙, 1 , 0 ) = 0 )
4744, 46eqtrd 2797 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → (𝑙𝐼𝑚) = 0 )
4847oveq1d 7431 . . . . . . 7 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)) = ( 0 (.r𝑅)(𝑚𝑋𝑘)))
492, 3, 11ringlz 20436 . . . . . . . . 9 ((𝑅 ∈ Ring ∧ (𝑚𝑋𝑘) ∈ 𝐵) → ( 0 (.r𝑅)(𝑚𝑋𝑘)) = 0 )
5022, 33, 49syl2anc 596 . . . . . . . 8 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀) → ( 0 (.r𝑅)(𝑚𝑋𝑘)) = 0 )
51503adant3 1150 . . . . . . 7 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → ( 0 (.r𝑅)(𝑚𝑋𝑘)) = 0 )
5248, 51eqtrd 2797 . . . . . 6 (((𝜑 ∧ (𝑙𝑀𝑘𝑁)) ∧ 𝑚𝑀𝑚𝑙) → ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)) = 0 )
5352, 7suppsssn 8202 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → ((𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘))) supp 0 ) ⊆ {𝑙})
542, 11, 21, 7, 17, 36, 53gsumpt 20090 . . . 4 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → (𝑅 Σg (𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)))) = ((𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)))‘𝑙))
55 oveq2 7424 . . . . . . . 8 (𝑚 = 𝑙 → (𝑙𝐼𝑚) = (𝑙𝐼𝑙))
56 oveq1 7423 . . . . . . . 8 (𝑚 = 𝑙 → (𝑚𝑋𝑘) = (𝑙𝑋𝑘))
5755, 56oveq12d 7434 . . . . . . 7 (𝑚 = 𝑙 → ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)) = ((𝑙𝐼𝑙)(.r𝑅)(𝑙𝑋𝑘)))
58 eqid 2762 . . . . . . 7 (𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘))) = (𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)))
59 ovex 7449 . . . . . . 7 ((𝑙𝐼𝑙)(.r𝑅)(𝑙𝑋𝑘)) ∈ V
6057, 58, 59fvmpt 6990 . . . . . 6 (𝑙𝑀 → ((𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)))‘𝑙) = ((𝑙𝐼𝑙)(.r𝑅)(𝑙𝑋𝑘)))
6160ad2antrl 741 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → ((𝑚𝑀 ↦ ((𝑙𝐼𝑚)(.r𝑅)(𝑚𝑋𝑘)))‘𝑙) = ((𝑙𝐼𝑙)(.r𝑅)(𝑙𝑋𝑘)))
62 equequ1 2058 . . . . . . . . . 10 (𝑖 = 𝑙 → (𝑖 = 𝑗𝑙 = 𝑗))
6362ifbid 4509 . . . . . . . . 9 (𝑖 = 𝑙 → if(𝑖 = 𝑗, 1 , 0 ) = if(𝑙 = 𝑗, 1 , 0 ))
64 equequ2 2059 . . . . . . . . . . 11 (𝑗 = 𝑙 → (𝑙 = 𝑗𝑙 = 𝑙))
6564ifbid 4509 . . . . . . . . . 10 (𝑗 = 𝑙 → if(𝑙 = 𝑗, 1 , 0 ) = if(𝑙 = 𝑙, 1 , 0 ))
66 equid 2045 . . . . . . . . . . 11 𝑙 = 𝑙
6766iftruei 4492 . . . . . . . . . 10 if(𝑙 = 𝑙, 1 , 0 ) = 1
6865, 67eqtrdi 2813 . . . . . . . . 9 (𝑗 = 𝑙 → if(𝑙 = 𝑗, 1 , 0 ) = 1 )
6910fvexi 6896 . . . . . . . . 9 1 ∈ V
7063, 68, 12, 69ovmpo 7576 . . . . . . . 8 ((𝑙𝑀𝑙𝑀) → (𝑙𝐼𝑙) = 1 )
7170anidms 577 . . . . . . 7 (𝑙𝑀 → (𝑙𝐼𝑙) = 1 )
7271ad2antrl 741 . . . . . 6 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → (𝑙𝐼𝑙) = 1 )
7372oveq1d 7431 . . . . 5 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → ((𝑙𝐼𝑙)(.r𝑅)(𝑙𝑋𝑘)) = ( 1 (.r𝑅)(𝑙𝑋𝑘)))
7430fovcdmda 7588 . . . . . 6 ((𝜑 ∧ (𝑙𝑀𝑘𝑁)) → (𝑙𝑋𝑘) ∈ 𝐵)
752, 3, 10ringlidm 20411 . . . . . 6 ((𝑅 ∈ Ring ∧ (𝑙𝑋𝑘) ∈ 𝐵) → ( 1 (.r𝑅)(𝑙𝑋𝑘)) = (𝑙𝑋𝑘))
765, 74, 75syl2anc 596 . . . . 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 22624 . . . . 5 (𝜑 → (𝐼𝐹𝑋) ∈ (𝐵m (𝑀 × 𝑁)))
81 elmapi 8851 . . . . 5 ((𝐼𝐹𝑋) ∈ (𝐵m (𝑀 × 𝑁)) → (𝐼𝐹𝑋):(𝑀 × 𝑁)⟶𝐵)
8280, 81syl 18 . . . 4 (𝜑 → (𝐼𝐹𝑋):(𝑀 × 𝑁)⟶𝐵)
8382ffnd 6707 . . 3 (𝜑 → (𝐼𝐹𝑋) Fn (𝑀 × 𝑁))
8430ffnd 6707 . . 3 (𝜑𝑋 Fn (𝑀 × 𝑁))
85 eqfnov2 7546 . . 3 (((𝐼𝐹𝑋) Fn (𝑀 × 𝑁) ∧ 𝑋 Fn (𝑀 × 𝑁)) → ((𝐼𝐹𝑋) = 𝑋 ↔ ∀𝑙𝑀𝑘𝑁 (𝑙(𝐼𝐹𝑋)𝑘) = (𝑙𝑋𝑘)))
8683, 84, 85syl2anc 596 . 2 (𝜑 → ((𝐼𝐹𝑋) = 𝑋 ↔ ∀𝑙𝑀𝑘𝑁 (𝑙(𝐼𝐹𝑋)𝑘) = (𝑙𝑋𝑘)))
8779, 86mpbird 260 1 (𝜑 → (𝐼𝐹𝑋) = 𝑋)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401  w3a 1103   = wceq 1570  wcel 2145  wne 2957  wral 3078  ifcif 4485  cotp 4595  cmpt 5190   × cxp 5657   Fn wfn 6532  wf 6533  cfv 6537  (class class class)co 7416  cmpo 7418  m cmap 8829  Fincfn 8955  Basecbs 17305  .rcmulr 17347  0gc0g 17528   Σg cgsu 17529  Mndcmnd 18838  1rcur 20321  Ringcrg 20373   maMul cmmul 22613
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2734  ax-rep 5236  ax-sep 5255  ax-nul 5267  ax-pow 5334  ax-pr 5402  ax-un 7739  ax-cnex 11183  ax-resscn 11184  ax-1cn 11185  ax-icn 11186  ax-addcl 11187  ax-addrcl 11188  ax-mulcl 11189  ax-mulrcl 11190  ax-mulcom 11191  ax-addass 11192  ax-mulass 11193  ax-distr 11194  ax-i2m1 11195  ax-1ne0 11196  ax-1rid 11197  ax-rnegex 11198  ax-rrecex 11199  ax-cnre 11200  ax-pre-lttri 11201  ax-pre-lttrn 11202  ax-pre-ltadd 11203  ax-pre-mulgt0 11204
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  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 3367  df-reu 3368  df-rab 3415  df-v 3455  df-sbc 3743  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-pss 3922  df-nul 4283  df-if 4486  df-pw 4562  df-sn 4588  df-pr 4590  df-op 4594  df-ot 4596  df-uni 4871  df-int 4911  df-iun 4956  df-iin 4957  df-br 5108  df-opab 5172  df-mpt 5191  df-tr 5217  df-id 5554  df-eprel 5559  df-po 5567  df-so 5568  df-fr 5612  df-se 5613  df-we 5614  df-xp 5665  df-rel 5666  df-cnv 5667  df-co 5668  df-dm 5669  df-rn 5670  df-res 5671  df-ima 5672  df-pred 6303  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-isom 6546  df-riota 7373  df-ov 7419  df-oprab 7420  df-mpo 7421  df-om 7866  df-1st 7989  df-2nd 7990  df-supp 8162  df-frecs 8283  df-wrecs 8314  df-recs 8363  df-rdg 8402  df-1o 8458  df-2o 8459  df-er 8699  df-map 8831  df-en 8956  df-dom 8957  df-sdom 8958  df-fin 8959  df-fsupp 9335  df-oi 9485  df-card 9947  df-pnf 11272  df-mnf 11273  df-xr 11274  df-ltxr 11275  df-le 11276  df-sub 11470  df-neg 11471  df-nn 12261  df-2 12330  df-n0 12532  df-z 12619  df-uz 12891  df-fz 13564  df-fzo 13712  df-seq 14068  df-hash 14397  df-sets 17260  df-slot 17278  df-ndx 17290  df-base 17306  df-ress 17327  df-plusg 17359  df-0g 17530  df-gsum 17531  df-mre 17674  df-mrc 17675  df-acs 17677  df-mgm 18734  df-sgrp 18823  df-mnd 18839  df-submnd 18893  df-grp 19061  df-minusg 19062  df-mulg 19192  df-cntz 19445  df-cmn 19910  df-abl 19911  df-mgp 20275  df-rng 20289  df-ur 20322  df-ring 20375  df-mamu 22614
This theorem is used by:  matring  22666  mat1  22670
  Copyright terms: Public domain W3C validator