Metamath Proof Explorer


Theorem ofcccat

Description: Letterwise operations on word concatenations. (Contributed by Thierry Arnoux, 5-Oct-2018)

Ref Expression
Hypotheses ofcccat.1 φ F Word S
ofcccat.2 φ G Word S
ofcccat.3 φ K T
Assertion ofcccat φ F ++ G fc R K = F fc R K ++ G fc R K

Proof

Step Hyp Ref Expression
1 ofcccat.1 φ F Word S
2 ofcccat.2 φ G Word S
3 ofcccat.3 φ K T
4 fconst6g K T 0 ..^ F × K : 0 ..^ F T
5 iswrdi 0 ..^ F × K : 0 ..^ F T 0 ..^ F × K Word T
6 3 4 5 3syl φ 0 ..^ F × K Word T
7 fconst6g K T 0 ..^ G × K : 0 ..^ G T
8 iswrdi 0 ..^ G × K : 0 ..^ G T 0 ..^ G × K Word T
9 3 7 8 3syl φ 0 ..^ G × K Word T
10 fzofi 0 ..^ F Fin
11 snfi K Fin
12 hashxp 0 ..^ F Fin K Fin 0 ..^ F × K = 0 ..^ F K
13 10 11 12 mp2an 0 ..^ F × K = 0 ..^ F K
14 lencl F Word S F 0
15 hashfzo0 F 0 0 ..^ F = F
16 1 14 15 3syl φ 0 ..^ F = F
17 hashsng K T K = 1
18 3 17 syl φ K = 1
19 16 18 oveq12d φ 0 ..^ F K = F 1
20 1 14 syl φ F 0
21 20 nn0cnd φ F
22 21 mulid1d φ F 1 = F
23 19 22 eqtrd φ 0 ..^ F K = F
24 13 23 eqtr2id φ F = 0 ..^ F × K
25 fzofi 0 ..^ G Fin
26 hashxp 0 ..^ G Fin K Fin 0 ..^ G × K = 0 ..^ G K
27 25 11 26 mp2an 0 ..^ G × K = 0 ..^ G K
28 lencl G Word S G 0
29 hashfzo0 G 0 0 ..^ G = G
30 2 28 29 3syl φ 0 ..^ G = G
31 30 18 oveq12d φ 0 ..^ G K = G 1
32 2 28 syl φ G 0
33 32 nn0cnd φ G
34 33 mulid1d φ G 1 = G
35 31 34 eqtrd φ 0 ..^ G K = G
36 27 35 eqtr2id φ G = 0 ..^ G × K
37 1 2 6 9 24 36 ofccat φ F ++ G R f 0 ..^ F × K ++ 0 ..^ G × K = F R f 0 ..^ F × K ++ G R f 0 ..^ G × K
38 ccatcl F Word S G Word S F ++ G Word S
39 1 2 38 syl2anc φ F ++ G Word S
40 wrdf F ++ G Word S F ++ G : 0 ..^ F ++ G S
41 39 40 syl φ F ++ G : 0 ..^ F ++ G S
42 ovexd φ 0 ..^ F ++ G V
43 41 42 3 ofcof φ F ++ G fc R K = F ++ G R f 0 ..^ F ++ G × K
44 eqid 0 ..^ F + G × K = 0 ..^ F + G × K
45 ccatlen F Word S G Word S F ++ G = F + G
46 1 2 45 syl2anc φ F ++ G = F + G
47 46 oveq2d φ 0 ..^ F ++ G = 0 ..^ F + G
48 47 xpeq1d φ 0 ..^ F ++ G × K = 0 ..^ F + G × K
49 eqid 0 ..^ F × K = 0 ..^ F × K
50 eqid 0 ..^ G × K = 0 ..^ G × K
51 49 50 44 3 20 32 ccatmulgnn0dir φ 0 ..^ F × K ++ 0 ..^ G × K = 0 ..^ F + G × K
52 44 48 51 3eqtr4a φ 0 ..^ F ++ G × K = 0 ..^ F × K ++ 0 ..^ G × K
53 52 oveq2d φ F ++ G R f 0 ..^ F ++ G × K = F ++ G R f 0 ..^ F × K ++ 0 ..^ G × K
54 43 53 eqtrd φ F ++ G fc R K = F ++ G R f 0 ..^ F × K ++ 0 ..^ G × K
55 wrdf F Word S F : 0 ..^ F S
56 1 55 syl φ F : 0 ..^ F S
57 ovexd φ 0 ..^ F V
58 56 57 3 ofcof φ F fc R K = F R f 0 ..^ F × K
59 wrdf G Word S G : 0 ..^ G S
60 2 59 syl φ G : 0 ..^ G S
61 ovexd φ 0 ..^ G V
62 60 61 3 ofcof φ G fc R K = G R f 0 ..^ G × K
63 58 62 oveq12d φ F fc R K ++ G fc R K = F R f 0 ..^ F × K ++ G R f 0 ..^ G × K
64 37 54 63 3eqtr4d φ F ++ G fc R K = F fc R K ++ G fc R K