| Step | Hyp | Ref
| Expression |
| 1 | | wrdfin 10988 |
. . . 4
⊢ (𝑆 ∈ Word 𝐵 → 𝑆 ∈ Fin) |
| 2 | | wrdfin 10988 |
. . . 4
⊢ (𝑇 ∈ Word 𝐵 → 𝑇 ∈ Fin) |
| 3 | | ccatfvalfi 11023 |
. . . 4
⊢ ((𝑆 ∈ Fin ∧ 𝑇 ∈ Fin) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈
(0..^(♯‘𝑆)),
(𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))))) |
| 4 | 1, 2, 3 | syl2an 289 |
. . 3
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈
(0..^(♯‘𝑆)),
(𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))))) |
| 5 | 4 | 3adant3 1019 |
. 2
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈
(0..^(♯‘𝑆)),
(𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))))) |
| 6 | | eleq1 2267 |
. . . 4
⊢ (𝑥 = 𝐼 → (𝑥 ∈ (0..^(♯‘𝑆)) ↔ 𝐼 ∈ (0..^(♯‘𝑆)))) |
| 7 | | fveq2 5570 |
. . . 4
⊢ (𝑥 = 𝐼 → (𝑆‘𝑥) = (𝑆‘𝐼)) |
| 8 | | fvoveq1 5957 |
. . . 4
⊢ (𝑥 = 𝐼 → (𝑇‘(𝑥 − (♯‘𝑆))) = (𝑇‘(𝐼 − (♯‘𝑆)))) |
| 9 | 6, 7, 8 | ifbieq12d 3596 |
. . 3
⊢ (𝑥 = 𝐼 → if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))) = if(𝐼 ∈ (0..^(♯‘𝑆)), (𝑆‘𝐼), (𝑇‘(𝐼 − (♯‘𝑆))))) |
| 10 | | fzodisj 10283 |
. . . . . 6
⊢
((0..^(♯‘𝑆)) ∩ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) = ∅ |
| 11 | | minel 3521 |
. . . . . 6
⊢ ((𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∧
((0..^(♯‘𝑆))
∩ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) = ∅) → ¬ 𝐼 ∈
(0..^(♯‘𝑆))) |
| 12 | 10, 11 | mpan2 425 |
. . . . 5
⊢ (𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) → ¬ 𝐼 ∈
(0..^(♯‘𝑆))) |
| 13 | 12 | 3ad2ant3 1022 |
. . . 4
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ¬ 𝐼 ∈ (0..^(♯‘𝑆))) |
| 14 | 13 | iffalsed 3580 |
. . 3
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → if(𝐼 ∈ (0..^(♯‘𝑆)), (𝑆‘𝐼), (𝑇‘(𝐼 − (♯‘𝑆)))) = (𝑇‘(𝐼 − (♯‘𝑆)))) |
| 15 | 9, 14 | sylan9eqr 2259 |
. 2
⊢ (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) ∧ 𝑥 = 𝐼) → if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))) = (𝑇‘(𝐼 − (♯‘𝑆)))) |
| 16 | 1 | adantr 276 |
. . . . 5
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → 𝑆 ∈ Fin) |
| 17 | | hashcl 10907 |
. . . . 5
⊢ (𝑆 ∈ Fin →
(♯‘𝑆) ∈
ℕ0) |
| 18 | | fzoss1 10276 |
. . . . . 6
⊢
((♯‘𝑆)
∈ (ℤ≥‘0) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆
(0..^((♯‘𝑆) +
(♯‘𝑇)))) |
| 19 | | nn0uz 9665 |
. . . . . 6
⊢
ℕ0 = (ℤ≥‘0) |
| 20 | 18, 19 | eleq2s 2299 |
. . . . 5
⊢
((♯‘𝑆)
∈ ℕ0 → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇)))) |
| 21 | 16, 17, 20 | 3syl 17 |
. . . 4
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇)))) |
| 22 | 21 | sseld 3191 |
. . 3
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) → 𝐼 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))))) |
| 23 | 22 | 3impia 1202 |
. 2
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝐼 ∈ (0..^((♯‘𝑆) + (♯‘𝑇)))) |
| 24 | | simp2 1000 |
. . 3
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑇 ∈ Word 𝐵) |
| 25 | | elfzoelz 10251 |
. . . . 5
⊢ (𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) → 𝐼 ∈ ℤ) |
| 26 | 25 | 3ad2ant3 1022 |
. . . 4
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝐼 ∈ ℤ) |
| 27 | | lencl 10973 |
. . . . . 6
⊢ (𝑆 ∈ Word 𝐵 → (♯‘𝑆) ∈
ℕ0) |
| 28 | 27 | nn0zd 9475 |
. . . . 5
⊢ (𝑆 ∈ Word 𝐵 → (♯‘𝑆) ∈ ℤ) |
| 29 | 28 | 3ad2ant1 1020 |
. . . 4
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (♯‘𝑆) ∈ ℤ) |
| 30 | 26, 29 | zsubcld 9482 |
. . 3
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝐼 − (♯‘𝑆)) ∈ ℤ) |
| 31 | | fvexg 5589 |
. . 3
⊢ ((𝑇 ∈ Word 𝐵 ∧ (𝐼 − (♯‘𝑆)) ∈ ℤ) → (𝑇‘(𝐼 − (♯‘𝑆))) ∈ V) |
| 32 | 24, 30, 31 | syl2anc 411 |
. 2
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑇‘(𝐼 − (♯‘𝑆))) ∈ V) |
| 33 | 5, 15, 23, 32 | fvmptd 5654 |
1
⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ 𝑇)‘𝐼) = (𝑇‘(𝐼 − (♯‘𝑆)))) |