Description: Mapping of words commutes with concatenation. (Contributed by Stefan O'Rear, 27-Aug-2015)
Ref | Expression | ||
---|---|---|---|
Assertion | ccatco | |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | lenco | |
|
2 | 1 | 3adant2 | |
3 | lenco | |
|
4 | 3 | 3adant1 | |
5 | 2 4 | oveq12d | |
6 | 5 | oveq2d | |
7 | 6 | mpteq1d | |
8 | 2 | oveq2d | |
9 | 8 | adantr | |
10 | 9 | eleq2d | |
11 | 10 | ifbid | |
12 | wrdf | |
|
13 | 12 | 3ad2ant1 | |
14 | 13 | adantr | |
15 | 14 | ffnd | |
16 | fvco2 | |
|
17 | 15 16 | sylan | |
18 | iftrue | |
|
19 | 18 | adantl | |
20 | 17 19 | eqtr4d | |
21 | wrdf | |
|
22 | 21 | 3ad2ant2 | |
23 | 22 | ad2antrr | |
24 | 23 | ffnd | |
25 | lencl | |
|
26 | 25 | nn0zd | |
27 | 26 | 3ad2ant1 | |
28 | fzospliti | |
|
29 | 28 | ancoms | |
30 | 27 29 | sylan | |
31 | 30 | orcanai | |
32 | lencl | |
|
33 | 32 | nn0zd | |
34 | 33 | 3ad2ant2 | |
35 | 34 | ad2antrr | |
36 | fzosubel3 | |
|
37 | 31 35 36 | syl2anc | |
38 | fvco2 | |
|
39 | 24 37 38 | syl2anc | |
40 | 2 | oveq2d | |
41 | 40 | fveq2d | |
42 | 41 | ad2antrr | |
43 | iffalse | |
|
44 | 43 | adantl | |
45 | 39 42 44 | 3eqtr4d | |
46 | 20 45 | ifeqda | |
47 | 11 46 | eqtrd | |
48 | 47 | mpteq2dva | |
49 | 7 48 | eqtr2d | |
50 | 14 | ffvelcdmda | |
51 | 23 37 | ffvelcdmd | |
52 | 50 51 | ifclda | |
53 | ccatfval | |
|
54 | 53 | 3adant3 | |
55 | simp3 | |
|
56 | 55 | feqmptd | |
57 | fveq2 | |
|
58 | fvif | |
|
59 | 57 58 | eqtrdi | |
60 | 52 54 56 59 | fmptco | |
61 | ffun | |
|
62 | 61 | 3ad2ant3 | |
63 | simp1 | |
|
64 | cofunexg | |
|
65 | 62 63 64 | syl2anc | |
66 | simp2 | |
|
67 | cofunexg | |
|
68 | 62 66 67 | syl2anc | |
69 | ccatfval | |
|
70 | 65 68 69 | syl2anc | |
71 | 49 60 70 | 3eqtr4d | |