Metamath Proof Explorer


Theorem pfxccatin12lem2

Description: Lemma 2 for pfxccatin12 . (Contributed by AV, 30-Mar-2018) (Revised by AV, 9-May-2020)

Ref Expression
Hypothesis swrdccatin2.l ⊢ L = A
Assertion pfxccatin12lem2 ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → A ++ B substr M N ⁡ K = B prefix N − L ⁡ K − A substr M L

Proof

Step Hyp Ref Expression
1 swrdccatin2.l ⊢ L = A
2 1 pfxccatin12lem2c ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → A ++ B ∈ Word V ∧ M ∈ 0 … N ∧ N ∈ 0 … A ++ B
3 simprl ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K ∈ 0 ..^ N − M
4 swrdfv ⊢ A ++ B ∈ Word V ∧ M ∈ 0 … N ∧ N ∈ 0 … A ++ B ∧ K ∈ 0 ..^ N − M → A ++ B substr M N ⁡ K = A ++ B ⁡ K + M
5 2 3 4 syl2an2r ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → A ++ B substr M N ⁡ K = A ++ B ⁡ K + M
6 elfzoelz ⊢ K ∈ 0 ..^ N − M → K ∈ ℤ
7 elfz2nn0 ⊢ M ∈ 0 … L ↔ M ∈ ℕ 0 ∧ L ∈ ℕ 0 ∧ M ≤ L
8 nn0cn ⊢ M ∈ ℕ 0 → M ∈ ℂ
9 nn0cn ⊢ L ∈ ℕ 0 → L ∈ ℂ
10 8 9 anim12i ⊢ M ∈ ℕ 0 ∧ L ∈ ℕ 0 → M ∈ ℂ ∧ L ∈ ℂ
11 zcn ⊢ K ∈ ℤ → K ∈ ℂ
12 subcl ⊢ L ∈ ℂ ∧ M ∈ ℂ → L − M ∈ ℂ
13 12 ancoms ⊢ M ∈ ℂ ∧ L ∈ ℂ → L − M ∈ ℂ
14 13 anim1ci ⊢ M ∈ ℂ ∧ L ∈ ℂ ∧ K ∈ ℂ → K ∈ ℂ ∧ L − M ∈ ℂ
15 subcl ⊢ K ∈ ℂ ∧ L − M ∈ ℂ → K − L − M ∈ ℂ
16 14 15 syl ⊢ M ∈ ℂ ∧ L ∈ ℂ ∧ K ∈ ℂ → K − L − M ∈ ℂ
17 16 addridd ⊢ M ∈ ℂ ∧ L ∈ ℂ ∧ K ∈ ℂ → K - L − M + 0 = K − L − M
18 simpr ⊢ M ∈ ℂ ∧ L ∈ ℂ ∧ K ∈ ℂ → K ∈ ℂ
19 simplr ⊢ M ∈ ℂ ∧ L ∈ ℂ ∧ K ∈ ℂ → L ∈ ℂ
20 simpll ⊢ M ∈ ℂ ∧ L ∈ ℂ ∧ K ∈ ℂ → M ∈ ℂ
21 18 19 20 subsub3d ⊢ M ∈ ℂ ∧ L ∈ ℂ ∧ K ∈ ℂ → K − L − M = K + M - L
22 17 21 eqtr2d ⊢ M ∈ ℂ ∧ L ∈ ℂ ∧ K ∈ ℂ → K + M - L = K - L − M + 0
23 10 11 22 syl2an ⊢ M ∈ ℕ 0 ∧ L ∈ ℕ 0 ∧ K ∈ ℤ → K + M - L = K - L − M + 0
24 oveq2 ⊢ A = L → K + M - A = K + M - L
25 24 eqcoms ⊢ L = A → K + M - A = K + M - L
26 25 eqeq1d ⊢ L = A → K + M - A = K - L − M + 0 ↔ K + M - L = K - L − M + 0
27 23 26 imbitrrid ⊢ L = A → M ∈ ℕ 0 ∧ L ∈ ℕ 0 ∧ K ∈ ℤ → K + M - A = K - L − M + 0
28 1 27 ax-mp ⊢ M ∈ ℕ 0 ∧ L ∈ ℕ 0 ∧ K ∈ ℤ → K + M - A = K - L − M + 0
29 28 ex ⊢ M ∈ ℕ 0 ∧ L ∈ ℕ 0 → K ∈ ℤ → K + M - A = K - L − M + 0
30 29 3adant3 ⊢ M ∈ ℕ 0 ∧ L ∈ ℕ 0 ∧ M ≤ L → K ∈ ℤ → K + M - A = K - L − M + 0
31 7 30 sylbi ⊢ M ∈ 0 … L → K ∈ ℤ → K + M - A = K - L − M + 0
32 31 ad2antrl ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → K ∈ ℤ → K + M - A = K - L − M + 0
33 6 32 syl5com ⊢ K ∈ 0 ..^ N − M → A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → K + M - A = K - L − M + 0
34 33 adantr ⊢ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → K + M - A = K - L − M + 0
35 34 impcom ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K + M - A = K - L − M + 0
36 35 fveq2d ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → B ⁡ K + M - A = B ⁡ K - L − M + 0
37 simpll ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → A ∈ Word V ∧ B ∈ Word V
38 pfxccatin12lem2a ⊢ M ∈ 0 … L ∧ N ∈ L … L + B → K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K + M ∈ L ..^ L + B
39 38 adantl ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K + M ∈ L ..^ L + B
40 39 imp ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K + M ∈ L ..^ L + B
41 id ⊢ A = L → A = L
42 oveq1 ⊢ A = L → A + B = L + B
43 41 42 oveq12d ⊢ A = L → A ..^ A + B = L ..^ L + B
44 43 eleq2d ⊢ A = L → K + M ∈ A ..^ A + B ↔ K + M ∈ L ..^ L + B
45 44 eqcoms ⊢ L = A → K + M ∈ A ..^ A + B ↔ K + M ∈ L ..^ L + B
46 1 45 ax-mp ⊢ K + M ∈ A ..^ A + B ↔ K + M ∈ L ..^ L + B
47 40 46 sylibr ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K + M ∈ A ..^ A + B
48 df-3an ⊢ A ∈ Word V ∧ B ∈ Word V ∧ K + M ∈ A ..^ A + B ↔ A ∈ Word V ∧ B ∈ Word V ∧ K + M ∈ A ..^ A + B
49 37 47 48 sylanbrc ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → A ∈ Word V ∧ B ∈ Word V ∧ K + M ∈ A ..^ A + B
50 ccatval2 ⊢ A ∈ Word V ∧ B ∈ Word V ∧ K + M ∈ A ..^ A + B → A ++ B ⁡ K + M = B ⁡ K + M - A
51 49 50 syl ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → A ++ B ⁡ K + M = B ⁡ K + M - A
52 simplr ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → B ∈ Word V
53 52 adantr ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → B ∈ Word V
54 lencl ⊢ B ∈ Word V → B ∈ ℕ 0
55 elfzel2 ⊢ M ∈ 0 … L → L ∈ ℤ
56 zsubcl ⊢ N ∈ ℤ ∧ L ∈ ℤ → N − L ∈ ℤ
57 56 ancoms ⊢ L ∈ ℤ ∧ N ∈ ℤ → N − L ∈ ℤ
58 57 adantr ⊢ L ∈ ℤ ∧ N ∈ ℤ ∧ L ≤ N → N − L ∈ ℤ
59 zre ⊢ N ∈ ℤ → N ∈ ℝ
60 zre ⊢ L ∈ ℤ → L ∈ ℝ
61 subge0 ⊢ N ∈ ℝ ∧ L ∈ ℝ → 0 ≤ N − L ↔ L ≤ N
62 59 60 61 syl2anr ⊢ L ∈ ℤ ∧ N ∈ ℤ → 0 ≤ N − L ↔ L ≤ N
63 62 biimprd ⊢ L ∈ ℤ ∧ N ∈ ℤ → L ≤ N → 0 ≤ N − L
64 63 imp ⊢ L ∈ ℤ ∧ N ∈ ℤ ∧ L ≤ N → 0 ≤ N − L
65 elnn0z ⊢ N − L ∈ ℕ 0 ↔ N − L ∈ ℤ ∧ 0 ≤ N − L
66 58 64 65 sylanbrc ⊢ L ∈ ℤ ∧ N ∈ ℤ ∧ L ≤ N → N − L ∈ ℕ 0
67 66 expcom ⊢ L ≤ N → L ∈ ℤ ∧ N ∈ ℤ → N − L ∈ ℕ 0
68 67 adantr ⊢ L ≤ N ∧ N ≤ L + B → L ∈ ℤ ∧ N ∈ ℤ → N − L ∈ ℕ 0
69 68 expcomd ⊢ L ≤ N ∧ N ≤ L + B → N ∈ ℤ → L ∈ ℤ → N − L ∈ ℕ 0
70 69 com12 ⊢ N ∈ ℤ → L ≤ N ∧ N ≤ L + B → L ∈ ℤ → N − L ∈ ℕ 0
71 70 3ad2ant3 ⊢ L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ → L ≤ N ∧ N ≤ L + B → L ∈ ℤ → N − L ∈ ℕ 0
72 71 imp ⊢ L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ ∧ L ≤ N ∧ N ≤ L + B → L ∈ ℤ → N − L ∈ ℕ 0
73 72 com12 ⊢ L ∈ ℤ → L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ ∧ L ≤ N ∧ N ≤ L + B → N − L ∈ ℕ 0
74 73 adantr ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 → L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ ∧ L ≤ N ∧ N ≤ L + B → N − L ∈ ℕ 0
75 74 imp ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 ∧ L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ ∧ L ≤ N ∧ N ≤ L + B → N − L ∈ ℕ 0
76 simplr ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 ∧ L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ ∧ L ≤ N ∧ N ≤ L + B → B ∈ ℕ 0
77 59 3ad2ant3 ⊢ L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ → N ∈ ℝ
78 77 adantl ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 ∧ L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ → N ∈ ℝ
79 60 adantr ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 → L ∈ ℝ
80 79 adantr ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 ∧ L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ → L ∈ ℝ
81 nn0re ⊢ B ∈ ℕ 0 → B ∈ ℝ
82 81 adantl ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 → B ∈ ℝ
83 82 adantr ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 ∧ L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ → B ∈ ℝ
84 lesubadd2 ⊢ N ∈ ℝ ∧ L ∈ ℝ ∧ B ∈ ℝ → N − L ≤ B ↔ N ≤ L + B
85 84 biimprd ⊢ N ∈ ℝ ∧ L ∈ ℝ ∧ B ∈ ℝ → N ≤ L + B → N − L ≤ B
86 78 80 83 85 syl3anc ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 ∧ L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ → N ≤ L + B → N − L ≤ B
87 86 ex ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 → L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ → N ≤ L + B → N − L ≤ B
88 87 com13 ⊢ N ≤ L + B → L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ → L ∈ ℤ ∧ B ∈ ℕ 0 → N − L ≤ B
89 88 adantl ⊢ L ≤ N ∧ N ≤ L + B → L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ → L ∈ ℤ ∧ B ∈ ℕ 0 → N − L ≤ B
90 89 impcom ⊢ L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ ∧ L ≤ N ∧ N ≤ L + B → L ∈ ℤ ∧ B ∈ ℕ 0 → N − L ≤ B
91 90 impcom ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 ∧ L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ ∧ L ≤ N ∧ N ≤ L + B → N − L ≤ B
92 75 76 91 3jca ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 ∧ L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ ∧ L ≤ N ∧ N ≤ L + B → N − L ∈ ℕ 0 ∧ B ∈ ℕ 0 ∧ N − L ≤ B
93 92 ex ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 → L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ ∧ L ≤ N ∧ N ≤ L + B → N − L ∈ ℕ 0 ∧ B ∈ ℕ 0 ∧ N − L ≤ B
94 elfz2 ⊢ N ∈ L … L + B ↔ L ∈ ℤ ∧ L + B ∈ ℤ ∧ N ∈ ℤ ∧ L ≤ N ∧ N ≤ L + B
95 elfz2nn0 ⊢ N − L ∈ 0 … B ↔ N − L ∈ ℕ 0 ∧ B ∈ ℕ 0 ∧ N − L ≤ B
96 93 94 95 3imtr4g ⊢ L ∈ ℤ ∧ B ∈ ℕ 0 → N ∈ L … L + B → N − L ∈ 0 … B
97 96 ex ⊢ L ∈ ℤ → B ∈ ℕ 0 → N ∈ L … L + B → N − L ∈ 0 … B
98 97 com23 ⊢ L ∈ ℤ → N ∈ L … L + B → B ∈ ℕ 0 → N − L ∈ 0 … B
99 55 98 syl ⊢ M ∈ 0 … L → N ∈ L … L + B → B ∈ ℕ 0 → N − L ∈ 0 … B
100 99 imp ⊢ M ∈ 0 … L ∧ N ∈ L … L + B → B ∈ ℕ 0 → N − L ∈ 0 … B
101 54 100 syl5com ⊢ B ∈ Word V → M ∈ 0 … L ∧ N ∈ L … L + B → N − L ∈ 0 … B
102 101 adantl ⊢ A ∈ Word V ∧ B ∈ Word V → M ∈ 0 … L ∧ N ∈ L … L + B → N − L ∈ 0 … B
103 102 imp ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → N − L ∈ 0 … B
104 103 adantr ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → N − L ∈ 0 … B
105 pfxccatin12lem1 ⊢ M ∈ 0 … L ∧ N ∈ L … L + B → K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K − L − M ∈ 0 ..^ N − L
106 105 adantl ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K − L − M ∈ 0 ..^ N − L
107 106 imp ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K − L − M ∈ 0 ..^ N − L
108 pfxfv ⊢ B ∈ Word V ∧ N − L ∈ 0 … B ∧ K − L − M ∈ 0 ..^ N − L → B prefix N − L ⁡ K − L − M = B ⁡ K − L − M
109 53 104 107 108 syl3anc ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → B prefix N − L ⁡ K − L − M = B ⁡ K − L − M
110 6 zcnd ⊢ K ∈ 0 ..^ N − M → K ∈ ℂ
111 110 ad2antrl ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K ∈ ℂ
112 55 zcnd ⊢ M ∈ 0 … L → L ∈ ℂ
113 112 ad2antrl ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → L ∈ ℂ
114 113 adantr ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → L ∈ ℂ
115 elfzelz ⊢ M ∈ 0 … L → M ∈ ℤ
116 115 zcnd ⊢ M ∈ 0 … L → M ∈ ℂ
117 116 ad2antrl ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → M ∈ ℂ
118 117 adantr ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → M ∈ ℂ
119 114 118 subcld ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → L − M ∈ ℂ
120 111 119 subcld ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K − L − M ∈ ℂ
121 120 addridd ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K - L − M + 0 = K − L − M
122 121 eqcomd ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K − L − M = K - L − M + 0
123 122 fveq2d ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → B ⁡ K − L − M = B ⁡ K - L − M + 0
124 109 123 eqtrd ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → B prefix N − L ⁡ K − L − M = B ⁡ K - L − M + 0
125 36 51 124 3eqtr4d ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → A ++ B ⁡ K + M = B prefix N − L ⁡ K − L − M
126 simpll ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → A ∈ Word V
127 simprl ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → M ∈ 0 … L
128 lencl ⊢ A ∈ Word V → A ∈ ℕ 0
129 elnn0uz ⊢ A ∈ ℕ 0 ↔ A ∈ ℤ ≥ 0
130 eluzfz2 ⊢ A ∈ ℤ ≥ 0 → A ∈ 0 … A
131 129 130 sylbi ⊢ A ∈ ℕ 0 → A ∈ 0 … A
132 1 131 eqeltrid ⊢ A ∈ ℕ 0 → L ∈ 0 … A
133 128 132 syl ⊢ A ∈ Word V → L ∈ 0 … A
134 133 adantr ⊢ A ∈ Word V ∧ B ∈ Word V → L ∈ 0 … A
135 134 adantr ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → L ∈ 0 … A
136 126 127 135 3jca ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → A ∈ Word V ∧ M ∈ 0 … L ∧ L ∈ 0 … A
137 136 adantr ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → A ∈ Word V ∧ M ∈ 0 … L ∧ L ∈ 0 … A
138 swrdlen ⊢ A ∈ Word V ∧ M ∈ 0 … L ∧ L ∈ 0 … A → A substr M L = L − M
139 137 138 syl ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → A substr M L = L − M
140 139 eqcomd ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → L − M = A substr M L
141 140 oveq2d ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → K − L − M = K − A substr M L
142 141 fveq2d ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → B prefix N − L ⁡ K − L − M = B prefix N − L ⁡ K − A substr M L
143 5 125 142 3eqtrd ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B ∧ K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → A ++ B substr M N ⁡ K = B prefix N − L ⁡ K − A substr M L
144 143 ex ⊢ A ∈ Word V ∧ B ∈ Word V ∧ M ∈ 0 … L ∧ N ∈ L … L + B → K ∈ 0 ..^ N − M ∧ ¬ K ∈ 0 ..^ L − M → A ++ B substr M N ⁡ K = B prefix N − L ⁡ K − A substr M L