Metamath Proof Explorer


Theorem marrepval

Description: Third substitution for the definition of the matrix row replacement function. (Contributed by AV, 12-Feb-2019)

Ref Expression
Hypotheses marrepfval.a ⊢ 𝐴 = ( 𝑁 Mat 𝑅 )
marrepfval.b ⊢ 𝐵 = ( Base ‘ 𝐴 )
marrepfval.q ⊢ 𝑄 = ( 𝑁 matRRep 𝑅 )
marrepfval.z ⊢ 0 = ( 0g ‘ 𝑅 )
Assertion marrepval ( ( ( 𝑀 ∈ 𝐵 ∧ 𝑆 ∈ ( Base ‘ 𝑅 ) ) ∧ ( 𝐾 ∈ 𝑁 ∧ 𝐿 ∈ 𝑁 ) ) → ( 𝐾 ( 𝑀 𝑄 𝑆 ) 𝐿 ) = ( 𝑖 ∈ 𝑁 , 𝑗 ∈ 𝑁 ↦ if ( 𝑖 = 𝐾 , if ( 𝑗 = 𝐿 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) ) )

Proof

Step Hyp Ref Expression
1 marrepfval.a ⊢ 𝐴 = ( 𝑁 Mat 𝑅 )
2 marrepfval.b ⊢ 𝐵 = ( Base ‘ 𝐴 )
3 marrepfval.q ⊢ 𝑄 = ( 𝑁 matRRep 𝑅 )
4 marrepfval.z ⊢ 0 = ( 0g ‘ 𝑅 )
5 1 2 3 4 marrepval0 ⊢ ( ( 𝑀 ∈ 𝐵 ∧ 𝑆 ∈ ( Base ‘ 𝑅 ) ) → ( 𝑀 𝑄 𝑆 ) = ( 𝑘 ∈ 𝑁 , 𝑙 ∈ 𝑁 ↦ ( 𝑖 ∈ 𝑁 , 𝑗 ∈ 𝑁 ↦ if ( 𝑖 = 𝑘 , if ( 𝑗 = 𝑙 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) ) ) )
6 5 adantr ⊢ ( ( ( 𝑀 ∈ 𝐵 ∧ 𝑆 ∈ ( Base ‘ 𝑅 ) ) ∧ ( 𝐾 ∈ 𝑁 ∧ 𝐿 ∈ 𝑁 ) ) → ( 𝑀 𝑄 𝑆 ) = ( 𝑘 ∈ 𝑁 , 𝑙 ∈ 𝑁 ↦ ( 𝑖 ∈ 𝑁 , 𝑗 ∈ 𝑁 ↦ if ( 𝑖 = 𝑘 , if ( 𝑗 = 𝑙 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) ) ) )
7 simprl ⊢ ( ( ( 𝑀 ∈ 𝐵 ∧ 𝑆 ∈ ( Base ‘ 𝑅 ) ) ∧ ( 𝐾 ∈ 𝑁 ∧ 𝐿 ∈ 𝑁 ) ) → 𝐾 ∈ 𝑁 )
8 simplrr ⊢ ( ( ( ( 𝑀 ∈ 𝐵 ∧ 𝑆 ∈ ( Base ‘ 𝑅 ) ) ∧ ( 𝐾 ∈ 𝑁 ∧ 𝐿 ∈ 𝑁 ) ) ∧ 𝑘 = 𝐾 ) → 𝐿 ∈ 𝑁 )
9 1 2 matrcl ⊢ ( 𝑀 ∈ 𝐵 → ( 𝑁 ∈ Fin ∧ 𝑅 ∈ V ) )
10 9 simpld ⊢ ( 𝑀 ∈ 𝐵 → 𝑁 ∈ Fin )
11 10 10 jca ⊢ ( 𝑀 ∈ 𝐵 → ( 𝑁 ∈ Fin ∧ 𝑁 ∈ Fin ) )
12 11 ad3antrrr ⊢ ( ( ( ( 𝑀 ∈ 𝐵 ∧ 𝑆 ∈ ( Base ‘ 𝑅 ) ) ∧ ( 𝐾 ∈ 𝑁 ∧ 𝐿 ∈ 𝑁 ) ) ∧ ( 𝑘 = 𝐾 ∧ 𝑙 = 𝐿 ) ) → ( 𝑁 ∈ Fin ∧ 𝑁 ∈ Fin ) )
13 mpoexga ⊢ ( ( 𝑁 ∈ Fin ∧ 𝑁 ∈ Fin ) → ( 𝑖 ∈ 𝑁 , 𝑗 ∈ 𝑁 ↦ if ( 𝑖 = 𝑘 , if ( 𝑗 = 𝑙 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) ) ∈ V )
14 12 13 syl ⊢ ( ( ( ( 𝑀 ∈ 𝐵 ∧ 𝑆 ∈ ( Base ‘ 𝑅 ) ) ∧ ( 𝐾 ∈ 𝑁 ∧ 𝐿 ∈ 𝑁 ) ) ∧ ( 𝑘 = 𝐾 ∧ 𝑙 = 𝐿 ) ) → ( 𝑖 ∈ 𝑁 , 𝑗 ∈ 𝑁 ↦ if ( 𝑖 = 𝑘 , if ( 𝑗 = 𝑙 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) ) ∈ V )
15 eqeq2 ⊢ ( 𝑘 = 𝐾 → ( 𝑖 = 𝑘 ↔ 𝑖 = 𝐾 ) )
16 15 adantr ⊢ ( ( 𝑘 = 𝐾 ∧ 𝑙 = 𝐿 ) → ( 𝑖 = 𝑘 ↔ 𝑖 = 𝐾 ) )
17 eqeq2 ⊢ ( 𝑙 = 𝐿 → ( 𝑗 = 𝑙 ↔ 𝑗 = 𝐿 ) )
18 17 ifbid ⊢ ( 𝑙 = 𝐿 → if ( 𝑗 = 𝑙 , 𝑆 , 0 ) = if ( 𝑗 = 𝐿 , 𝑆 , 0 ) )
19 18 adantl ⊢ ( ( 𝑘 = 𝐾 ∧ 𝑙 = 𝐿 ) → if ( 𝑗 = 𝑙 , 𝑆 , 0 ) = if ( 𝑗 = 𝐿 , 𝑆 , 0 ) )
20 16 19 ifbieq1d ⊢ ( ( 𝑘 = 𝐾 ∧ 𝑙 = 𝐿 ) → if ( 𝑖 = 𝑘 , if ( 𝑗 = 𝑙 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) = if ( 𝑖 = 𝐾 , if ( 𝑗 = 𝐿 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) )
21 20 mpoeq3dv ⊢ ( ( 𝑘 = 𝐾 ∧ 𝑙 = 𝐿 ) → ( 𝑖 ∈ 𝑁 , 𝑗 ∈ 𝑁 ↦ if ( 𝑖 = 𝑘 , if ( 𝑗 = 𝑙 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) ) = ( 𝑖 ∈ 𝑁 , 𝑗 ∈ 𝑁 ↦ if ( 𝑖 = 𝐾 , if ( 𝑗 = 𝐿 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) ) )
22 21 adantl ⊢ ( ( ( ( 𝑀 ∈ 𝐵 ∧ 𝑆 ∈ ( Base ‘ 𝑅 ) ) ∧ ( 𝐾 ∈ 𝑁 ∧ 𝐿 ∈ 𝑁 ) ) ∧ ( 𝑘 = 𝐾 ∧ 𝑙 = 𝐿 ) ) → ( 𝑖 ∈ 𝑁 , 𝑗 ∈ 𝑁 ↦ if ( 𝑖 = 𝑘 , if ( 𝑗 = 𝑙 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) ) = ( 𝑖 ∈ 𝑁 , 𝑗 ∈ 𝑁 ↦ if ( 𝑖 = 𝐾 , if ( 𝑗 = 𝐿 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) ) )
23 7 8 14 22 ovmpodv2 ⊢ ( ( ( 𝑀 ∈ 𝐵 ∧ 𝑆 ∈ ( Base ‘ 𝑅 ) ) ∧ ( 𝐾 ∈ 𝑁 ∧ 𝐿 ∈ 𝑁 ) ) → ( ( 𝑀 𝑄 𝑆 ) = ( 𝑘 ∈ 𝑁 , 𝑙 ∈ 𝑁 ↦ ( 𝑖 ∈ 𝑁 , 𝑗 ∈ 𝑁 ↦ if ( 𝑖 = 𝑘 , if ( 𝑗 = 𝑙 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) ) ) → ( 𝐾 ( 𝑀 𝑄 𝑆 ) 𝐿 ) = ( 𝑖 ∈ 𝑁 , 𝑗 ∈ 𝑁 ↦ if ( 𝑖 = 𝐾 , if ( 𝑗 = 𝐿 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) ) ) )
24 6 23 mpd ⊢ ( ( ( 𝑀 ∈ 𝐵 ∧ 𝑆 ∈ ( Base ‘ 𝑅 ) ) ∧ ( 𝐾 ∈ 𝑁 ∧ 𝐿 ∈ 𝑁 ) ) → ( 𝐾 ( 𝑀 𝑄 𝑆 ) 𝐿 ) = ( 𝑖 ∈ 𝑁 , 𝑗 ∈ 𝑁 ↦ if ( 𝑖 = 𝐾 , if ( 𝑗 = 𝐿 , 𝑆 , 0 ) , ( 𝑖 𝑀 𝑗 ) ) ) )