Metamath Proof Explorer


Theorem mrsubccat

Description: Substitution distributes over concatenation. (Contributed by Mario Carneiro, 18-Jul-2016)

Ref Expression
Hypotheses mrsubccat.s S=mRSubstT
mrsubccat.r R=mRExT
Assertion mrsubccat FranSXRYRFX++Y=FX++FY

Proof

Step Hyp Ref Expression
1 mrsubccat.s S=mRSubstT
2 mrsubccat.r R=mRExT
3 n0i FranS¬ranS=
4 1 rnfvprc ¬TVranS=
5 3 4 nsyl2 FranSTV
6 eqid mVRT=mVRT
7 6 2 1 mrsubff TVS:R𝑝𝑚mVRTRR
8 ffun S:R𝑝𝑚mVRTRRFunS
9 5 7 8 3syl FranSFunS
10 6 2 1 mrsubrn ranS=SRmVRT
11 10 eleq2i FranSFSRmVRT
12 11 biimpi FranSFSRmVRT
13 fvelima FunSFSRmVRTfRmVRTSf=F
14 9 12 13 syl2anc FranSfRmVRTSf=F
15 simprl fRmVRTXRYRXR
16 elfvex XmRExTTV
17 16 2 eleq2s XRTV
18 eqid mCNT=mCNT
19 18 6 2 mrexval TVR=WordmCNTmVRT
20 15 17 19 3syl fRmVRTXRYRR=WordmCNTmVRT
21 15 20 eleqtrd fRmVRTXRYRXWordmCNTmVRT
22 simprr fRmVRTXRYRYR
23 22 20 eleqtrd fRmVRTXRYRYWordmCNTmVRT
24 elmapi fRmVRTf:mVRTR
25 24 adantr fRmVRTXRYRf:mVRTR
26 25 adantr fRmVRTXRYRvmCNTmVRTf:mVRTR
27 26 ffvelcdmda fRmVRTXRYRvmCNTmVRTvmVRTfvR
28 20 ad2antrr fRmVRTXRYRvmCNTmVRTvmVRTR=WordmCNTmVRT
29 27 28 eleqtrd fRmVRTXRYRvmCNTmVRTvmVRTfvWordmCNTmVRT
30 simplr fRmVRTXRYRvmCNTmVRT¬vmVRTvmCNTmVRT
31 30 s1cld fRmVRTXRYRvmCNTmVRT¬vmVRT⟨“v”⟩WordmCNTmVRT
32 29 31 ifclda fRmVRTXRYRvmCNTmVRTifvmVRTfv⟨“v”⟩WordmCNTmVRT
33 32 fmpttd fRmVRTXRYRvmCNTmVRTifvmVRTfv⟨“v”⟩:mCNTmVRTWordmCNTmVRT
34 ccatco XWordmCNTmVRTYWordmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩:mCNTmVRTWordmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X++Y=vmCNTmVRTifvmVRTfv⟨“v”⟩X++vmCNTmVRTifvmVRTfv⟨“v”⟩Y
35 21 23 33 34 syl3anc fRmVRTXRYRvmCNTmVRTifvmVRTfv⟨“v”⟩X++Y=vmCNTmVRTifvmVRTfv⟨“v”⟩X++vmCNTmVRTifvmVRTfv⟨“v”⟩Y
36 35 oveq2d fRmVRTXRYRfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X++Y=freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X++vmCNTmVRTifvmVRTfv⟨“v”⟩Y
37 fvex mCNTV
38 fvex mVRTV
39 37 38 unex mCNTmVRTV
40 eqid freeMndmCNTmVRT=freeMndmCNTmVRT
41 40 frmdmnd mCNTmVRTVfreeMndmCNTmVRTMnd
42 39 41 mp1i fRmVRTXRYRfreeMndmCNTmVRTMnd
43 wrdco XWordmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩:mCNTmVRTWordmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩XWordWordmCNTmVRT
44 21 33 43 syl2anc fRmVRTXRYRvmCNTmVRTifvmVRTfv⟨“v”⟩XWordWordmCNTmVRT
45 wrdco YWordmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩:mCNTmVRTWordmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩YWordWordmCNTmVRT
46 23 33 45 syl2anc fRmVRTXRYRvmCNTmVRTifvmVRTfv⟨“v”⟩YWordWordmCNTmVRT
47 eqid BasefreeMndmCNTmVRT=BasefreeMndmCNTmVRT
48 40 47 frmdbas mCNTmVRTVBasefreeMndmCNTmVRT=WordmCNTmVRT
49 39 48 ax-mp BasefreeMndmCNTmVRT=WordmCNTmVRT
50 49 eqcomi WordmCNTmVRT=BasefreeMndmCNTmVRT
51 eqid +freeMndmCNTmVRT=+freeMndmCNTmVRT
52 50 51 gsumccat freeMndmCNTmVRTMndvmCNTmVRTifvmVRTfv⟨“v”⟩XWordWordmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩YWordWordmCNTmVRTfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X++vmCNTmVRTifvmVRTfv⟨“v”⟩Y=freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X+freeMndmCNTmVRTfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩Y
53 42 44 46 52 syl3anc fRmVRTXRYRfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X++vmCNTmVRTifvmVRTfv⟨“v”⟩Y=freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X+freeMndmCNTmVRTfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩Y
54 50 gsumwcl freeMndmCNTmVRTMndvmCNTmVRTifvmVRTfv⟨“v”⟩XWordWordmCNTmVRTfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩XWordmCNTmVRT
55 42 44 54 syl2anc fRmVRTXRYRfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩XWordmCNTmVRT
56 50 gsumwcl freeMndmCNTmVRTMndvmCNTmVRTifvmVRTfv⟨“v”⟩YWordWordmCNTmVRTfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩YWordmCNTmVRT
57 42 46 56 syl2anc fRmVRTXRYRfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩YWordmCNTmVRT
58 40 50 51 frmdadd freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩XWordmCNTmVRTfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩YWordmCNTmVRTfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X+freeMndmCNTmVRTfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩Y=freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X++freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩Y
59 55 57 58 syl2anc fRmVRTXRYRfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X+freeMndmCNTmVRTfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩Y=freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X++freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩Y
60 36 53 59 3eqtrd fRmVRTXRYRfreeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X++Y=freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X++freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩Y
61 ssidd fRmVRTXRYRmVRTmVRT
62 ccatcl XWordmCNTmVRTYWordmCNTmVRTX++YWordmCNTmVRT
63 21 23 62 syl2anc fRmVRTXRYRX++YWordmCNTmVRT
64 63 20 eleqtrrd fRmVRTXRYRX++YR
65 18 6 2 1 40 mrsubval f:mVRTRmVRTmVRTX++YRSfX++Y=freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X++Y
66 25 61 64 65 syl3anc fRmVRTXRYRSfX++Y=freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X++Y
67 18 6 2 1 40 mrsubval f:mVRTRmVRTmVRTXRSfX=freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X
68 25 61 15 67 syl3anc fRmVRTXRYRSfX=freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X
69 18 6 2 1 40 mrsubval f:mVRTRmVRTmVRTYRSfY=freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩Y
70 25 61 22 69 syl3anc fRmVRTXRYRSfY=freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩Y
71 68 70 oveq12d fRmVRTXRYRSfX++SfY=freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩X++freeMndmCNTmVRTvmCNTmVRTifvmVRTfv⟨“v”⟩Y
72 60 66 71 3eqtr4d fRmVRTXRYRSfX++Y=SfX++SfY
73 fveq1 Sf=FSfX++Y=FX++Y
74 fveq1 Sf=FSfX=FX
75 fveq1 Sf=FSfY=FY
76 74 75 oveq12d Sf=FSfX++SfY=FX++FY
77 73 76 eqeq12d Sf=FSfX++Y=SfX++SfYFX++Y=FX++FY
78 72 77 syl5ibcom fRmVRTXRYRSf=FFX++Y=FX++FY
79 78 ex fRmVRTXRYRSf=FFX++Y=FX++FY
80 79 com23 fRmVRTSf=FXRYRFX++Y=FX++FY
81 80 rexlimiv fRmVRTSf=FXRYRFX++Y=FX++FY
82 14 81 syl FranSXRYRFX++Y=FX++FY
83 82 3impib FranSXRYRFX++Y=FX++FY