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

Theorem ccatass 14734
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 14719 . . . . 5 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
2 ccatcl 14719 . . . . 5 (((𝑆 ++ 𝑇) ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) ∈ Word 𝐵)
31, 2stoic3 1809 . . . 4 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) ∈ Word 𝐵)
4 wrdfn 14673 . . . 4 (((𝑆 ++ 𝑇) ++ 𝑈) ∈ Word 𝐵 → ((𝑆 ++ 𝑇) ++ 𝑈) Fn (0..^(♯‘((𝑆 ++ 𝑇) ++ 𝑈))))
53, 4syl 18 . . 3 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) Fn (0..^(♯‘((𝑆 ++ 𝑇) ++ 𝑈))))
6 ccatlen 14720 . . . . . . 7 (((𝑆 ++ 𝑇) ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘((𝑆 ++ 𝑇) ++ 𝑈)) = ((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)))
71, 6stoic3 1809 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘((𝑆 ++ 𝑇) ++ 𝑈)) = ((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)))
8 ccatlen 14720 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (♯‘(𝑆 ++ 𝑇)) = ((♯‘𝑆) + (♯‘𝑇)))
983adant3 1150 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘(𝑆 ++ 𝑇)) = ((♯‘𝑆) + (♯‘𝑇)))
109oveq1d 7435 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
117, 10eqtrd 2796 . . . . 5 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘((𝑆 ++ 𝑇) ++ 𝑈)) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
1211oveq2d 7436 . . . 4 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (0..^(♯‘((𝑆 ++ 𝑇) ++ 𝑈))) = (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
1312fneq2d 6633 . . 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 14719 . . . . . 6 ((𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑇 ++ 𝑈) ∈ Word 𝐵)
17163adant1 1148 . . . . 5 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑇 ++ 𝑈) ∈ Word 𝐵)
18 ccatcl 14719 . . . . 5 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) ∈ Word 𝐵)
1915, 17, 18syl2anc 596 . . . 4 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) ∈ Word 𝐵)
20 wrdfn 14673 . . . 4 ((𝑆 ++ (𝑇 ++ 𝑈)) ∈ Word 𝐵 → (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))))
2119, 20syl 18 . . 3 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))))
22 ccatlen 14720 . . . . . . . 8 ((𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘(𝑇 ++ 𝑈)) = ((♯‘𝑇) + (♯‘𝑈)))
23223adant1 1148 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘(𝑇 ++ 𝑈)) = ((♯‘𝑇) + (♯‘𝑈)))
2423oveq2d 7436 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))) = ((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈))))
25 ccatlen 14720 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵) → (♯‘(𝑆 ++ (𝑇 ++ 𝑈))) = ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))))
2615, 17, 25syl2anc 596 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘(𝑆 ++ (𝑇 ++ 𝑈))) = ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))))
27 lencl 14678 . . . . . . . . 9 (𝑆 ∈ Word 𝐵 → (♯‘𝑆) ∈ ℕ0)
28273ad2ant1 1151 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ ℕ0)
2928nn0cnd 12669 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ ℂ)
30 lencl 14678 . . . . . . . . 9 (𝑇 ∈ Word 𝐵 → (♯‘𝑇) ∈ ℕ0)
31303ad2ant2 1152 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑇) ∈ ℕ0)
3231nn0cnd 12669 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑇) ∈ ℂ)
33 lencl 14678 . . . . . . . . 9 (𝑈 ∈ Word 𝐵 → (♯‘𝑈) ∈ ℕ0)
34333ad2ant3 1153 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑈) ∈ ℕ0)
3534nn0cnd 12669 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑈) ∈ ℂ)
3629, 32, 35addassd 11331 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) = ((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈))))
3724, 26, 363eqtr4d 2806 . . . . 5 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘(𝑆 ++ (𝑇 ++ 𝑈))) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
3837oveq2d 7436 . . . 4 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))) = (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
3938fneq2d 6633 . . 3 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))) ↔ (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
4021, 39mpbid 235 . 2 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
4128nn0zd 12718 . . . 4 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ ℤ)
42 fzospliti 13826 . . . . 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 14722 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ 𝑇)‘𝑥) = (𝑆‘𝑥))
4815, 45, 46, 47syl2an3an 1449 . . . . 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 12981 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ (ℤ≥‘(♯‘𝑆)))
53 uzaddcl 13031 . . . . . . . . . 10 (((♯‘𝑆) ∈ (ℤ≥‘(♯‘𝑆)) ∧ (♯‘𝑇) ∈ ℕ0) → ((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ≥‘(♯‘𝑆)))
5452, 31, 53syl2anc 596 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ≥‘(♯‘𝑆)))
55 fzoss2 13822 . . . . . . . . 9 (((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ≥‘(♯‘𝑆)) → (0..^(♯‘𝑆)) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
5654, 55syl 18 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (0..^(♯‘𝑆)) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
579oveq2d 7436 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (0..^(♯‘(𝑆 ++ 𝑇))) = (0..^((♯‘𝑆) + (♯‘𝑇))))
5856, 57sseqtrrd 3968 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (0..^(♯‘𝑆)) ⊆ (0..^(♯‘(𝑆 ++ 𝑇))))
5958sselda 3931 . . . . . 6 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → 𝑥 ∈ (0..^(♯‘(𝑆 ++ 𝑇))))
60 ccatval1 14722 . . . . . 6 (((𝑆 ++ 𝑇) ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘(𝑆 ++ 𝑇)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ 𝑇)‘𝑥))
6150, 51, 59, 60syl3anc 1398 . . . . 5 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ 𝑇)‘𝑥))
62 ccatval1 14722 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵 ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = (𝑆‘𝑥))
6315, 17, 46, 62syl2an3an 1449 . . . . 5 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = (𝑆‘𝑥))
6448, 61, 633eqtr4d 2806 . . . 4 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥))
6531nn0zd 12718 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑇) ∈ ℤ)
6641, 65zaddcld 12807 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘𝑇)) ∈ ℤ)
67 fzospliti 13826 . . . . . . 7 ((𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ∧ ((♯‘𝑆) + (♯‘𝑇)) ∈ ℤ) → (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∨ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
6867ex 418 . . . . . 6 (𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) → (((♯‘𝑆) + (♯‘𝑇)) ∈ ℤ → (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∨ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))))
6966, 68mpan9 516 . . . . 5 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∨ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
70 id 23 . . . . . . . . 9 (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) → 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))))
71 ccatval2 14723 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ 𝑇)‘𝑥) = (𝑇‘(𝑥 − (♯‘𝑆))))
7215, 45, 70, 71syl2an3an 1449 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ 𝑇)‘𝑥) = (𝑇‘(𝑥 − (♯‘𝑆))))
73 simpl2 1211 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑇 ∈ Word 𝐵)
74 simpl3 1212 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑈 ∈ Word 𝐵)
75 fzosubel3 13861 . . . . . . . . . . 11 ((𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∧ (♯‘𝑇) ∈ ℤ) → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇)))
7675ex 418 . . . . . . . . . 10 (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) → ((♯‘𝑇) ∈ ℤ → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇))))
7765, 76mpan9 516 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇)))
78 ccatval1 14722 . . . . . . . . 9 ((𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵 ∧ (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑇‘(𝑥 − (♯‘𝑆))))
7973, 74, 77, 78syl3anc 1398 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑇‘(𝑥 − (♯‘𝑆))))
8072, 79eqtr4d 2799 . . . . . . 7 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ 𝑇)‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
8149adantr 486 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
82 fzoss1 13821 . . . . . . . . . . . 12 ((♯‘𝑆) ∈ (ℤ≥‘0) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
83 nn0uz 13003 . . . . . . . . . . . 12 ℕ0 = (ℤ≥‘0)
8482, 83eleq2s 2879 . . . . . . . . . . 11 ((♯‘𝑆) ∈ ℕ0 → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
8528, 84syl 18 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
8685, 57sseqtrrd 3968 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^(♯‘(𝑆 ++ 𝑇))))
8786sselda 3931 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑥 ∈ (0..^(♯‘(𝑆 ++ 𝑇))))
8881, 74, 87, 60syl3anc 1398 . . . . . . 7 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ 𝑇)‘𝑥))
89 simpl1 1210 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑆 ∈ Word 𝐵)
9017adantr 486 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑇 ++ 𝑈) ∈ Word 𝐵)
9166uzidd 12981 . . . . . . . . . . . 12 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ≥‘((♯‘𝑆) + (♯‘𝑇))))
92 uzaddcl 13031 . . . . . . . . . . . 12 ((((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ≥‘((♯‘𝑆) + (♯‘𝑇))) ∧ (♯‘𝑈) ∈ ℕ0) → (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) ∈ (ℤ≥‘((♯‘𝑆) + (♯‘𝑇))))
9391, 34, 92syl2anc 596 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) ∈ (ℤ≥‘((♯‘𝑆) + (♯‘𝑇))))
94 fzoss2 13822 . . . . . . . . . . 11 ((((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) ∈ (ℤ≥‘((♯‘𝑆) + (♯‘𝑇))) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
9593, 94syl 18 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
9624, 36eqtr4d 2799 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
9796oveq2d 7436 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))) = ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
9895, 97sseqtrrd 3968 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
9998sselda 3931 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
100 ccatval2 14723 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵 ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
10189, 90, 99, 100syl3anc 1398 . . . . . . 7 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
10280, 88, 1013eqtr4d 2806 . . . . . 6 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥))
1039oveq2d 7436 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑥 − (♯‘(𝑆 ++ 𝑇))) = (𝑥 − ((♯‘𝑆) + (♯‘𝑇))))
104103adantr 486 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 − (♯‘(𝑆 ++ 𝑇))) = (𝑥 − ((♯‘𝑆) + (♯‘𝑇))))
105 elfzoelz 13793 . . . . . . . . . . . . 13 (𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) → 𝑥 ∈ ℤ)
106105zcnd 12804 . . . . . . . . . . . 12 (𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) → 𝑥 ∈ ℂ)
107106adantl 487 . . . . . . . . . . 11 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ ℂ)
10829adantr 486 . . . . . . . . . . 11 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (♯‘𝑆) ∈ ℂ)
10932adantr 486 . . . . . . . . . . 11 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (♯‘𝑇) ∈ ℂ)
110107, 108, 109subsub4d 11700 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((𝑥 − (♯‘𝑆)) − (♯‘𝑇)) = (𝑥 − ((♯‘𝑆) + (♯‘𝑇))))
111104, 110eqtr4d 2799 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 − (♯‘(𝑆 ++ 𝑇))) = ((𝑥 − (♯‘𝑆)) − (♯‘𝑇)))
112111fveq2d 6889 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑈‘(𝑥 − (♯‘(𝑆 ++ 𝑇)))) = (𝑈‘((𝑥 − (♯‘𝑆)) − (♯‘𝑇))))
113 simpl2 1211 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑇 ∈ Word 𝐵)
114 simpl3 1212 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑈 ∈ Word 𝐵)
11536oveq2d 7436 . . . . . . . . . . . 12 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) = (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈)))))
116115eleq2d 2847 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ↔ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈))))))
117116biimpa 482 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈)))))
11834nn0zd 12718 . . . . . . . . . . . . 13 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (♯‘𝑈) ∈ ℤ)
11965, 118zaddcld 12807 . . . . . . . . . . . 12 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ)
12041, 65, 1193jca 1146 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ ∧ ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ))
121120adantr 486 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ ∧ ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ))
122 fzosubel2 13860 . . . . . . . . . 10 ((𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈)))) ∧ ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ ∧ ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ)) → (𝑥 − (♯‘𝑆)) ∈ ((♯‘𝑇)..^((♯‘𝑇) + (♯‘𝑈))))
123117, 121, 122syl2anc 596 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 − (♯‘𝑆)) ∈ ((♯‘𝑇)..^((♯‘𝑇) + (♯‘𝑈))))
124 ccatval2 14723 . . . . . . . . 9 ((𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵 ∧ (𝑥 − (♯‘𝑆)) ∈ ((♯‘𝑇)..^((♯‘𝑇) + (♯‘𝑈)))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑈‘((𝑥 − (♯‘𝑆)) − (♯‘𝑇))))
125113, 114, 123, 124syl3anc 1398 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑈‘((𝑥 − (♯‘𝑆)) − (♯‘𝑇))))
126112, 125eqtr4d 2799 . . . . . . 7 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑈‘(𝑥 − (♯‘(𝑆 ++ 𝑇)))) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
12749adantr 486 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
1289, 10oveq12d 7438 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈))) = (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
129128eleq2d 2847 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (𝑥 ∈ ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈))) ↔ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
130129biimpar 483 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈))))
131 ccatval2 14723 . . . . . . . 8 (((𝑆 ++ 𝑇) ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵 ∧ 𝑥 ∈ ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = (𝑈‘(𝑥 − (♯‘(𝑆 ++ 𝑇)))))
132127, 114, 130, 131syl3anc 1398 . . . . . . 7 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = (𝑈‘(𝑥 − (♯‘(𝑆 ++ 𝑇)))))
133 simpl1 1210 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑆 ∈ Word 𝐵)
13417adantr 486 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑇 ++ 𝑈) ∈ Word 𝐵)
135 fzoss1 13821 . . . . . . . . . . 11 (((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ≥‘(♯‘𝑆)) → (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
13654, 135syl 18 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
137136, 97sseqtrrd 3968 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ⊆ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
138137sselda 3931 . . . . . . . 8 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
139133, 134, 138, 100syl3anc 1398 . . . . . . 7 (((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
140126, 132, 1393eqtr4d 2806 . . . . . 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 7032 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 2145   ⊆ wss 3899   Fn wfn 6533  ‘cfv 6538  (class class class)co 7420  ℂcc 11198  0cc0 11200   + caddc 11203   − cmin 11541  ℕ0cn0 12606  ℤcz 12693  ℤ≥cuz 12965  ..^cfzo 13788  ♯chash 14474  Word cword 14658   ++ cconcat 14715
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 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-rep 5232  ax-sep 5249  ax-nul 5260  ax-pow 5327  ax-pr 5391  ax-un 7751  ax-cnex 11256  ax-resscn 11257  ax-1cn 11258  ax-icn 11259  ax-addcl 11260  ax-addrcl 11261  ax-mulcl 11262  ax-mulrcl 11263  ax-mulcom 11264  ax-addass 11265  ax-mulass 11266  ax-distr 11267  ax-i2m1 11268  ax-1ne0 11269  ax-1rid 11270  ax-rnegex 11271  ax-rrecex 11272  ax-cnre 11273  ax-pre-lttri 11274  ax-pre-lttrn 11275  ax-pre-ltadd 11276  ax-pre-mulgt0 11277
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 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-nel 3063  df-ral 3078  df-rex 3088  df-reu 3367  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-int 4908  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-we 5606  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-pred 6304  df-ord 6365  df-on 6366  df-lim 6367  df-suc 6368  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-f1 6543  df-fo 6544  df-f1o 6545  df-fv 6546  df-riota 7377  df-ov 7423  df-oprab 7424  df-mpo 7425  df-om 7878  df-1st 8001  df-2nd 8002  df-frecs 8299  df-wrecs 8330  df-recs 8379  df-rdg 8418  df-1o 8476  df-er 8717  df-en 8974  df-dom 8975  df-sdom 8976  df-fin 8977  df-card 10020  df-pnf 11345  df-mnf 11346  df-xr 11347  df-ltxr 11348  df-le 11349  df-sub 11543  df-neg 11544  df-nn 12336  df-n0 12607  df-z 12694  df-uz 12966  df-fz 13640  df-fzo 13789  df-hash 14475  df-word 14659  df-concat 14716
This theorem is used by:  ccatw2s1ass  14779  cats1cat  15012  cats2cat  15013  frmdmnd  19055  efginvrel2  19941  efgredleme  19957  efgredlemc  19959  efgcpbllemb  19969  numclwwlk1lem2foalem  30952  numclwwlk1lem2fo  30959  signstfvc  35203
  Copyright terms: Public domain W3C validator