MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  repswccat Structured version   Unicode version

Theorem repswccat 12732
Description: The concatenation of two "repeated symbol words" with the same symbol is again a "repeated symbol word". (Contributed by AV, 4-Nov-2018.)
Assertion
Ref Expression
repswccat  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  (
( S repeatS  N ) concat  ( S repeatS  M ) )  =  ( S repeatS  ( N  +  M ) ) )

Proof of Theorem repswccat
Dummy variable  x is distinct from all other variables.
StepHypRef Expression
1 repswlen 12723 . . . . . 6  |-  ( ( S  e.  V  /\  N  e.  NN0 )  -> 
( # `  ( S repeatS  N ) )  =  N )
213adant3 1016 . . . . 5  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  ( # `
 ( S repeatS  N
) )  =  N )
3 repswlen 12723 . . . . . 6  |-  ( ( S  e.  V  /\  M  e.  NN0 )  -> 
( # `  ( S repeatS  M ) )  =  M )
433adant2 1015 . . . . 5  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  ( # `
 ( S repeatS  M
) )  =  M )
52, 4oveq12d 6312 . . . 4  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  (
( # `  ( S repeatS  N ) )  +  ( # `  ( S repeatS  M ) ) )  =  ( N  +  M ) )
65oveq2d 6310 . . 3  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  (
0..^ ( ( # `  ( S repeatS  N )
)  +  ( # `  ( S repeatS  M )
) ) )  =  ( 0..^ ( N  +  M ) ) )
7 simp1 996 . . . . . . . 8  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  S  e.  V )
87adantr 465 . . . . . . 7  |-  ( ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  /\  x  e.  (
0..^ ( # `  ( S repeatS  N ) ) ) )  ->  S  e.  V )
9 simpl2 1000 . . . . . . 7  |-  ( ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  /\  x  e.  (
0..^ ( # `  ( S repeatS  N ) ) ) )  ->  N  e.  NN0 )
102oveq2d 6310 . . . . . . . . 9  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  (
0..^ ( # `  ( S repeatS  N ) ) )  =  ( 0..^ N ) )
1110eleq2d 2537 . . . . . . . 8  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  (
x  e.  ( 0..^ ( # `  ( S repeatS  N ) ) )  <-> 
x  e.  ( 0..^ N ) ) )
1211biimpa 484 . . . . . . 7  |-  ( ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  /\  x  e.  (
0..^ ( # `  ( S repeatS  N ) ) ) )  ->  x  e.  ( 0..^ N ) )
138, 9, 123jca 1176 . . . . . 6  |-  ( ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  /\  x  e.  (
0..^ ( # `  ( S repeatS  N ) ) ) )  ->  ( S  e.  V  /\  N  e. 
NN0  /\  x  e.  ( 0..^ N ) ) )
1413adantlr 714 . . . . 5  |-  ( ( ( ( S  e.  V  /\  N  e. 
NN0  /\  M  e.  NN0 )  /\  x  e.  ( 0..^ ( (
# `  ( S repeatS  N ) )  +  (
# `  ( S repeatS  M ) ) ) ) )  /\  x  e.  ( 0..^ ( # `  ( S repeatS  N )
) ) )  -> 
( S  e.  V  /\  N  e.  NN0  /\  x  e.  ( 0..^ N ) ) )
15 repswsymb 12721 . . . . 5  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  x  e.  ( 0..^ N ) )  ->  ( ( S repeatS  N ) `  x
)  =  S )
1614, 15syl 16 . . . 4  |-  ( ( ( ( S  e.  V  /\  N  e. 
NN0  /\  M  e.  NN0 )  /\  x  e.  ( 0..^ ( (
# `  ( S repeatS  N ) )  +  (
# `  ( S repeatS  M ) ) ) ) )  /\  x  e.  ( 0..^ ( # `  ( S repeatS  N )
) ) )  -> 
( ( S repeatS  N
) `  x )  =  S )
177ad2antrr 725 . . . . 5  |-  ( ( ( ( S  e.  V  /\  N  e. 
NN0  /\  M  e.  NN0 )  /\  x  e.  ( 0..^ ( (
# `  ( S repeatS  N ) )  +  (
# `  ( S repeatS  M ) ) ) ) )  /\  -.  x  e.  ( 0..^ ( # `  ( S repeatS  N )
) ) )  ->  S  e.  V )
18 simpll3 1037 . . . . 5  |-  ( ( ( ( S  e.  V  /\  N  e. 
NN0  /\  M  e.  NN0 )  /\  x  e.  ( 0..^ ( (
# `  ( S repeatS  N ) )  +  (
# `  ( S repeatS  M ) ) ) ) )  /\  -.  x  e.  ( 0..^ ( # `  ( S repeatS  N )
) ) )  ->  M  e.  NN0 )
192, 4jca 532 . . . . . . . 8  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  (
( # `  ( S repeatS  N ) )  =  N  /\  ( # `  ( S repeatS  M )
)  =  M ) )
20 simpr 461 . . . . . . . . . . . . . 14  |-  ( ( ( N  e.  NN0  /\  M  e.  NN0 )  /\  x  e.  (
0..^ ( N  +  M ) ) )  ->  x  e.  ( 0..^ ( N  +  M ) ) )
2120anim1i 568 . . . . . . . . . . . . 13  |-  ( ( ( ( N  e. 
NN0  /\  M  e.  NN0 )  /\  x  e.  ( 0..^ ( N  +  M ) ) )  /\  -.  x  e.  ( 0..^ N ) )  ->  ( x  e.  ( 0..^ ( N  +  M ) )  /\  -.  x  e.  ( 0..^ N ) ) )
22 nn0z 10897 . . . . . . . . . . . . . . 15  |-  ( N  e.  NN0  ->  N  e.  ZZ )
23 nn0z 10897 . . . . . . . . . . . . . . 15  |-  ( M  e.  NN0  ->  M  e.  ZZ )
2422, 23anim12i 566 . . . . . . . . . . . . . 14  |-  ( ( N  e.  NN0  /\  M  e.  NN0 )  -> 
( N  e.  ZZ  /\  M  e.  ZZ ) )
2524ad2antrr 725 . . . . . . . . . . . . 13  |-  ( ( ( ( N  e. 
NN0  /\  M  e.  NN0 )  /\  x  e.  ( 0..^ ( N  +  M ) ) )  /\  -.  x  e.  ( 0..^ N ) )  ->  ( N  e.  ZZ  /\  M  e.  ZZ ) )
26 fzocatel 11858 . . . . . . . . . . . . 13  |-  ( ( ( x  e.  ( 0..^ ( N  +  M ) )  /\  -.  x  e.  (
0..^ N ) )  /\  ( N  e.  ZZ  /\  M  e.  ZZ ) )  -> 
( x  -  N
)  e.  ( 0..^ M ) )
2721, 25, 26syl2anc 661 . . . . . . . . . . . 12  |-  ( ( ( ( N  e. 
NN0  /\  M  e.  NN0 )  /\  x  e.  ( 0..^ ( N  +  M ) ) )  /\  -.  x  e.  ( 0..^ N ) )  ->  ( x  -  N )  e.  ( 0..^ M ) )
2827ex 434 . . . . . . . . . . 11  |-  ( ( ( N  e.  NN0  /\  M  e.  NN0 )  /\  x  e.  (
0..^ ( N  +  M ) ) )  ->  ( -.  x  e.  ( 0..^ N )  ->  ( x  -  N )  e.  ( 0..^ M ) ) )
2928ex 434 . . . . . . . . . 10  |-  ( ( N  e.  NN0  /\  M  e.  NN0 )  -> 
( x  e.  ( 0..^ ( N  +  M ) )  -> 
( -.  x  e.  ( 0..^ N )  ->  ( x  -  N )  e.  ( 0..^ M ) ) ) )
30293adant1 1014 . . . . . . . . 9  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  (
x  e.  ( 0..^ ( N  +  M
) )  ->  ( -.  x  e.  (
0..^ N )  -> 
( x  -  N
)  e.  ( 0..^ M ) ) ) )
31 oveq12 6303 . . . . . . . . . . . 12  |-  ( ( ( # `  ( S repeatS  N ) )  =  N  /\  ( # `  ( S repeatS  M )
)  =  M )  ->  ( ( # `  ( S repeatS  N )
)  +  ( # `  ( S repeatS  M )
) )  =  ( N  +  M ) )
3231oveq2d 6310 . . . . . . . . . . 11  |-  ( ( ( # `  ( S repeatS  N ) )  =  N  /\  ( # `  ( S repeatS  M )
)  =  M )  ->  ( 0..^ ( ( # `  ( S repeatS  N ) )  +  ( # `  ( S repeatS  M ) ) ) )  =  ( 0..^ ( N  +  M
) ) )
3332eleq2d 2537 . . . . . . . . . 10  |-  ( ( ( # `  ( S repeatS  N ) )  =  N  /\  ( # `  ( S repeatS  M )
)  =  M )  ->  ( x  e.  ( 0..^ ( (
# `  ( S repeatS  N ) )  +  (
# `  ( S repeatS  M ) ) ) )  <-> 
x  e.  ( 0..^ ( N  +  M
) ) ) )
34 oveq2 6302 . . . . . . . . . . . . . 14  |-  ( (
# `  ( S repeatS  N ) )  =  N  ->  ( 0..^ (
# `  ( S repeatS  N ) ) )  =  ( 0..^ N ) )
3534eleq2d 2537 . . . . . . . . . . . . 13  |-  ( (
# `  ( S repeatS  N ) )  =  N  ->  ( x  e.  ( 0..^ ( # `  ( S repeatS  N )
) )  <->  x  e.  ( 0..^ N ) ) )
3635notbid 294 . . . . . . . . . . . 12  |-  ( (
# `  ( S repeatS  N ) )  =  N  ->  ( -.  x  e.  ( 0..^ ( # `  ( S repeatS  N )
) )  <->  -.  x  e.  ( 0..^ N ) ) )
3736adantr 465 . . . . . . . . . . 11  |-  ( ( ( # `  ( S repeatS  N ) )  =  N  /\  ( # `  ( S repeatS  M )
)  =  M )  ->  ( -.  x  e.  ( 0..^ ( # `  ( S repeatS  N )
) )  <->  -.  x  e.  ( 0..^ N ) ) )
38 oveq2 6302 . . . . . . . . . . . . 13  |-  ( (
# `  ( S repeatS  N ) )  =  N  ->  ( x  -  ( # `  ( S repeatS  N ) ) )  =  ( x  -  N ) )
3938eleq1d 2536 . . . . . . . . . . . 12  |-  ( (
# `  ( S repeatS  N ) )  =  N  ->  ( ( x  -  ( # `  ( S repeatS  N ) ) )  e.  ( 0..^ M )  <->  ( x  -  N )  e.  ( 0..^ M ) ) )
4039adantr 465 . . . . . . . . . . 11  |-  ( ( ( # `  ( S repeatS  N ) )  =  N  /\  ( # `  ( S repeatS  M )
)  =  M )  ->  ( ( x  -  ( # `  ( S repeatS  N ) ) )  e.  ( 0..^ M )  <->  ( x  -  N )  e.  ( 0..^ M ) ) )
4137, 40imbi12d 320 . . . . . . . . . 10  |-  ( ( ( # `  ( S repeatS  N ) )  =  N  /\  ( # `  ( S repeatS  M )
)  =  M )  ->  ( ( -.  x  e.  ( 0..^ ( # `  ( S repeatS  N ) ) )  ->  ( x  -  ( # `  ( S repeatS  N ) ) )  e.  ( 0..^ M ) )  <->  ( -.  x  e.  ( 0..^ N )  ->  (
x  -  N )  e.  ( 0..^ M ) ) ) )
4233, 41imbi12d 320 . . . . . . . . 9  |-  ( ( ( # `  ( S repeatS  N ) )  =  N  /\  ( # `  ( S repeatS  M )
)  =  M )  ->  ( ( x  e.  ( 0..^ ( ( # `  ( S repeatS  N ) )  +  ( # `  ( S repeatS  M ) ) ) )  ->  ( -.  x  e.  ( 0..^ ( # `  ( S repeatS  N ) ) )  ->  ( x  -  ( # `  ( S repeatS  N ) ) )  e.  ( 0..^ M ) ) )  <->  ( x  e.  ( 0..^ ( N  +  M ) )  ->  ( -.  x  e.  ( 0..^ N )  ->  ( x  -  N )  e.  ( 0..^ M ) ) ) ) )
4330, 42syl5ibr 221 . . . . . . . 8  |-  ( ( ( # `  ( S repeatS  N ) )  =  N  /\  ( # `  ( S repeatS  M )
)  =  M )  ->  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e. 
NN0 )  ->  (
x  e.  ( 0..^ ( ( # `  ( S repeatS  N ) )  +  ( # `  ( S repeatS  M ) ) ) )  ->  ( -.  x  e.  ( 0..^ ( # `  ( S repeatS  N ) ) )  ->  ( x  -  ( # `  ( S repeatS  N ) ) )  e.  ( 0..^ M ) ) ) ) )
4419, 43mpcom 36 . . . . . . 7  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  (
x  e.  ( 0..^ ( ( # `  ( S repeatS  N ) )  +  ( # `  ( S repeatS  M ) ) ) )  ->  ( -.  x  e.  ( 0..^ ( # `  ( S repeatS  N ) ) )  ->  ( x  -  ( # `  ( S repeatS  N ) ) )  e.  ( 0..^ M ) ) ) )
4544imp 429 . . . . . 6  |-  ( ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  /\  x  e.  (
0..^ ( ( # `  ( S repeatS  N )
)  +  ( # `  ( S repeatS  M )
) ) ) )  ->  ( -.  x  e.  ( 0..^ ( # `  ( S repeatS  N )
) )  ->  (
x  -  ( # `  ( S repeatS  N )
) )  e.  ( 0..^ M ) ) )
4645imp 429 . . . . 5  |-  ( ( ( ( S  e.  V  /\  N  e. 
NN0  /\  M  e.  NN0 )  /\  x  e.  ( 0..^ ( (
# `  ( S repeatS  N ) )  +  (
# `  ( S repeatS  M ) ) ) ) )  /\  -.  x  e.  ( 0..^ ( # `  ( S repeatS  N )
) ) )  -> 
( x  -  ( # `
 ( S repeatS  N
) ) )  e.  ( 0..^ M ) )
47 repswsymb 12721 . . . . 5  |-  ( ( S  e.  V  /\  M  e.  NN0  /\  (
x  -  ( # `  ( S repeatS  N )
) )  e.  ( 0..^ M ) )  ->  ( ( S repeatS  M ) `  (
x  -  ( # `  ( S repeatS  N )
) ) )  =  S )
4817, 18, 46, 47syl3anc 1228 . . . 4  |-  ( ( ( ( S  e.  V  /\  N  e. 
NN0  /\  M  e.  NN0 )  /\  x  e.  ( 0..^ ( (
# `  ( S repeatS  N ) )  +  (
# `  ( S repeatS  M ) ) ) ) )  /\  -.  x  e.  ( 0..^ ( # `  ( S repeatS  N )
) ) )  -> 
( ( S repeatS  M
) `  ( x  -  ( # `  ( S repeatS  N ) ) ) )  =  S )
4916, 48ifeqda 3977 . . 3  |-  ( ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  /\  x  e.  (
0..^ ( ( # `  ( S repeatS  N )
)  +  ( # `  ( S repeatS  M )
) ) ) )  ->  if ( x  e.  ( 0..^ (
# `  ( S repeatS  N ) ) ) ,  ( ( S repeatS  N
) `  x ) ,  ( ( S repeatS  M ) `  (
x  -  ( # `  ( S repeatS  N )
) ) ) )  =  S )
506, 49mpteq12dva 4529 . 2  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  (
x  e.  ( 0..^ ( ( # `  ( S repeatS  N ) )  +  ( # `  ( S repeatS  M ) ) ) )  |->  if ( x  e.  ( 0..^ (
# `  ( S repeatS  N ) ) ) ,  ( ( S repeatS  N
) `  x ) ,  ( ( S repeatS  M ) `  (
x  -  ( # `  ( S repeatS  N )
) ) ) ) )  =  ( x  e.  ( 0..^ ( N  +  M ) )  |->  S ) )
51 ovex 6319 . . . 4  |-  ( S repeatS  N )  e.  _V
52 ovex 6319 . . . 4  |-  ( S repeatS  M )  e.  _V
5351, 52pm3.2i 455 . . 3  |-  ( ( S repeatS  N )  e.  _V  /\  ( S repeatS  M )  e.  _V )
54 ccatfval 12567 . . 3  |-  ( ( ( S repeatS  N )  e.  _V  /\  ( S repeatS  M )  e.  _V )  ->  ( ( S repeatS  N ) concat  ( S repeatS  M
) )  =  ( x  e.  ( 0..^ ( ( # `  ( S repeatS  N ) )  +  ( # `  ( S repeatS  M ) ) ) )  |->  if ( x  e.  ( 0..^ (
# `  ( S repeatS  N ) ) ) ,  ( ( S repeatS  N
) `  x ) ,  ( ( S repeatS  M ) `  (
x  -  ( # `  ( S repeatS  N )
) ) ) ) ) )
5553, 54mp1i 12 . 2  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  (
( S repeatS  N ) concat  ( S repeatS  M ) )  =  ( x  e.  ( 0..^ ( ( # `  ( S repeatS  N )
)  +  ( # `  ( S repeatS  M )
) ) )  |->  if ( x  e.  ( 0..^ ( # `  ( S repeatS  N ) ) ) ,  ( ( S repeatS  N ) `  x
) ,  ( ( S repeatS  M ) `  (
x  -  ( # `  ( S repeatS  N )
) ) ) ) ) )
56 nn0addcl 10841 . . . 4  |-  ( ( N  e.  NN0  /\  M  e.  NN0 )  -> 
( N  +  M
)  e.  NN0 )
57563adant1 1014 . . 3  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  ( N  +  M )  e.  NN0 )
58 reps 12717 . . 3  |-  ( ( S  e.  V  /\  ( N  +  M
)  e.  NN0 )  ->  ( S repeatS  ( N  +  M ) )  =  ( x  e.  ( 0..^ ( N  +  M ) )  |->  S ) )
597, 57, 58syl2anc 661 . 2  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  ( S repeatS  ( N  +  M
) )  =  ( x  e.  ( 0..^ ( N  +  M
) )  |->  S ) )
6050, 55, 593eqtr4d 2518 1  |-  ( ( S  e.  V  /\  N  e.  NN0  /\  M  e.  NN0 )  ->  (
( S repeatS  N ) concat  ( S repeatS  M ) )  =  ( S repeatS  ( N  +  M ) ) )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 184    /\ wa 369    /\ w3a 973    = wceq 1379    e. wcel 1767   _Vcvv 3118   ifcif 3944    |-> cmpt 4510   ` cfv 5593  (class class class)co 6294   0cc0 9502    + caddc 9505    - cmin 9815   NN0cn0 10805   ZZcz 10874  ..^cfzo 11802   #chash 12383   concat cconcat 12512   repeatS creps 12517
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1601  ax-4 1612  ax-5 1680  ax-6 1719  ax-7 1739  ax-8 1769  ax-9 1771  ax-10 1786  ax-11 1791  ax-12 1803  ax-13 1968  ax-ext 2445  ax-rep 4563  ax-sep 4573  ax-nul 4581  ax-pow 4630  ax-pr 4691  ax-un 6586  ax-cnex 9558  ax-resscn 9559  ax-1cn 9560  ax-icn 9561  ax-addcl 9562  ax-addrcl 9563  ax-mulcl 9564  ax-mulrcl 9565  ax-mulcom 9566  ax-addass 9567  ax-mulass 9568  ax-distr 9569  ax-i2m1 9570  ax-1ne0 9571  ax-1rid 9572  ax-rnegex 9573  ax-rrecex 9574  ax-cnre 9575  ax-pre-lttri 9576  ax-pre-lttrn 9577  ax-pre-ltadd 9578  ax-pre-mulgt0 9579
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 974  df-3an 975  df-tru 1382  df-ex 1597  df-nf 1600  df-sb 1712  df-eu 2279  df-mo 2280  df-clab 2453  df-cleq 2459  df-clel 2462  df-nfc 2617  df-ne 2664  df-nel 2665  df-ral 2822  df-rex 2823  df-reu 2824  df-rab 2826  df-v 3120  df-sbc 3337  df-csb 3441  df-dif 3484  df-un 3486  df-in 3488  df-ss 3495  df-pss 3497  df-nul 3791  df-if 3945  df-pw 4017  df-sn 4033  df-pr 4035  df-tp 4037  df-op 4039  df-uni 4251  df-int 4288  df-iun 4332  df-br 4453  df-opab 4511  df-mpt 4512  df-tr 4546  df-eprel 4796  df-id 4800  df-po 4805  df-so 4806  df-fr 4843  df-we 4845  df-ord 4886  df-on 4887  df-lim 4888  df-suc 4889  df-xp 5010  df-rel 5011  df-cnv 5012  df-co 5013  df-dm 5014  df-rn 5015  df-res 5016  df-ima 5017  df-iota 5556  df-fun 5595  df-fn 5596  df-f 5597  df-f1 5598  df-fo 5599  df-f1o 5600  df-fv 5601  df-riota 6255  df-ov 6297  df-oprab 6298  df-mpt2 6299  df-om 6695  df-1st 6794  df-2nd 6795  df-recs 7052  df-rdg 7086  df-1o 7140  df-er 7321  df-en 7527  df-dom 7528  df-sdom 7529  df-fin 7530  df-card 8330  df-pnf 9640  df-mnf 9641  df-xr 9642  df-ltxr 9643  df-le 9644  df-sub 9817  df-neg 9818  df-nn 10547  df-n0 10806  df-z 10875  df-uz 11093  df-fz 11683  df-fzo 11803  df-hash 12384  df-concat 12520  df-reps 12525
This theorem is referenced by:  repswcshw  12755  repsw2  12863  repsw3  12864
  Copyright terms: Public domain W3C validator