MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  ccatass Structured version   Visualization version   GIF version

Theorem ccatass 14775
Description: Associative law for concatenation of words. (Contributed by Stefan O'Rear, 15-Aug-2015.)
Assertion
Ref Expression
ccatass ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) = (𝑆 ++ (𝑇 ++ 𝑈)))

Proof of Theorem ccatass
Dummy variable 𝑥 is distinct from all other variables.
StepHypRef Expression
1 ccatcl 14760 . . . . 5 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
2 ccatcl 14760 . . . . 5 (((𝑆 ++ 𝑇) ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) ∈ Word 𝐵)
31, 2stoic3 1809 . . . 4 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) ∈ Word 𝐵)
4 wrdfn 14714 . . . 4 (((𝑆 ++ 𝑇) ++ 𝑈) ∈ Word 𝐵 → ((𝑆 ++ 𝑇) ++ 𝑈) Fn (0..^(♯‘((𝑆 ++ 𝑇) ++ 𝑈))))
53, 4syl 18 . . 3 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) Fn (0..^(♯‘((𝑆 ++ 𝑇) ++ 𝑈))))
6 ccatlen 14761 . . . . . . 7 (((𝑆 ++ 𝑇) ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘((𝑆 ++ 𝑇) ++ 𝑈)) = ((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)))
71, 6stoic3 1809 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘((𝑆 ++ 𝑇) ++ 𝑈)) = ((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)))
8 ccatlen 14761 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (♯‘(𝑆 ++ 𝑇)) = ((♯‘𝑆) + (♯‘𝑇)))
983adant3 1150 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘(𝑆 ++ 𝑇)) = ((♯‘𝑆) + (♯‘𝑇)))
109oveq1d 7466 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
117, 10eqtrd 2798 . . . . 5 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘((𝑆 ++ 𝑇) ++ 𝑈)) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
1211oveq2d 7467 . . . 4 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (0..^(♯‘((𝑆 ++ 𝑇) ++ 𝑈))) = (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
1312fneq2d 6663 . . 3 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (((𝑆 ++ 𝑇) ++ 𝑈) Fn (0..^(♯‘((𝑆 ++ 𝑇) ++ 𝑈))) ↔ ((𝑆 ++ 𝑇) ++ 𝑈) Fn (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
145, 13mpbid 235 . 2 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) Fn (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
15 simp1 1154 . . . . 5 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → 𝑆 ∈ Word 𝐵)
16 ccatcl 14760 . . . . . 6 ((𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑇 ++ 𝑈) ∈ Word 𝐵)
17163adant1 1148 . . . . 5 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑇 ++ 𝑈) ∈ Word 𝐵)
18 ccatcl 14760 . . . . 5 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) ∈ Word 𝐵)
1915, 17, 18syl2anc 596 . . . 4 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) ∈ Word 𝐵)
20 wrdfn 14714 . . . 4 ((𝑆 ++ (𝑇 ++ 𝑈)) ∈ Word 𝐵 → (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))))
2119, 20syl 18 . . 3 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))))
22 ccatlen 14761 . . . . . . . 8 ((𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘(𝑇 ++ 𝑈)) = ((♯‘𝑇) + (♯‘𝑈)))
23223adant1 1148 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘(𝑇 ++ 𝑈)) = ((♯‘𝑇) + (♯‘𝑈)))
2423oveq2d 7467 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))) = ((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈))))
25 ccatlen 14761 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵) → (♯‘(𝑆 ++ (𝑇 ++ 𝑈))) = ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))))
2615, 17, 25syl2anc 596 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘(𝑆 ++ (𝑇 ++ 𝑈))) = ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))))
27 lencl 14719 . . . . . . . . 9 (𝑆 ∈ Word 𝐵 → (♯‘𝑆) ∈ ℕ0)
28273ad2ant1 1151 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ ℕ0)
2928nn0cnd 12709 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ ℂ)
30 lencl 14719 . . . . . . . . 9 (𝑇 ∈ Word 𝐵 → (♯‘𝑇) ∈ ℕ0)
31303ad2ant2 1152 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑇) ∈ ℕ0)
3231nn0cnd 12709 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑇) ∈ ℂ)
33 lencl 14719 . . . . . . . . 9 (𝑈 ∈ Word 𝐵 → (♯‘𝑈) ∈ ℕ0)
34333ad2ant3 1153 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑈) ∈ ℕ0)
3534nn0cnd 12709 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑈) ∈ ℂ)
3629, 32, 35addassd 11370 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) = ((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈))))
3724, 26, 363eqtr4d 2808 . . . . 5 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘(𝑆 ++ (𝑇 ++ 𝑈))) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
3837oveq2d 7467 . . . 4 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))) = (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
3938fneq2d 6663 . . 3 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))) ↔ (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
4021, 39mpbid 235 . 2 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
4128nn0zd 12758 . . . 4 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ ℤ)
42 fzospliti 13866 . . . . 5 ((𝑥 ∈ (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ∧ (♯‘𝑆) ∈ ℤ) → (𝑥 ∈ (0..^(♯‘𝑆)) ∨ 𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
4342ex 418 . . . 4 (𝑥 ∈ (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) → ((♯‘𝑆) ∈ ℤ → (𝑥 ∈ (0..^(♯‘𝑆)) ∨ 𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))))
4441, 43mpan9 516 . . 3 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 ∈ (0..^(♯‘𝑆)) ∨ 𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
45 simp2 1155 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → 𝑇 ∈ Word 𝐵)
46 id 23 . . . . . 6 (𝑥 ∈ (0..^(♯‘𝑆)) → 𝑥 ∈ (0..^(♯‘𝑆)))
47 ccatval1 14763 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ 𝑇)‘𝑥) = (𝑆‘𝑥))
4815, 45, 46, 47syl2an3an 1450 . . . . 5 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ 𝑇)‘𝑥) = (𝑆‘𝑥))
4913adant3 1150 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
5049adantr 486 . . . . . 6 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
51 simpl3 1212 . . . . . 6 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → 𝑈 ∈ Word 𝐵)
5241uzidd 13021 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ (ℤ≥‘(♯‘𝑆)))
53 uzaddcl 13071 . . . . . . . . . 10 (((♯‘𝑆) ∈ (ℤ≥‘(♯‘𝑆)) ∧ (♯‘𝑇) ∈ ℕ0) → ((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ≥‘(♯‘𝑆)))
5452, 31, 53syl2anc 596 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ≥‘(♯‘𝑆)))
55 fzoss2 13862 . . . . . . . . 9 (((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ≥‘(♯‘𝑆)) → (0..^(♯‘𝑆)) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
5654, 55syl 18 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (0..^(♯‘𝑆)) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
579oveq2d 7467 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (0..^(♯‘(𝑆 ++ 𝑇))) = (0..^((♯‘𝑆) + (♯‘𝑇))))
5856, 57sseqtrrd 3950 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (0..^(♯‘𝑆)) ⊆ (0..^(♯‘(𝑆 ++ 𝑇))))
5958sselda 3913 . . . . . 6 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → 𝑥 ∈ (0..^(♯‘(𝑆 ++ 𝑇))))
60 ccatval1 14763 . . . . . 6 (((𝑆 ++ 𝑇) ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘(𝑆 ++ 𝑇)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ 𝑇)‘𝑥))
6150, 51, 59, 60syl3anc 1399 . . . . 5 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ 𝑇)‘𝑥))
62 ccatval1 14763 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = (𝑆‘𝑥))
6315, 17, 46, 62syl2an3an 1450 . . . . 5 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = (𝑆‘𝑥))
6448, 61, 633eqtr4d 2808 . . . 4 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥))
6531nn0zd 12758 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑇) ∈ ℤ)
6641, 65zaddcld 12847 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘𝑇)) ∈ ℤ)
67 fzospliti 13866 . . . . . . 7 ((𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ∧ ((♯‘𝑆) + (♯‘𝑇)) ∈ ℤ) → (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∨ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
6867ex 418 . . . . . 6 (𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) → (((♯‘𝑆) + (♯‘𝑇)) ∈ ℤ → (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∨ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))))
6966, 68mpan9 516 . . . . 5 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∨ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
70 id 23 . . . . . . . . 9 (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) → 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))))
71 ccatval2 14764 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ 𝑇)‘𝑥) = (𝑇‘(𝑥 − (♯‘𝑆))))
7215, 45, 70, 71syl2an3an 1450 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ 𝑇)‘𝑥) = (𝑇‘(𝑥 − (♯‘𝑆))))
73 simpl2 1211 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑇 ∈ Word 𝐵)
74 simpl3 1212 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑈 ∈ Word 𝐵)
75 fzosubel3 13901 . . . . . . . . . . 11 ((𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∧ (♯‘𝑇) ∈ ℤ) → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇)))
7675ex 418 . . . . . . . . . 10 (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) → ((♯‘𝑇) ∈ ℤ → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇))))
7765, 76mpan9 516 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇)))
78 ccatval1 14763 . . . . . . . . 9 ((𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵 ∧ (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑇‘(𝑥 − (♯‘𝑆))))
7973, 74, 77, 78syl3anc 1399 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑇‘(𝑥 − (♯‘𝑆))))
8072, 79eqtr4d 2801 . . . . . . 7 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ 𝑇)‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
8149adantr 486 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
82 fzoss1 13861 . . . . . . . . . . . 12 ((♯‘𝑆) ∈ (ℤ≥‘0) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
83 nn0uz 13043 . . . . . . . . . . . 12 ℕ0 = (ℤ≥‘0)
8482, 83eleq2s 2882 . . . . . . . . . . 11 ((♯‘𝑆) ∈ ℕ0 → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
8528, 84syl 18 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
8685, 57sseqtrrd 3950 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^(♯‘(𝑆 ++ 𝑇))))
8786sselda 3913 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑥 ∈ (0..^(♯‘(𝑆 ++ 𝑇))))
8881, 74, 87, 60syl3anc 1399 . . . . . . 7 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ 𝑇)‘𝑥))
89 simpl1 1210 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑆 ∈ Word 𝐵)
9017adantr 486 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑇 ++ 𝑈) ∈ Word 𝐵)
9166uzidd 13021 . . . . . . . . . . . 12 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ≥‘((♯‘𝑆) + (♯‘𝑇))))
92 uzaddcl 13071 . . . . . . . . . . . 12 ((((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ≥‘((♯‘𝑆) + (♯‘𝑇))) ∧ (♯‘𝑈) ∈ ℕ0) → (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) ∈ (ℤ≥‘((♯‘𝑆) + (♯‘𝑇))))
9391, 34, 92syl2anc 596 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) ∈ (ℤ≥‘((♯‘𝑆) + (♯‘𝑇))))
94 fzoss2 13862 . . . . . . . . . . 11 ((((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) ∈ (ℤ≥‘((♯‘𝑆) + (♯‘𝑇))) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
9593, 94syl 18 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
9624, 36eqtr4d 2801 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
9796oveq2d 7467 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))) = ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
9895, 97sseqtrrd 3950 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
9998sselda 3913 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
100 ccatval2 14764 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵 ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
10189, 90, 99, 100syl3anc 1399 . . . . . . 7 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
10280, 88, 1013eqtr4d 2808 . . . . . 6 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥))
1039oveq2d 7467 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑥 − (♯‘(𝑆 ++ 𝑇))) = (𝑥 − ((♯‘𝑆) + (♯‘𝑇))))
104103adantr 486 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 − (♯‘(𝑆 ++ 𝑇))) = (𝑥 − ((♯‘𝑆) + (♯‘𝑇))))
105 elfzoelz 13833 . . . . . . . . . . . . 13 (𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) → 𝑥 ∈ ℤ)
106105zcnd 12844 . . . . . . . . . . . 12 (𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) → 𝑥 ∈ ℂ)
107106adantl 487 . . . . . . . . . . 11 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ ℂ)
10829adantr 486 . . . . . . . . . . 11 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (♯‘𝑆) ∈ ℂ)
10932adantr 486 . . . . . . . . . . 11 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (♯‘𝑇) ∈ ℂ)
110107, 108, 109subsub4d 11739 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((𝑥 − (♯‘𝑆)) − (♯‘𝑇)) = (𝑥 − ((♯‘𝑆) + (♯‘𝑇))))
111104, 110eqtr4d 2801 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 − (♯‘(𝑆 ++ 𝑇))) = ((𝑥 − (♯‘𝑆)) − (♯‘𝑇)))
112111fveq2d 6920 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑈‘(𝑥 − (♯‘(𝑆 ++ 𝑇)))) = (𝑈‘((𝑥 − (♯‘𝑆)) − (♯‘𝑇))))
113 simpl2 1211 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑇 ∈ Word 𝐵)
114 simpl3 1212 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑈 ∈ Word 𝐵)
11536oveq2d 7467 . . . . . . . . . . . 12 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) = (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈)))))
116115eleq2d 2850 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ↔ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈))))))
117116biimpa 482 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈)))))
11834nn0zd 12758 . . . . . . . . . . . . 13 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑈) ∈ ℤ)
11965, 118zaddcld 12847 . . . . . . . . . . . 12 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ)
12041, 65, 1193jca 1146 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ ∧ ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ))
121120adantr 486 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ ∧ ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ))
122 fzosubel2 13900 . . . . . . . . . 10 ((𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈)))) ∧ ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ ∧ ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ)) → (𝑥 − (♯‘𝑆)) ∈ ((♯‘𝑇)..^((♯‘𝑇) + (♯‘𝑈))))
123117, 121, 122syl2anc 596 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 − (♯‘𝑆)) ∈ ((♯‘𝑇)..^((♯‘𝑇) + (♯‘𝑈))))
124 ccatval2 14764 . . . . . . . . 9 ((𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵 ∧ (𝑥 − (♯‘𝑆)) ∈ ((♯‘𝑇)..^((♯‘𝑇) + (♯‘𝑈)))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑈‘((𝑥 − (♯‘𝑆)) − (♯‘𝑇))))
125113, 114, 123, 124syl3anc 1399 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑈‘((𝑥 − (♯‘𝑆)) − (♯‘𝑇))))
126112, 125eqtr4d 2801 . . . . . . 7 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑈‘(𝑥 − (♯‘(𝑆 ++ 𝑇)))) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
12749adantr 486 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
1289, 10oveq12d 7469 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈))) = (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
129128eleq2d 2850 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑥 ∈ ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈))) ↔ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
130129biimpar 483 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈))))
131 ccatval2 14764 . . . . . . . 8 (((𝑆 ++ 𝑇) ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵 ∧ 𝑥 ∈ ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = (𝑈‘(𝑥 − (♯‘(𝑆 ++ 𝑇)))))
132127, 114, 130, 131syl3anc 1399 . . . . . . 7 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = (𝑈‘(𝑥 − (♯‘(𝑆 ++ 𝑇)))))
133 simpl1 1210 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑆 ∈ Word 𝐵)
13417adantr 486 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑇 ++ 𝑈) ∈ Word 𝐵)
135 fzoss1 13861 . . . . . . . . . . 11 (((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ≥‘(♯‘𝑆)) → (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
13654, 135syl 18 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
137136, 97sseqtrrd 3950 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ⊆ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
138137sselda 3913 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
139133, 134, 138, 100syl3anc 1399 . . . . . . 7 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
140126, 132, 1393eqtr4d 2808 . . . . . 6 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥))
141102, 140jaodan 972 . . . . 5 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∨ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥))
14269, 141syldan 603 . . . 4 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥))
14364, 142jaodan 972 . . 3 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ (𝑥 ∈ (0..^(♯‘𝑆)) ∨ 𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥))
14444, 143syldan 603 . 2 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥))
14514, 40, 144eqfnfvd 7063 1 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) = (𝑆 ++ (𝑇 ++ 𝑈)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ∧ wa 401   ∨ wo 861   ∧ w3a 1103   = wceq 1570   ∈ wcel 2147   ⊆ wss 3900   Fn wfn 6561  ‘cfv 6566  (class class class)co 7451  ℂcc 11237  0cc0 11239   + caddc 11242   − cmin 11580  ℕ0cn0 12646  ℤcz 12733  ℤ≥cuz 13005  ..^cfzo 13828  ♯chash 14515  Word cword 14699   ++ cconcat 14756
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-rep 5238  ax-sep 5255  ax-nul 5266  ax-pow 5334  ax-pr 5398  ax-un 7783  ax-cnex 11295  ax-resscn 11296  ax-1cn 11297  ax-icn 11298  ax-addcl 11299  ax-addrcl 11300  ax-mulcl 11301  ax-mulrcl 11302  ax-mulcom 11303  ax-addass 11304  ax-mulass 11305  ax-distr 11306  ax-i2m1 11307  ax-1ne0 11308  ax-1rid 11309  ax-rnegex 11310  ax-rrecex 11311  ax-cnre 11312  ax-pre-lttri 11313  ax-pre-lttrn 11314  ax-pre-ltadd 11315  ax-pre-mulgt0 11316
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-nel 3066  df-ral 3081  df-rex 3091  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4841  df-uni 4873  df-int 4913  df-iun 4958  df-br 5109  df-opab 5174  df-mpt 5193  df-tr 5219  df-id 5553  df-eprel 5558  df-po 5566  df-so 5567  df-fr 5611  df-we 5613  df-xp 5664  df-rel 5665  df-cnv 5666  df-co 5667  df-dm 5668  df-rn 5669  df-res 5670  df-ima 5671  df-pred 6330  df-ord 6391  df-on 6392  df-lim 6393  df-suc 6394  df-iota 6520  df-fun 6568  df-fn 6569  df-f 6570  df-f1 6571  df-fo 6572  df-f1o 6573  df-fv 6574  df-riota 7408  df-ov 7454  df-oprab 7455  df-mpo 7456  df-om 7912  df-1st 8035  df-2nd 8036  df-frecs 8337  df-wrecs 8368  df-recs 8417  df-rdg 8456  df-1o 8514  df-er 8755  df-en 9012  df-dom 9013  df-sdom 9014  df-fin 9015  df-card 10057  df-pnf 11384  df-mnf 11385  df-xr 11386  df-ltxr 11387  df-le 11388  df-sub 11582  df-neg 11583  df-nn 12376  df-n0 12647  df-z 12734  df-uz 13006  df-fz 13680  df-fzo 13829  df-hash 14516  df-word 14700  df-concat 14757
This theorem is used by:  ccatw2s1ass  14821  cats1cat  15054  cats2cat  15055  frmdmnd  19105  efginvrel2  19992  efgredleme  20008  efgredlemc  20010  efgcpbllemb  20020  numclwwlk1lem2foalem  31009  numclwwlk1lem2fo  31016  signstfvc  35314
  Copyright terms: Public domain W3C validator