Users' Mathboxes Mathbox for Mario Carneiro < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  mrsubccat Structured version   Unicode version

Theorem mrsubccat 30108
Description: Substitution distributes over concatenation. (Contributed by Mario Carneiro, 18-Jul-2016.)
Hypotheses
Ref Expression
mrsubccat.s  |-  S  =  (mRSubst `  T )
mrsubccat.r  |-  R  =  (mREx `  T )
Assertion
Ref Expression
mrsubccat  |-  ( ( F  e.  ran  S  /\  X  e.  R  /\  Y  e.  R
)  ->  ( F `  ( X ++  Y ) )  =  ( ( F `  X ) ++  ( F `  Y
) ) )

Proof of Theorem mrsubccat
Dummy variables  f 
v are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 n0i 3709 . . . . . 6  |-  ( F  e.  ran  S  ->  -.  ran  S  =  (/) )
2 mrsubccat.s . . . . . . . . 9  |-  S  =  (mRSubst `  T )
3 fvprc 5819 . . . . . . . . 9  |-  ( -.  T  e.  _V  ->  (mRSubst `  T )  =  (/) )
42, 3syl5eq 2474 . . . . . . . 8  |-  ( -.  T  e.  _V  ->  S  =  (/) )
54rneqd 5024 . . . . . . 7  |-  ( -.  T  e.  _V  ->  ran 
S  =  ran  (/) )
6 rn0 5048 . . . . . . 7  |-  ran  (/)  =  (/)
75, 6syl6eq 2478 . . . . . 6  |-  ( -.  T  e.  _V  ->  ran 
S  =  (/) )
81, 7nsyl2 130 . . . . 5  |-  ( F  e.  ran  S  ->  T  e.  _V )
9 eqid 2428 . . . . . 6  |-  (mVR `  T )  =  (mVR
`  T )
10 mrsubccat.r . . . . . 6  |-  R  =  (mREx `  T )
119, 10, 2mrsubff 30102 . . . . 5  |-  ( T  e.  _V  ->  S : ( R  ^pm  (mVR `  T ) ) --> ( R  ^m  R
) )
12 ffun 5691 . . . . 5  |-  ( S : ( R  ^pm  (mVR `  T ) ) --> ( R  ^m  R
)  ->  Fun  S )
138, 11, 123syl 18 . . . 4  |-  ( F  e.  ran  S  ->  Fun  S )
149, 10, 2mrsubrn 30103 . . . . . 6  |-  ran  S  =  ( S "
( R  ^m  (mVR `  T ) ) )
1514eleq2i 2498 . . . . 5  |-  ( F  e.  ran  S  <->  F  e.  ( S " ( R  ^m  (mVR `  T
) ) ) )
1615biimpi 197 . . . 4  |-  ( F  e.  ran  S  ->  F  e.  ( S " ( R  ^m  (mVR `  T ) ) ) )
17 fvelima 5877 . . . 4  |-  ( ( Fun  S  /\  F  e.  ( S " ( R  ^m  (mVR `  T
) ) ) )  ->  E. f  e.  ( R  ^m  (mVR `  T ) ) ( S `  f )  =  F )
1813, 16, 17syl2anc 665 . . 3  |-  ( F  e.  ran  S  ->  E. f  e.  ( R  ^m  (mVR `  T
) ) ( S `
 f )  =  F )
19 simprl 762 . . . . . . . . . . . 12  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  X  e.  R )
20 elfvex 5852 . . . . . . . . . . . . . 14  |-  ( X  e.  (mREx `  T
)  ->  T  e.  _V )
2120, 10eleq2s 2524 . . . . . . . . . . . . 13  |-  ( X  e.  R  ->  T  e.  _V )
22 eqid 2428 . . . . . . . . . . . . . 14  |-  (mCN `  T )  =  (mCN
`  T )
2322, 9, 10mrexval 30091 . . . . . . . . . . . . 13  |-  ( T  e.  _V  ->  R  = Word  ( (mCN `  T
)  u.  (mVR `  T ) ) )
2419, 21, 233syl 18 . . . . . . . . . . . 12  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  R  = Word  ( (mCN `  T )  u.  (mVR `  T )
) )
2519, 24eleqtrd 2508 . . . . . . . . . . 11  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  X  e. Word  ( (mCN `  T )  u.  (mVR `  T )
) )
26 simprr 764 . . . . . . . . . . . 12  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  Y  e.  R )
2726, 24eleqtrd 2508 . . . . . . . . . . 11  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  Y  e. Word  ( (mCN `  T )  u.  (mVR `  T )
) )
28 elmapi 7448 . . . . . . . . . . . . . . . . 17  |-  ( f  e.  ( R  ^m  (mVR `  T ) )  ->  f : (mVR
`  T ) --> R )
2928adantr 466 . . . . . . . . . . . . . . . 16  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  f :
(mVR `  T ) --> R )
3029adantr 466 . . . . . . . . . . . . . . 15  |-  ( ( ( f  e.  ( R  ^m  (mVR `  T ) )  /\  ( X  e.  R  /\  Y  e.  R
) )  /\  v  e.  ( (mCN `  T
)  u.  (mVR `  T ) ) )  ->  f : (mVR
`  T ) --> R )
3130ffvelrnda 5981 . . . . . . . . . . . . . 14  |-  ( ( ( ( f  e.  ( R  ^m  (mVR `  T ) )  /\  ( X  e.  R  /\  Y  e.  R
) )  /\  v  e.  ( (mCN `  T
)  u.  (mVR `  T ) ) )  /\  v  e.  (mVR
`  T ) )  ->  ( f `  v )  e.  R
)
3224ad2antrr 730 . . . . . . . . . . . . . 14  |-  ( ( ( ( f  e.  ( R  ^m  (mVR `  T ) )  /\  ( X  e.  R  /\  Y  e.  R
) )  /\  v  e.  ( (mCN `  T
)  u.  (mVR `  T ) ) )  /\  v  e.  (mVR
`  T ) )  ->  R  = Word  (
(mCN `  T )  u.  (mVR `  T )
) )
3331, 32eleqtrd 2508 . . . . . . . . . . . . 13  |-  ( ( ( ( f  e.  ( R  ^m  (mVR `  T ) )  /\  ( X  e.  R  /\  Y  e.  R
) )  /\  v  e.  ( (mCN `  T
)  u.  (mVR `  T ) ) )  /\  v  e.  (mVR
`  T ) )  ->  ( f `  v )  e. Word  (
(mCN `  T )  u.  (mVR `  T )
) )
34 simplr 760 . . . . . . . . . . . . . 14  |-  ( ( ( ( f  e.  ( R  ^m  (mVR `  T ) )  /\  ( X  e.  R  /\  Y  e.  R
) )  /\  v  e.  ( (mCN `  T
)  u.  (mVR `  T ) ) )  /\  -.  v  e.  (mVR `  T )
)  ->  v  e.  ( (mCN `  T )  u.  (mVR `  T )
) )
3534s1cld 12690 . . . . . . . . . . . . 13  |-  ( ( ( ( f  e.  ( R  ^m  (mVR `  T ) )  /\  ( X  e.  R  /\  Y  e.  R
) )  /\  v  e.  ( (mCN `  T
)  u.  (mVR `  T ) ) )  /\  -.  v  e.  (mVR `  T )
)  ->  <" v ">  e. Word  ( (mCN `  T )  u.  (mVR `  T ) ) )
3633, 35ifclda 3886 . . . . . . . . . . . 12  |-  ( ( ( f  e.  ( R  ^m  (mVR `  T ) )  /\  ( X  e.  R  /\  Y  e.  R
) )  /\  v  e.  ( (mCN `  T
)  u.  (mVR `  T ) ) )  ->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> )  e. Word  ( (mCN `  T )  u.  (mVR `  T ) ) )
37 eqid 2428 . . . . . . . . . . . 12  |-  ( v  e.  ( (mCN `  T )  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  =  ( v  e.  ( (mCN `  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )
3836, 37fmptd 6005 . . . . . . . . . . 11  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) ) : ( (mCN `  T
)  u.  (mVR `  T ) ) -->Word  ( (mCN `  T )  u.  (mVR `  T )
) )
39 ccatco 12878 . . . . . . . . . . 11  |-  ( ( X  e. Word  ( (mCN
`  T )  u.  (mVR `  T )
)  /\  Y  e. Word  ( (mCN `  T )  u.  (mVR `  T )
)  /\  ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) ) : ( (mCN `  T
)  u.  (mVR `  T ) ) -->Word  ( (mCN `  T )  u.  (mVR `  T )
) )  ->  (
( v  e.  ( (mCN `  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  ( X ++  Y ) )  =  ( ( ( v  e.  ( (mCN `  T )  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ++  ( ( v  e.  ( (mCN
`  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  Y
) ) )
4025, 27, 38, 39syl3anc 1264 . . . . . . . . . 10  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( (
v  e.  ( (mCN
`  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  ( X ++  Y ) )  =  ( ( ( v  e.  ( (mCN `  T )  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ++  ( ( v  e.  ( (mCN
`  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  Y
) ) )
4140oveq2d 6265 . . . . . . . . 9  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( (freeMnd `  ( (mCN `  T
)  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  ( X ++  Y ) ) )  =  ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( ( v  e.  ( (mCN `  T )  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ++  ( ( v  e.  ( (mCN
`  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  Y
) ) ) )
42 fvex 5835 . . . . . . . . . . . 12  |-  (mCN `  T )  e.  _V
43 fvex 5835 . . . . . . . . . . . 12  |-  (mVR `  T )  e.  _V
4442, 43unex 6547 . . . . . . . . . . 11  |-  ( (mCN
`  T )  u.  (mVR `  T )
)  e.  _V
45 eqid 2428 . . . . . . . . . . . 12  |-  (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) )  =  (freeMnd `  ( (mCN `  T
)  u.  (mVR `  T ) ) )
4645frmdmnd 16586 . . . . . . . . . . 11  |-  ( ( (mCN `  T )  u.  (mVR `  T )
)  e.  _V  ->  (freeMnd `  ( (mCN `  T
)  u.  (mVR `  T ) ) )  e.  Mnd )
4744, 46mp1i 13 . . . . . . . . . 10  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) )  e.  Mnd )
48 wrdco 12874 . . . . . . . . . . 11  |-  ( ( X  e. Word  ( (mCN
`  T )  u.  (mVR `  T )
)  /\  ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) ) : ( (mCN `  T
)  u.  (mVR `  T ) ) -->Word  ( (mCN `  T )  u.  (mVR `  T )
) )  ->  (
( v  e.  ( (mCN `  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  X
)  e. Word Word  ( (mCN `  T )  u.  (mVR `  T ) ) )
4925, 38, 48syl2anc 665 . . . . . . . . . 10  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( (
v  e.  ( (mCN
`  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  X
)  e. Word Word  ( (mCN `  T )  u.  (mVR `  T ) ) )
50 wrdco 12874 . . . . . . . . . . 11  |-  ( ( Y  e. Word  ( (mCN
`  T )  u.  (mVR `  T )
)  /\  ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) ) : ( (mCN `  T
)  u.  (mVR `  T ) ) -->Word  ( (mCN `  T )  u.  (mVR `  T )
) )  ->  (
( v  e.  ( (mCN `  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  Y
)  e. Word Word  ( (mCN `  T )  u.  (mVR `  T ) ) )
5127, 38, 50syl2anc 665 . . . . . . . . . 10  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( (
v  e.  ( (mCN
`  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  Y
)  e. Word Word  ( (mCN `  T )  u.  (mVR `  T ) ) )
52 eqid 2428 . . . . . . . . . . . . . 14  |-  ( Base `  (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) )  =  ( Base `  (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) )
5345, 52frmdbas 16579 . . . . . . . . . . . . 13  |-  ( ( (mCN `  T )  u.  (mVR `  T )
)  e.  _V  ->  (
Base `  (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) ) )  = Word  ( (mCN `  T
)  u.  (mVR `  T ) ) )
5444, 53ax-mp 5 . . . . . . . . . . . 12  |-  ( Base `  (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) )  = Word  ( (mCN
`  T )  u.  (mVR `  T )
)
5554eqcomi 2437 . . . . . . . . . . 11  |- Word  ( (mCN
`  T )  u.  (mVR `  T )
)  =  ( Base `  (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) )
56 eqid 2428 . . . . . . . . . . 11  |-  ( +g  `  (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) )  =  ( +g  `  (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) )
5755, 56gsumccat 16568 . . . . . . . . . 10  |-  ( ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) )  e.  Mnd  /\  (
( v  e.  ( (mCN `  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  X
)  e. Word Word  ( (mCN `  T )  u.  (mVR `  T ) )  /\  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y )  e. Word Word  ( (mCN
`  T )  u.  (mVR `  T )
) )  ->  (
(freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( ( v  e.  ( (mCN `  T )  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ++  ( ( v  e.  ( (mCN
`  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  Y
) ) )  =  ( ( (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) )  gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ) ( +g  `  (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) ) ) ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y ) ) ) )
5847, 49, 51, 57syl3anc 1264 . . . . . . . . 9  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( (freeMnd `  ( (mCN `  T
)  u.  (mVR `  T ) ) ) 
gsumg  ( ( ( v  e.  ( (mCN `  T )  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ++  ( ( v  e.  ( (mCN
`  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  Y
) ) )  =  ( ( (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) )  gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ) ( +g  `  (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) ) ) ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y ) ) ) )
5955gsumwcl 16567 . . . . . . . . . . 11  |-  ( ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) )  e.  Mnd  /\  (
( v  e.  ( (mCN `  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  X
)  e. Word Word  ( (mCN `  T )  u.  (mVR `  T ) ) )  ->  ( (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) )  gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) )  e. Word 
( (mCN `  T
)  u.  (mVR `  T ) ) )
6047, 49, 59syl2anc 665 . . . . . . . . . 10  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( (freeMnd `  ( (mCN `  T
)  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) )  e. Word 
( (mCN `  T
)  u.  (mVR `  T ) ) )
6155gsumwcl 16567 . . . . . . . . . . 11  |-  ( ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) )  e.  Mnd  /\  (
( v  e.  ( (mCN `  T )  u.  (mVR `  T )
)  |->  if ( v  e.  (mVR `  T
) ,  ( f `
 v ) , 
<" v "> ) )  o.  Y
)  e. Word Word  ( (mCN `  T )  u.  (mVR `  T ) ) )  ->  ( (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) )  gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y ) )  e. Word 
( (mCN `  T
)  u.  (mVR `  T ) ) )
6247, 51, 61syl2anc 665 . . . . . . . . . 10  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( (freeMnd `  ( (mCN `  T
)  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y ) )  e. Word 
( (mCN `  T
)  u.  (mVR `  T ) ) )
6345, 55, 56frmdadd 16582 . . . . . . . . . 10  |-  ( ( ( (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) )  gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) )  e. Word 
( (mCN `  T
)  u.  (mVR `  T ) )  /\  ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y ) )  e. Word 
( (mCN `  T
)  u.  (mVR `  T ) ) )  ->  ( ( (freeMnd `  ( (mCN `  T
)  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ) ( +g  `  (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) ) ) ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y ) ) )  =  ( ( (freeMnd `  ( (mCN `  T
)  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ) ++  ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y ) ) ) )
6460, 62, 63syl2anc 665 . . . . . . . . 9  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( (
(freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ) ( +g  `  (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) ) ) ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y ) ) )  =  ( ( (freeMnd `  ( (mCN `  T
)  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ) ++  ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y ) ) ) )
6541, 58, 643eqtrd 2466 . . . . . . . 8  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( (freeMnd `  ( (mCN `  T
)  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  ( X ++  Y ) ) )  =  ( ( (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) )  gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ) ++  ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y ) ) ) )
66 ssid 3426 . . . . . . . . . 10  |-  (mVR `  T )  C_  (mVR `  T )
6766a1i 11 . . . . . . . . 9  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  (mVR `  T
)  C_  (mVR `  T
) )
68 ccatcl 12668 . . . . . . . . . . 11  |-  ( ( X  e. Word  ( (mCN
`  T )  u.  (mVR `  T )
)  /\  Y  e. Word  ( (mCN `  T )  u.  (mVR `  T )
) )  ->  ( X ++  Y )  e. Word  (
(mCN `  T )  u.  (mVR `  T )
) )
6925, 27, 68syl2anc 665 . . . . . . . . . 10  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( X ++  Y )  e. Word  (
(mCN `  T )  u.  (mVR `  T )
) )
7069, 24eleqtrrd 2509 . . . . . . . . 9  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( X ++  Y )  e.  R
)
7122, 9, 10, 2, 45mrsubval 30099 . . . . . . . . 9  |-  ( ( f : (mVR `  T ) --> R  /\  (mVR `  T )  C_  (mVR `  T )  /\  ( X ++  Y )  e.  R )  ->  (
( S `  f
) `  ( X ++  Y ) )  =  ( (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) )  gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  ( X ++  Y ) ) ) )
7229, 67, 70, 71syl3anc 1264 . . . . . . . 8  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( ( S `  f ) `  ( X ++  Y ) )  =  ( (freeMnd `  ( (mCN `  T
)  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  ( X ++  Y ) ) ) )
7322, 9, 10, 2, 45mrsubval 30099 . . . . . . . . . 10  |-  ( ( f : (mVR `  T ) --> R  /\  (mVR `  T )  C_  (mVR `  T )  /\  X  e.  R )  ->  ( ( S `  f ) `  X
)  =  ( (freeMnd `  ( (mCN `  T
)  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ) )
7429, 67, 19, 73syl3anc 1264 . . . . . . . . 9  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( ( S `  f ) `  X )  =  ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ) )
7522, 9, 10, 2, 45mrsubval 30099 . . . . . . . . . 10  |-  ( ( f : (mVR `  T ) --> R  /\  (mVR `  T )  C_  (mVR `  T )  /\  Y  e.  R )  ->  ( ( S `  f ) `  Y
)  =  ( (freeMnd `  ( (mCN `  T
)  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y ) ) )
7629, 67, 26, 75syl3anc 1264 . . . . . . . . 9  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( ( S `  f ) `  Y )  =  ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y ) ) )
7774, 76oveq12d 6267 . . . . . . . 8  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( (
( S `  f
) `  X ) ++  ( ( S `  f ) `  Y
) )  =  ( ( (freeMnd `  (
(mCN `  T )  u.  (mVR `  T )
) )  gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  X ) ) ++  ( (freeMnd `  ( (mCN `  T )  u.  (mVR `  T ) ) ) 
gsumg  ( ( v  e.  ( (mCN `  T
)  u.  (mVR `  T ) )  |->  if ( v  e.  (mVR
`  T ) ,  ( f `  v
) ,  <" v "> ) )  o.  Y ) ) ) )
7865, 72, 773eqtr4d 2472 . . . . . . 7  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( ( S `  f ) `  ( X ++  Y ) )  =  ( ( ( S `  f
) `  X ) ++  ( ( S `  f ) `  Y
) ) )
79 fveq1 5824 . . . . . . . 8  |-  ( ( S `  f )  =  F  ->  (
( S `  f
) `  ( X ++  Y ) )  =  ( F `  ( X ++  Y ) ) )
80 fveq1 5824 . . . . . . . . 9  |-  ( ( S `  f )  =  F  ->  (
( S `  f
) `  X )  =  ( F `  X ) )
81 fveq1 5824 . . . . . . . . 9  |-  ( ( S `  f )  =  F  ->  (
( S `  f
) `  Y )  =  ( F `  Y ) )
8280, 81oveq12d 6267 . . . . . . . 8  |-  ( ( S `  f )  =  F  ->  (
( ( S `  f ) `  X
) ++  ( ( S `
 f ) `  Y ) )  =  ( ( F `  X ) ++  ( F `  Y ) ) )
8379, 82eqeq12d 2443 . . . . . . 7  |-  ( ( S `  f )  =  F  ->  (
( ( S `  f ) `  ( X ++  Y ) )  =  ( ( ( S `
 f ) `  X ) ++  ( ( S `  f ) `  Y ) )  <->  ( F `  ( X ++  Y ) )  =  ( ( F `  X ) ++  ( F `  Y
) ) ) )
8478, 83syl5ibcom 223 . . . . . 6  |-  ( ( f  e.  ( R  ^m  (mVR `  T
) )  /\  ( X  e.  R  /\  Y  e.  R )
)  ->  ( ( S `  f )  =  F  ->  ( F `
 ( X ++  Y
) )  =  ( ( F `  X
) ++  ( F `  Y ) ) ) )
8584ex 435 . . . . 5  |-  ( f  e.  ( R  ^m  (mVR `  T ) )  ->  ( ( X  e.  R  /\  Y  e.  R )  ->  (
( S `  f
)  =  F  -> 
( F `  ( X ++  Y ) )  =  ( ( F `  X ) ++  ( F `  Y ) ) ) ) )
8685com23 81 . . . 4  |-  ( f  e.  ( R  ^m  (mVR `  T ) )  ->  ( ( S `
 f )  =  F  ->  ( ( X  e.  R  /\  Y  e.  R )  ->  ( F `  ( X ++  Y ) )  =  ( ( F `  X ) ++  ( F `  Y ) ) ) ) )
8786rexlimiv 2850 . . 3  |-  ( E. f  e.  ( R  ^m  (mVR `  T
) ) ( S `
 f )  =  F  ->  ( ( X  e.  R  /\  Y  e.  R )  ->  ( F `  ( X ++  Y ) )  =  ( ( F `  X ) ++  ( F `  Y ) ) ) )
8818, 87syl 17 . 2  |-  ( F  e.  ran  S  -> 
( ( X  e.  R  /\  Y  e.  R )  ->  ( F `  ( X ++  Y ) )  =  ( ( F `  X ) ++  ( F `  Y ) ) ) )
89883impib 1203 1  |-  ( ( F  e.  ran  S  /\  X  e.  R  /\  Y  e.  R
)  ->  ( F `  ( X ++  Y ) )  =  ( ( F `  X ) ++  ( F `  Y
) ) )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    /\ wa 370    /\ w3a 982    = wceq 1437    e. wcel 1872   E.wrex 2715   _Vcvv 3022    u. cun 3377    C_ wss 3379   (/)c0 3704   ifcif 3854    |-> cmpt 4425   ran crn 4797   "cima 4799    o. ccom 4800   Fun wfun 5538   -->wf 5540   ` cfv 5544  (class class class)co 6249    ^m cmap 7427    ^pm cpm 7428  Word cword 12604   ++ cconcat 12606   <"cs1 12607   Basecbs 15064   +g cplusg 15133    gsumg cgsu 15282   Mndcmnd 16478  freeMndcfrmd 16574  mCNcmcn 30050  mVRcmvar 30051  mRExcmrex 30056  mRSubstcmrsub 30060
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1663  ax-4 1676  ax-5 1752  ax-6 1798  ax-7 1843  ax-8 1874  ax-9 1876  ax-10 1891  ax-11 1896  ax-12 1909  ax-13 2063  ax-ext 2408  ax-rep 4479  ax-sep 4489  ax-nul 4498  ax-pow 4545  ax-pr 4603  ax-un 6541  ax-cnex 9546  ax-resscn 9547  ax-1cn 9548  ax-icn 9549  ax-addcl 9550  ax-addrcl 9551  ax-mulcl 9552  ax-mulrcl 9553  ax-mulcom 9554  ax-addass 9555  ax-mulass 9556  ax-distr 9557  ax-i2m1 9558  ax-1ne0 9559  ax-1rid 9560  ax-rnegex 9561  ax-rrecex 9562  ax-cnre 9563  ax-pre-lttri 9564  ax-pre-lttrn 9565  ax-pre-ltadd 9566  ax-pre-mulgt0 9567
This theorem depends on definitions:  df-bi 188  df-or 371  df-an 372  df-3or 983  df-3an 984  df-tru 1440  df-ex 1658  df-nf 1662  df-sb 1791  df-eu 2280  df-mo 2281  df-clab 2415  df-cleq 2421  df-clel 2424  df-nfc 2558  df-ne 2601  df-nel 2602  df-ral 2719  df-rex 2720  df-reu 2721  df-rmo 2722  df-rab 2723  df-v 3024  df-sbc 3243  df-csb 3339  df-dif 3382  df-un 3384  df-in 3386  df-ss 3393  df-pss 3395  df-nul 3705  df-if 3855  df-pw 3926  df-sn 3942  df-pr 3944  df-tp 3946  df-op 3948  df-uni 4163  df-int 4199  df-iun 4244  df-br 4367  df-opab 4426  df-mpt 4427  df-tr 4462  df-eprel 4707  df-id 4711  df-po 4717  df-so 4718  df-fr 4755  df-we 4757  df-xp 4802  df-rel 4803  df-cnv 4804  df-co 4805  df-dm 4806  df-rn 4807  df-res 4808  df-ima 4809  df-pred 5342  df-ord 5388  df-on 5389  df-lim 5390  df-suc 5391  df-iota 5508  df-fun 5546  df-fn 5547  df-f 5548  df-f1 5549  df-fo 5550  df-f1o 5551  df-fv 5552  df-riota 6211  df-ov 6252  df-oprab 6253  df-mpt2 6254  df-om 6651  df-1st 6751  df-2nd 6752  df-wrecs 6983  df-recs 7045  df-rdg 7083  df-1o 7137  df-oadd 7141  df-er 7318  df-map 7429  df-pm 7430  df-en 7525  df-dom 7526  df-sdom 7527  df-fin 7528  df-card 8325  df-cda 8549  df-pnf 9628  df-mnf 9629  df-xr 9630  df-ltxr 9631  df-le 9632  df-sub 9813  df-neg 9814  df-nn 10561  df-2 10619  df-n0 10821  df-z 10889  df-uz 11111  df-fz 11736  df-fzo 11867  df-seq 12164  df-hash 12466  df-word 12612  df-concat 12614  df-s1 12615  df-struct 15066  df-ndx 15067  df-slot 15068  df-base 15069  df-sets 15070  df-ress 15071  df-plusg 15146  df-0g 15283  df-gsum 15284  df-mgm 16431  df-sgrp 16470  df-mnd 16480  df-submnd 16526  df-frmd 16576  df-mrex 30076  df-mrsub 30080
This theorem is referenced by:  elmrsubrn  30110  mrsubco  30111  mrsubvrs  30112
  Copyright terms: Public domain W3C validator