Metamath Proof Explorer


Theorem ofcccat

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

Ref Expression
Hypotheses ofcccat.1 φFWordS
ofcccat.2 φGWordS
ofcccat.3 φKT
Assertion ofcccat φF++GfcRK=FfcRK++GfcRK

Proof

Step Hyp Ref Expression
1 ofcccat.1 φFWordS
2 ofcccat.2 φGWordS
3 ofcccat.3 φKT
4 fconst6g KT0..^F×K:0..^FT
5 iswrdi 0..^F×K:0..^FT0..^F×KWordT
6 3 4 5 3syl φ0..^F×KWordT
7 fconst6g KT0..^G×K:0..^GT
8 iswrdi 0..^G×K:0..^GT0..^G×KWordT
9 3 7 8 3syl φ0..^G×KWordT
10 fzofi 0..^FFin
11 snfi KFin
12 hashxp 0..^FFinKFin0..^F×K=0..^FK
13 10 11 12 mp2an 0..^F×K=0..^FK
14 lencl FWordSF0
15 hashfzo0 F00..^F=F
16 1 14 15 3syl φ0..^F=F
17 hashsng KTK=1
18 3 17 syl φK=1
19 16 18 oveq12d φ0..^FK=F1
20 1 14 syl φF0
21 20 nn0cnd φF
22 21 mulridd φF1=F
23 19 22 eqtrd φ0..^FK=F
24 13 23 eqtr2id φF=0..^F×K
25 fzofi 0..^GFin
26 hashxp 0..^GFinKFin0..^G×K=0..^GK
27 25 11 26 mp2an 0..^G×K=0..^GK
28 lencl GWordSG0
29 hashfzo0 G00..^G=G
30 2 28 29 3syl φ0..^G=G
31 30 18 oveq12d φ0..^GK=G1
32 2 28 syl φG0
33 32 nn0cnd φG
34 33 mulridd φG1=G
35 31 34 eqtrd φ0..^GK=G
36 27 35 eqtr2id φG=0..^G×K
37 1 2 6 9 24 36 ofccat φF++GRf0..^F×K++0..^G×K=FRf0..^F×K++GRf0..^G×K
38 ccatcl FWordSGWordSF++GWordS
39 1 2 38 syl2anc φF++GWordS
40 wrdf F++GWordSF++G:0..^F++GS
41 39 40 syl φF++G:0..^F++GS
42 ovexd φ0..^F++GV
43 41 42 3 ofcof φF++GfcRK=F++GRf0..^F++G×K
44 eqid 0..^F+G×K=0..^F+G×K
45 ccatlen FWordSGWordSF++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++GRf0..^F++G×K=F++GRf0..^F×K++0..^G×K
54 43 53 eqtrd φF++GfcRK=F++GRf0..^F×K++0..^G×K
55 wrdf FWordSF:0..^FS
56 1 55 syl φF:0..^FS
57 ovexd φ0..^FV
58 56 57 3 ofcof φFfcRK=FRf0..^F×K
59 wrdf GWordSG:0..^GS
60 2 59 syl φG:0..^GS
61 ovexd φ0..^GV
62 60 61 3 ofcof φGfcRK=GRf0..^G×K
63 58 62 oveq12d φFfcRK++GfcRK=FRf0..^F×K++GRf0..^G×K
64 37 54 63 3eqtr4d φF++GfcRK=FfcRK++GfcRK