Metamath Proof Explorer


Theorem splfv1

Description: Symbols to the left of a splice are unaffected. (Contributed by Stefan O'Rear, 23-Aug-2015) (Proof shortened by AV, 15-Oct-2022)

Ref Expression
Hypotheses spllen.s φ S Word A
spllen.f φ F 0 T
spllen.t φ T 0 S
spllen.r φ R Word A
splfv1.x φ X 0 ..^ F
Assertion splfv1 φ S splice F T R X = S X

Proof

Step Hyp Ref Expression
1 spllen.s φ S Word A
2 spllen.f φ F 0 T
3 spllen.t φ T 0 S
4 spllen.r φ R Word A
5 splfv1.x φ X 0 ..^ F
6 splval S Word A F 0 T T 0 S R Word A S splice F T R = S prefix F ++ R ++ S substr T S
7 1 2 3 4 6 syl13anc φ S splice F T R = S prefix F ++ R ++ S substr T S
8 7 fveq1d φ S splice F T R X = S prefix F ++ R ++ S substr T S X
9 pfxcl S Word A S prefix F Word A
10 1 9 syl φ S prefix F Word A
11 ccatcl S prefix F Word A R Word A S prefix F ++ R Word A
12 10 4 11 syl2anc φ S prefix F ++ R Word A
13 swrdcl S Word A S substr T S Word A
14 1 13 syl φ S substr T S Word A
15 elfzelz F 0 T F
16 2 15 syl φ F
17 16 uzidd φ F F
18 lencl R Word A R 0
19 4 18 syl φ R 0
20 uzaddcl F F R 0 F + R F
21 17 19 20 syl2anc φ F + R F
22 fzoss2 F + R F 0 ..^ F 0 ..^ F + R
23 21 22 syl φ 0 ..^ F 0 ..^ F + R
24 23 5 sseldd φ X 0 ..^ F + R
25 ccatlen S prefix F Word A R Word A S prefix F ++ R = S prefix F + R
26 10 4 25 syl2anc φ S prefix F ++ R = S prefix F + R
27 fzass4 F 0 S T F S F 0 T T 0 S
28 27 biimpri F 0 T T 0 S F 0 S T F S
29 28 simpld F 0 T T 0 S F 0 S
30 2 3 29 syl2anc φ F 0 S
31 pfxlen S Word A F 0 S S prefix F = F
32 1 30 31 syl2anc φ S prefix F = F
33 32 oveq1d φ S prefix F + R = F + R
34 26 33 eqtrd φ S prefix F ++ R = F + R
35 34 oveq2d φ 0 ..^ S prefix F ++ R = 0 ..^ F + R
36 24 35 eleqtrrd φ X 0 ..^ S prefix F ++ R
37 ccatval1 S prefix F ++ R Word A S substr T S Word A X 0 ..^ S prefix F ++ R S prefix F ++ R ++ S substr T S X = S prefix F ++ R X
38 12 14 36 37 syl3anc φ S prefix F ++ R ++ S substr T S X = S prefix F ++ R X
39 32 oveq2d φ 0 ..^ S prefix F = 0 ..^ F
40 5 39 eleqtrrd φ X 0 ..^ S prefix F
41 ccatval1 S prefix F Word A R Word A X 0 ..^ S prefix F S prefix F ++ R X = S prefix F X
42 10 4 40 41 syl3anc φ S prefix F ++ R X = S prefix F X
43 pfxfv S Word A F 0 S X 0 ..^ F S prefix F X = S X
44 1 30 5 43 syl3anc φ S prefix F X = S X
45 42 44 eqtrd φ S prefix F ++ R X = S X
46 8 38 45 3eqtrd φ S splice F T R X = S X