Metamath Proof Explorer


Theorem swrdswrd

Description: A subword of a subword is a subword. (Contributed by Alexander van der Vekens, 4-Apr-2018)

Ref Expression
Assertion swrdswrd ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N → K ∈ 0 … N − M ∧ L ∈ K … N − M → W substr M N substr K L = W substr M + K M + L

Proof

Step Hyp Ref Expression
1 swrdcl ⊢ W ∈ Word V → W substr M N ∈ Word V
2 1 3ad2ant1 ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N → W substr M N ∈ Word V
3 2 adantr ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → W substr M N ∈ Word V
4 elfz0ubfz0 ⊢ K ∈ 0 … N − M ∧ L ∈ K … N − M → K ∈ 0 … L
5 4 adantl ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → K ∈ 0 … L
6 elfzuz ⊢ K ∈ 0 … N − M → K ∈ ℤ ≥ 0
7 6 adantl ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M → K ∈ ℤ ≥ 0
8 fzss1 ⊢ K ∈ ℤ ≥ 0 → K … N − M ⊆ 0 … N − M
9 7 8 syl ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M → K … N − M ⊆ 0 … N − M
10 9 sseld ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M → L ∈ K … N − M → L ∈ 0 … N − M
11 10 impr ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → L ∈ 0 … N − M
12 3ancomb ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ↔ W ∈ Word V ∧ M ∈ 0 … N ∧ N ∈ 0 … W
13 12 biimpi ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N → W ∈ Word V ∧ M ∈ 0 … N ∧ N ∈ 0 … W
14 13 adantr ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → W ∈ Word V ∧ M ∈ 0 … N ∧ N ∈ 0 … W
15 swrdlen ⊢ W ∈ Word V ∧ M ∈ 0 … N ∧ N ∈ 0 … W → W substr M N = N − M
16 14 15 syl ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → W substr M N = N − M
17 16 oveq2d ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → 0 … W substr M N = 0 … N − M
18 11 17 eleqtrrd ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → L ∈ 0 … W substr M N
19 swrdval2 ⊢ W substr M N ∈ Word V ∧ K ∈ 0 … L ∧ L ∈ 0 … W substr M N → W substr M N substr K L = x ∈ 0 ..^ L − K ⟼ W substr M N ⁡ x + K
20 3 5 18 19 syl3anc ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → W substr M N substr K L = x ∈ 0 ..^ L − K ⟼ W substr M N ⁡ x + K
21 fvex ⊢ W substr M N ⁡ x + K ∈ V
22 eqid ⊢ x ∈ 0 ..^ L − K ⟼ W substr M N ⁡ x + K = x ∈ 0 ..^ L − K ⟼ W substr M N ⁡ x + K
23 21 22 fnmpti ⊢ x ∈ 0 ..^ L − K ⟼ W substr M N ⁡ x + K Fn 0 ..^ L − K
24 23 a1i ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → x ∈ 0 ..^ L − K ⟼ W substr M N ⁡ x + K Fn 0 ..^ L − K
25 swrdswrdlem ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → W ∈ Word V ∧ M + K ∈ 0 … M + L ∧ M + L ∈ 0 … W
26 swrdvalfn ⊢ W ∈ Word V ∧ M + K ∈ 0 … M + L ∧ M + L ∈ 0 … W → W substr M + K M + L Fn 0 ..^ M + L - M + K
27 25 26 syl ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → W substr M + K M + L Fn 0 ..^ M + L - M + K
28 elfzelz ⊢ M ∈ 0 … N → M ∈ ℤ
29 elfzelz ⊢ L ∈ K … N − M → L ∈ ℤ
30 elfzelz ⊢ K ∈ 0 … N − M → K ∈ ℤ
31 zcn ⊢ M ∈ ℤ → M ∈ ℂ
32 31 adantr ⊢ M ∈ ℤ ∧ L ∈ ℤ ∧ K ∈ ℤ → M ∈ ℂ
33 zcn ⊢ L ∈ ℤ → L ∈ ℂ
34 33 ad2antrl ⊢ M ∈ ℤ ∧ L ∈ ℤ ∧ K ∈ ℤ → L ∈ ℂ
35 zcn ⊢ K ∈ ℤ → K ∈ ℂ
36 35 ad2antll ⊢ M ∈ ℤ ∧ L ∈ ℤ ∧ K ∈ ℤ → K ∈ ℂ
37 pnpcan ⊢ M ∈ ℂ ∧ L ∈ ℂ ∧ K ∈ ℂ → M + L - M + K = L − K
38 37 eqcomd ⊢ M ∈ ℂ ∧ L ∈ ℂ ∧ K ∈ ℂ → L − K = M + L - M + K
39 32 34 36 38 syl3anc ⊢ M ∈ ℤ ∧ L ∈ ℤ ∧ K ∈ ℤ → L − K = M + L - M + K
40 39 expcom ⊢ L ∈ ℤ ∧ K ∈ ℤ → M ∈ ℤ → L − K = M + L - M + K
41 29 30 40 syl2anr ⊢ K ∈ 0 … N − M ∧ L ∈ K … N − M → M ∈ ℤ → L − K = M + L - M + K
42 28 41 syl5com ⊢ M ∈ 0 … N → K ∈ 0 … N − M ∧ L ∈ K … N − M → L − K = M + L - M + K
43 42 3ad2ant3 ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N → K ∈ 0 … N − M ∧ L ∈ K … N − M → L − K = M + L - M + K
44 43 imp ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → L − K = M + L - M + K
45 44 oveq2d ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → 0 ..^ L − K = 0 ..^ M + L - M + K
46 45 fneq2d ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → W substr M + K M + L Fn 0 ..^ L − K ↔ W substr M + K M + L Fn 0 ..^ M + L - M + K
47 27 46 mpbird ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → W substr M + K M + L Fn 0 ..^ L − K
48 simpr ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K → y ∈ 0 ..^ L − K
49 fvex ⊢ W ⁡ y + K + M ∈ V
50 oveq1 ⊢ x = y → x + K = y + K
51 50 fvoveq1d ⊢ x = y → W ⁡ x + K + M = W ⁡ y + K + M
52 eqid ⊢ x ∈ 0 ..^ L − K ⟼ W ⁡ x + K + M = x ∈ 0 ..^ L − K ⟼ W ⁡ x + K + M
53 51 52 fvmptg ⊢ y ∈ 0 ..^ L − K ∧ W ⁡ y + K + M ∈ V → x ∈ 0 ..^ L − K ⟼ W ⁡ x + K + M ⁡ y = W ⁡ y + K + M
54 48 49 53 sylancl ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K → x ∈ 0 ..^ L − K ⟼ W ⁡ x + K + M ⁡ y = W ⁡ y + K + M
55 zcn ⊢ y ∈ ℤ → y ∈ ℂ
56 55 31 35 3anim123i ⊢ y ∈ ℤ ∧ M ∈ ℤ ∧ K ∈ ℤ → y ∈ ℂ ∧ M ∈ ℂ ∧ K ∈ ℂ
57 56 3expa ⊢ y ∈ ℤ ∧ M ∈ ℤ ∧ K ∈ ℤ → y ∈ ℂ ∧ M ∈ ℂ ∧ K ∈ ℂ
58 add32r ⊢ y ∈ ℂ ∧ M ∈ ℂ ∧ K ∈ ℂ → y + M + K = y + K + M
59 58 eqcomd ⊢ y ∈ ℂ ∧ M ∈ ℂ ∧ K ∈ ℂ → y + K + M = y + M + K
60 57 59 syl ⊢ y ∈ ℤ ∧ M ∈ ℤ ∧ K ∈ ℤ → y + K + M = y + M + K
61 60 exp31 ⊢ y ∈ ℤ → M ∈ ℤ → K ∈ ℤ → y + K + M = y + M + K
62 61 com13 ⊢ K ∈ ℤ → M ∈ ℤ → y ∈ ℤ → y + K + M = y + M + K
63 30 62 syl ⊢ K ∈ 0 … N − M → M ∈ ℤ → y ∈ ℤ → y + K + M = y + M + K
64 63 adantr ⊢ K ∈ 0 … N − M ∧ L ∈ K … N − M → M ∈ ℤ → y ∈ ℤ → y + K + M = y + M + K
65 28 64 syl5com ⊢ M ∈ 0 … N → K ∈ 0 … N − M ∧ L ∈ K … N − M → y ∈ ℤ → y + K + M = y + M + K
66 65 3ad2ant3 ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N → K ∈ 0 … N − M ∧ L ∈ K … N − M → y ∈ ℤ → y + K + M = y + M + K
67 66 imp ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → y ∈ ℤ → y + K + M = y + M + K
68 elfzoelz ⊢ y ∈ 0 ..^ L − K → y ∈ ℤ
69 67 68 impel ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K → y + K + M = y + M + K
70 69 fveq2d ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K → W ⁡ y + K + M = W ⁡ y + M + K
71 54 70 eqtrd ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K → x ∈ 0 ..^ L − K ⟼ W ⁡ x + K + M ⁡ y = W ⁡ y + M + K
72 13 ad3antrrr ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K ∧ x ∈ 0 ..^ L − K → W ∈ Word V ∧ M ∈ 0 … N ∧ N ∈ 0 … W
73 elfz2nn0 ⊢ K ∈ 0 … N − M ↔ K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 ∧ K ≤ N − M
74 elfz2 ⊢ L ∈ K … N − M ↔ K ∈ ℤ ∧ N − M ∈ ℤ ∧ L ∈ ℤ ∧ K ≤ L ∧ L ≤ N − M
75 elfzo0 ⊢ x ∈ 0 ..^ L − K ↔ x ∈ ℕ 0 ∧ L − K ∈ ℕ ∧ x < L − K
76 nn0re ⊢ x ∈ ℕ 0 → x ∈ ℝ
77 76 ad2antrl ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ → x ∈ ℝ
78 nn0re ⊢ K ∈ ℕ 0 → K ∈ ℝ
79 78 adantr ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ → K ∈ ℝ
80 zre ⊢ L ∈ ℤ → L ∈ ℝ
81 80 ad2antll ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ → L ∈ ℝ
82 ltaddsub ⊢ x ∈ ℝ ∧ K ∈ ℝ ∧ L ∈ ℝ → x + K < L ↔ x < L − K
83 82 bicomd ⊢ x ∈ ℝ ∧ K ∈ ℝ ∧ L ∈ ℝ → x < L − K ↔ x + K < L
84 77 79 81 83 syl3anc ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ → x < L − K ↔ x + K < L
85 nn0addcl ⊢ x ∈ ℕ 0 ∧ K ∈ ℕ 0 → x + K ∈ ℕ 0
86 85 ex ⊢ x ∈ ℕ 0 → K ∈ ℕ 0 → x + K ∈ ℕ 0
87 86 adantr ⊢ x ∈ ℕ 0 ∧ L ∈ ℤ → K ∈ ℕ 0 → x + K ∈ ℕ 0
88 87 impcom ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ → x + K ∈ ℕ 0
89 88 ad3antrrr ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ ∧ x + K < L ∧ N − M ∈ ℕ 0 ∧ L ≤ N − M → x + K ∈ ℕ 0
90 elnn0z ⊢ x + K ∈ ℕ 0 ↔ x + K ∈ ℤ ∧ 0 ≤ x + K
91 0red ⊢ x + K ∈ ℤ ∧ L ∈ ℤ → 0 ∈ ℝ
92 zre ⊢ x + K ∈ ℤ → x + K ∈ ℝ
93 92 adantr ⊢ x + K ∈ ℤ ∧ L ∈ ℤ → x + K ∈ ℝ
94 80 adantl ⊢ x + K ∈ ℤ ∧ L ∈ ℤ → L ∈ ℝ
95 lelttr ⊢ 0 ∈ ℝ ∧ x + K ∈ ℝ ∧ L ∈ ℝ → 0 ≤ x + K ∧ x + K < L → 0 < L
96 91 93 94 95 syl3anc ⊢ x + K ∈ ℤ ∧ L ∈ ℤ → 0 ≤ x + K ∧ x + K < L → 0 < L
97 0red ⊢ L ∈ ℤ ∧ N − M ∈ ℕ 0 → 0 ∈ ℝ
98 80 adantr ⊢ L ∈ ℤ ∧ N − M ∈ ℕ 0 → L ∈ ℝ
99 nn0re ⊢ N − M ∈ ℕ 0 → N − M ∈ ℝ
100 99 adantl ⊢ L ∈ ℤ ∧ N − M ∈ ℕ 0 → N − M ∈ ℝ
101 ltletr ⊢ 0 ∈ ℝ ∧ L ∈ ℝ ∧ N − M ∈ ℝ → 0 < L ∧ L ≤ N − M → 0 < N − M
102 97 98 100 101 syl3anc ⊢ L ∈ ℤ ∧ N − M ∈ ℕ 0 → 0 < L ∧ L ≤ N − M → 0 < N − M
103 elnnnn0b ⊢ N − M ∈ ℕ ↔ N − M ∈ ℕ 0 ∧ 0 < N − M
104 103 simplbi2 ⊢ N − M ∈ ℕ 0 → 0 < N − M → N − M ∈ ℕ
105 104 adantl ⊢ L ∈ ℤ ∧ N − M ∈ ℕ 0 → 0 < N − M → N − M ∈ ℕ
106 102 105 syld ⊢ L ∈ ℤ ∧ N − M ∈ ℕ 0 → 0 < L ∧ L ≤ N − M → N − M ∈ ℕ
107 106 exp4b ⊢ L ∈ ℤ → N − M ∈ ℕ 0 → 0 < L → L ≤ N − M → N − M ∈ ℕ
108 107 com23 ⊢ L ∈ ℤ → 0 < L → N − M ∈ ℕ 0 → L ≤ N − M → N − M ∈ ℕ
109 108 adantl ⊢ x + K ∈ ℤ ∧ L ∈ ℤ → 0 < L → N − M ∈ ℕ 0 → L ≤ N − M → N − M ∈ ℕ
110 96 109 syld ⊢ x + K ∈ ℤ ∧ L ∈ ℤ → 0 ≤ x + K ∧ x + K < L → N − M ∈ ℕ 0 → L ≤ N − M → N − M ∈ ℕ
111 110 expd ⊢ x + K ∈ ℤ ∧ L ∈ ℤ → 0 ≤ x + K → x + K < L → N − M ∈ ℕ 0 → L ≤ N − M → N − M ∈ ℕ
112 111 a1d ⊢ x + K ∈ ℤ ∧ L ∈ ℤ → x ∈ ℕ 0 ∧ K ∈ ℕ 0 → 0 ≤ x + K → x + K < L → N − M ∈ ℕ 0 → L ≤ N − M → N − M ∈ ℕ
113 112 ex ⊢ x + K ∈ ℤ → L ∈ ℤ → x ∈ ℕ 0 ∧ K ∈ ℕ 0 → 0 ≤ x + K → x + K < L → N − M ∈ ℕ 0 → L ≤ N − M → N − M ∈ ℕ
114 113 com24 ⊢ x + K ∈ ℤ → 0 ≤ x + K → x ∈ ℕ 0 ∧ K ∈ ℕ 0 → L ∈ ℤ → x + K < L → N − M ∈ ℕ 0 → L ≤ N − M → N − M ∈ ℕ
115 114 imp ⊢ x + K ∈ ℤ ∧ 0 ≤ x + K → x ∈ ℕ 0 ∧ K ∈ ℕ 0 → L ∈ ℤ → x + K < L → N − M ∈ ℕ 0 → L ≤ N − M → N − M ∈ ℕ
116 90 115 sylbi ⊢ x + K ∈ ℕ 0 → x ∈ ℕ 0 ∧ K ∈ ℕ 0 → L ∈ ℤ → x + K < L → N − M ∈ ℕ 0 → L ≤ N − M → N − M ∈ ℕ
117 85 116 mpcom ⊢ x ∈ ℕ 0 ∧ K ∈ ℕ 0 → L ∈ ℤ → x + K < L → N − M ∈ ℕ 0 → L ≤ N − M → N − M ∈ ℕ
118 117 impancom ⊢ x ∈ ℕ 0 ∧ L ∈ ℤ → K ∈ ℕ 0 → x + K < L → N − M ∈ ℕ 0 → L ≤ N − M → N − M ∈ ℕ
119 118 impcom ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ → x + K < L → N − M ∈ ℕ 0 → L ≤ N − M → N − M ∈ ℕ
120 119 imp41 ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ ∧ x + K < L ∧ N − M ∈ ℕ 0 ∧ L ≤ N − M → N − M ∈ ℕ
121 nn0readdcl ⊢ x ∈ ℕ 0 ∧ K ∈ ℕ 0 → x + K ∈ ℝ
122 121 ex ⊢ x ∈ ℕ 0 → K ∈ ℕ 0 → x + K ∈ ℝ
123 122 adantr ⊢ x ∈ ℕ 0 ∧ L ∈ ℤ → K ∈ ℕ 0 → x + K ∈ ℝ
124 123 impcom ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ → x + K ∈ ℝ
125 ltletr ⊢ x + K ∈ ℝ ∧ L ∈ ℝ ∧ N − M ∈ ℝ → x + K < L ∧ L ≤ N − M → x + K < N − M
126 124 81 99 125 syl2an3an ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ ∧ N − M ∈ ℕ 0 → x + K < L ∧ L ≤ N − M → x + K < N − M
127 126 exp4b ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ → N − M ∈ ℕ 0 → x + K < L → L ≤ N − M → x + K < N − M
128 127 com23 ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ → x + K < L → N − M ∈ ℕ 0 → L ≤ N − M → x + K < N − M
129 128 imp41 ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ ∧ x + K < L ∧ N − M ∈ ℕ 0 ∧ L ≤ N − M → x + K < N − M
130 elfzo0 ⊢ x + K ∈ 0 ..^ N − M ↔ x + K ∈ ℕ 0 ∧ N − M ∈ ℕ ∧ x + K < N − M
131 89 120 129 130 syl3anbrc ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ ∧ x + K < L ∧ N − M ∈ ℕ 0 ∧ L ≤ N − M → x + K ∈ 0 ..^ N − M
132 131 exp41 ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ → x + K < L → N − M ∈ ℕ 0 → L ≤ N − M → x + K ∈ 0 ..^ N − M
133 84 132 sylbid ⊢ K ∈ ℕ 0 ∧ x ∈ ℕ 0 ∧ L ∈ ℤ → x < L − K → N − M ∈ ℕ 0 → L ≤ N − M → x + K ∈ 0 ..^ N − M
134 133 ex ⊢ K ∈ ℕ 0 → x ∈ ℕ 0 ∧ L ∈ ℤ → x < L − K → N − M ∈ ℕ 0 → L ≤ N − M → x + K ∈ 0 ..^ N − M
135 134 com24 ⊢ K ∈ ℕ 0 → N − M ∈ ℕ 0 → x < L − K → x ∈ ℕ 0 ∧ L ∈ ℤ → L ≤ N − M → x + K ∈ 0 ..^ N − M
136 135 imp ⊢ K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 → x < L − K → x ∈ ℕ 0 ∧ L ∈ ℤ → L ≤ N − M → x + K ∈ 0 ..^ N − M
137 136 com13 ⊢ x ∈ ℕ 0 ∧ L ∈ ℤ → x < L − K → K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 → L ≤ N − M → x + K ∈ 0 ..^ N − M
138 137 impancom ⊢ x ∈ ℕ 0 ∧ x < L − K → L ∈ ℤ → K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 → L ≤ N − M → x + K ∈ 0 ..^ N − M
139 138 3adant2 ⊢ x ∈ ℕ 0 ∧ L − K ∈ ℕ ∧ x < L − K → L ∈ ℤ → K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 → L ≤ N − M → x + K ∈ 0 ..^ N − M
140 75 139 sylbi ⊢ x ∈ 0 ..^ L − K → L ∈ ℤ → K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 → L ≤ N − M → x + K ∈ 0 ..^ N − M
141 140 com14 ⊢ L ≤ N − M → L ∈ ℤ → K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 → x ∈ 0 ..^ L − K → x + K ∈ 0 ..^ N − M
142 141 adantl ⊢ K ≤ L ∧ L ≤ N − M → L ∈ ℤ → K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 → x ∈ 0 ..^ L − K → x + K ∈ 0 ..^ N − M
143 142 com12 ⊢ L ∈ ℤ → K ≤ L ∧ L ≤ N − M → K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 → x ∈ 0 ..^ L − K → x + K ∈ 0 ..^ N − M
144 143 3ad2ant3 ⊢ K ∈ ℤ ∧ N − M ∈ ℤ ∧ L ∈ ℤ → K ≤ L ∧ L ≤ N − M → K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 → x ∈ 0 ..^ L − K → x + K ∈ 0 ..^ N − M
145 144 imp ⊢ K ∈ ℤ ∧ N − M ∈ ℤ ∧ L ∈ ℤ ∧ K ≤ L ∧ L ≤ N − M → K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 → x ∈ 0 ..^ L − K → x + K ∈ 0 ..^ N − M
146 74 145 sylbi ⊢ L ∈ K … N − M → K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 → x ∈ 0 ..^ L − K → x + K ∈ 0 ..^ N − M
147 146 com12 ⊢ K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 → L ∈ K … N − M → x ∈ 0 ..^ L − K → x + K ∈ 0 ..^ N − M
148 147 3adant3 ⊢ K ∈ ℕ 0 ∧ N − M ∈ ℕ 0 ∧ K ≤ N − M → L ∈ K … N − M → x ∈ 0 ..^ L − K → x + K ∈ 0 ..^ N − M
149 73 148 sylbi ⊢ K ∈ 0 … N − M → L ∈ K … N − M → x ∈ 0 ..^ L − K → x + K ∈ 0 ..^ N − M
150 149 imp ⊢ K ∈ 0 … N − M ∧ L ∈ K … N − M → x ∈ 0 ..^ L − K → x + K ∈ 0 ..^ N − M
151 150 adantl ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → x ∈ 0 ..^ L − K → x + K ∈ 0 ..^ N − M
152 151 adantr ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K → x ∈ 0 ..^ L − K → x + K ∈ 0 ..^ N − M
153 152 imp ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K ∧ x ∈ 0 ..^ L − K → x + K ∈ 0 ..^ N − M
154 swrdfv ⊢ W ∈ Word V ∧ M ∈ 0 … N ∧ N ∈ 0 … W ∧ x + K ∈ 0 ..^ N − M → W substr M N ⁡ x + K = W ⁡ x + K + M
155 72 153 154 syl2anc ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K ∧ x ∈ 0 ..^ L − K → W substr M N ⁡ x + K = W ⁡ x + K + M
156 155 mpteq2dva ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K → x ∈ 0 ..^ L − K ⟼ W substr M N ⁡ x + K = x ∈ 0 ..^ L − K ⟼ W ⁡ x + K + M
157 156 fveq1d ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K → x ∈ 0 ..^ L − K ⟼ W substr M N ⁡ x + K ⁡ y = x ∈ 0 ..^ L − K ⟼ W ⁡ x + K + M ⁡ y
158 25 adantr ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K → W ∈ Word V ∧ M + K ∈ 0 … M + L ∧ M + L ∈ 0 … W
159 31 33 35 3anim123i ⊢ M ∈ ℤ ∧ L ∈ ℤ ∧ K ∈ ℤ → M ∈ ℂ ∧ L ∈ ℂ ∧ K ∈ ℂ
160 159 3expa ⊢ M ∈ ℤ ∧ L ∈ ℤ ∧ K ∈ ℤ → M ∈ ℂ ∧ L ∈ ℂ ∧ K ∈ ℂ
161 160 38 syl ⊢ M ∈ ℤ ∧ L ∈ ℤ ∧ K ∈ ℤ → L − K = M + L - M + K
162 161 exp31 ⊢ M ∈ ℤ → L ∈ ℤ → K ∈ ℤ → L − K = M + L - M + K
163 162 com3l ⊢ L ∈ ℤ → K ∈ ℤ → M ∈ ℤ → L − K = M + L - M + K
164 29 163 syl ⊢ L ∈ K … N − M → K ∈ ℤ → M ∈ ℤ → L − K = M + L - M + K
165 30 164 mpan9 ⊢ K ∈ 0 … N − M ∧ L ∈ K … N − M → M ∈ ℤ → L − K = M + L - M + K
166 28 165 syl5com ⊢ M ∈ 0 … N → K ∈ 0 … N − M ∧ L ∈ K … N − M → L − K = M + L - M + K
167 166 3ad2ant3 ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N → K ∈ 0 … N − M ∧ L ∈ K … N − M → L − K = M + L - M + K
168 167 imp ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → L − K = M + L - M + K
169 168 oveq2d ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → 0 ..^ L − K = 0 ..^ M + L - M + K
170 169 eleq2d ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → y ∈ 0 ..^ L − K ↔ y ∈ 0 ..^ M + L - M + K
171 170 biimpa ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K → y ∈ 0 ..^ M + L - M + K
172 swrdfv ⊢ W ∈ Word V ∧ M + K ∈ 0 … M + L ∧ M + L ∈ 0 … W ∧ y ∈ 0 ..^ M + L - M + K → W substr M + K M + L ⁡ y = W ⁡ y + M + K
173 158 171 172 syl2anc ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K → W substr M + K M + L ⁡ y = W ⁡ y + M + K
174 71 157 173 3eqtr4d ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M ∧ y ∈ 0 ..^ L − K → x ∈ 0 ..^ L − K ⟼ W substr M N ⁡ x + K ⁡ y = W substr M + K M + L ⁡ y
175 24 47 174 eqfnfvd ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → x ∈ 0 ..^ L − K ⟼ W substr M N ⁡ x + K = W substr M + K M + L
176 20 175 eqtrd ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N ∧ K ∈ 0 … N − M ∧ L ∈ K … N − M → W substr M N substr K L = W substr M + K M + L
177 176 ex ⊢ W ∈ Word V ∧ N ∈ 0 … W ∧ M ∈ 0 … N → K ∈ 0 … N − M ∧ L ∈ K … N − M → W substr M N substr K L = W substr M + K M + L