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

Theorem ccatass 14655
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 14640 . . . . 5 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
2 ccatcl 14640 . . . . 5 (((𝑆 ++ 𝑇) ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) ∈ Word 𝐵)
31, 2stoic3 1809 . . . 4 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) ∈ Word 𝐵)
4 wrdfn 14594 . . . 4 (((𝑆 ++ 𝑇) ++ 𝑈) ∈ Word 𝐵 → ((𝑆 ++ 𝑇) ++ 𝑈) Fn (0..^(♯‘((𝑆 ++ 𝑇) ++ 𝑈))))
53, 4syl 18 . . 3 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) Fn (0..^(♯‘((𝑆 ++ 𝑇) ++ 𝑈))))
6 ccatlen 14641 . . . . . . 7 (((𝑆 ++ 𝑇) ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘((𝑆 ++ 𝑇) ++ 𝑈)) = ((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)))
71, 6stoic3 1809 . . . . . 6 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘((𝑆 ++ 𝑇) ++ 𝑈)) = ((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)))
8 ccatlen 14641 . . . . . . . 8 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵) → (♯‘(𝑆 ++ 𝑇)) = ((♯‘𝑆) + (♯‘𝑇)))
983adant3 1150 . . . . . . 7 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘(𝑆 ++ 𝑇)) = ((♯‘𝑆) + (♯‘𝑇)))
109oveq1d 7429 . . . . . 6 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
117, 10eqtrd 2795 . . . . 5 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘((𝑆 ++ 𝑇) ++ 𝑈)) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
1211oveq2d 7430 . . . 4 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (0..^(♯‘((𝑆 ++ 𝑇) ++ 𝑈))) = (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
1312fneq2d 6627 . . 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 14640 . . . . . 6 ((𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑇 ++ 𝑈) ∈ Word 𝐵)
17163adant1 1148 . . . . 5 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑇 ++ 𝑈) ∈ Word 𝐵)
18 ccatcl 14640 . . . . 5 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) ∈ Word 𝐵)
1915, 17, 18syl2anc 596 . . . 4 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) ∈ Word 𝐵)
20 wrdfn 14594 . . . 4 ((𝑆 ++ (𝑇 ++ 𝑈)) ∈ Word 𝐵 → (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))))
2119, 20syl 18 . . 3 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))))
22 ccatlen 14641 . . . . . . . 8 ((𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘(𝑇 ++ 𝑈)) = ((♯‘𝑇) + (♯‘𝑈)))
23223adant1 1148 . . . . . . 7 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘(𝑇 ++ 𝑈)) = ((♯‘𝑇) + (♯‘𝑈)))
2423oveq2d 7430 . . . . . 6 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))) = ((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈))))
25 ccatlen 14641 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵) → (♯‘(𝑆 ++ (𝑇 ++ 𝑈))) = ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))))
2615, 17, 25syl2anc 596 . . . . . 6 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘(𝑆 ++ (𝑇 ++ 𝑈))) = ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))))
27 lencl 14599 . . . . . . . . 9 (𝑆 ∈ Word 𝐵 → (♯‘𝑆) ∈ ℕ0)
28273ad2ant1 1151 . . . . . . . 8 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ ℕ0)
2928nn0cnd 12592 . . . . . . 7 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ ℂ)
30 lencl 14599 . . . . . . . . 9 (𝑇 ∈ Word 𝐵 → (♯‘𝑇) ∈ ℕ0)
31303ad2ant2 1152 . . . . . . . 8 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑇) ∈ ℕ0)
3231nn0cnd 12592 . . . . . . 7 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑇) ∈ ℂ)
33 lencl 14599 . . . . . . . . 9 (𝑈 ∈ Word 𝐵 → (♯‘𝑈) ∈ ℕ0)
34333ad2ant3 1153 . . . . . . . 8 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑈) ∈ ℕ0)
3534nn0cnd 12592 . . . . . . 7 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑈) ∈ ℂ)
3629, 32, 35addassd 11256 . . . . . 6 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) = ((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈))))
3724, 26, 363eqtr4d 2805 . . . . 5 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘(𝑆 ++ (𝑇 ++ 𝑈))) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
3837oveq2d 7430 . . . 4 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))) = (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
3938fneq2d 6627 . . 3 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))) ↔ (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
4021, 39mpbid 235 . 2 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
4128nn0zd 12641 . . . 4 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ ℤ)
42 fzospliti 13748 . . . . 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 14643 . . . . . 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 12904 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ (ℤ‘(♯‘𝑆)))
53 uzaddcl 12954 . . . . . . . . . 10 (((♯‘𝑆) ∈ (ℤ‘(♯‘𝑆)) ∧ (♯‘𝑇) ∈ ℕ0) → ((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ‘(♯‘𝑆)))
5452, 31, 53syl2anc 596 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ‘(♯‘𝑆)))
55 fzoss2 13744 . . . . . . . . 9 (((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ‘(♯‘𝑆)) → (0..^(♯‘𝑆)) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
5654, 55syl 18 . . . . . . . 8 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (0..^(♯‘𝑆)) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
579oveq2d 7430 . . . . . . . 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 14643 . . . . . 6 (((𝑆 ++ 𝑇) ∈ Word 𝐵𝑈 ∈ Word 𝐵𝑥 ∈ (0..^(♯‘(𝑆 ++ 𝑇)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ 𝑇)‘𝑥))
6150, 51, 59, 60syl3anc 1398 . . . . 5 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ 𝑇)‘𝑥))
62 ccatval1 14643 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵𝑥 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = (𝑆𝑥))
6315, 17, 46, 62syl2an3an 1449 . . . . 5 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = (𝑆𝑥))
6448, 61, 633eqtr4d 2805 . . . 4 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥))
6531nn0zd 12641 . . . . . . 7 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑇) ∈ ℤ)
6641, 65zaddcld 12730 . . . . . 6 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘𝑇)) ∈ ℤ)
67 fzospliti 13748 . . . . . . 7 ((𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ∧ ((♯‘𝑆) + (♯‘𝑇)) ∈ ℤ) → (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∨ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
6867ex 418 . . . . . 6 (𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) → (((♯‘𝑆) + (♯‘𝑇)) ∈ ℤ → (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∨ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))))
6966, 68mpan9 516 . . . . 5 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∨ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
70 id 23 . . . . . . . . 9 (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) → 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))))
71 ccatval2 14644 . . . . . . . . 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 13783 . . . . . . . . . . 11 ((𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∧ (♯‘𝑇) ∈ ℤ) → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇)))
7675ex 418 . . . . . . . . . 10 (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) → ((♯‘𝑇) ∈ ℤ → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇))))
7765, 76mpan9 516 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇)))
78 ccatval1 14643 . . . . . . . . 9 ((𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵 ∧ (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑇‘(𝑥 − (♯‘𝑆))))
7973, 74, 77, 78syl3anc 1398 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑇‘(𝑥 − (♯‘𝑆))))
8072, 79eqtr4d 2798 . . . . . . 7 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ 𝑇)‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
8149adantr 486 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
82 fzoss1 13743 . . . . . . . . . . . 12 ((♯‘𝑆) ∈ (ℤ‘0) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
83 nn0uz 12926 . . . . . . . . . . . 12 0 = (ℤ‘0)
8482, 83eleq2s 2878 . . . . . . . . . . 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 12904 . . . . . . . . . . . 12 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ‘((♯‘𝑆) + (♯‘𝑇))))
92 uzaddcl 12954 . . . . . . . . . . . 12 ((((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ‘((♯‘𝑆) + (♯‘𝑇))) ∧ (♯‘𝑈) ∈ ℕ0) → (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) ∈ (ℤ‘((♯‘𝑆) + (♯‘𝑇))))
9391, 34, 92syl2anc 596 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) ∈ (ℤ‘((♯‘𝑆) + (♯‘𝑇))))
94 fzoss2 13744 . . . . . . . . . . 11 ((((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) ∈ (ℤ‘((♯‘𝑆) + (♯‘𝑇))) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
9593, 94syl 18 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
9624, 36eqtr4d 2798 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
9796oveq2d 7430 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))) = ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
9895, 97sseqtrrd 3968 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
9998sselda 3931 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
100 ccatval2 14644 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
10189, 90, 99, 100syl3anc 1398 . . . . . . 7 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
10280, 88, 1013eqtr4d 2805 . . . . . 6 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥))
1039oveq2d 7430 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑥 − (♯‘(𝑆 ++ 𝑇))) = (𝑥 − ((♯‘𝑆) + (♯‘𝑇))))
104103adantr 486 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 − (♯‘(𝑆 ++ 𝑇))) = (𝑥 − ((♯‘𝑆) + (♯‘𝑇))))
105 elfzoelz 13715 . . . . . . . . . . . . 13 (𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) → 𝑥 ∈ ℤ)
106105zcnd 12727 . . . . . . . . . . . 12 (𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) → 𝑥 ∈ ℂ)
107106adantl 487 . . . . . . . . . . 11 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ ℂ)
10829adantr 486 . . . . . . . . . . 11 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (♯‘𝑆) ∈ ℂ)
10932adantr 486 . . . . . . . . . . 11 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (♯‘𝑇) ∈ ℂ)
110107, 108, 109subsub4d 11625 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((𝑥 − (♯‘𝑆)) − (♯‘𝑇)) = (𝑥 − ((♯‘𝑆) + (♯‘𝑇))))
111104, 110eqtr4d 2798 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 − (♯‘(𝑆 ++ 𝑇))) = ((𝑥 − (♯‘𝑆)) − (♯‘𝑇)))
112111fveq2d 6883 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑈‘(𝑥 − (♯‘(𝑆 ++ 𝑇)))) = (𝑈‘((𝑥 − (♯‘𝑆)) − (♯‘𝑇))))
113 simpl2 1211 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑇 ∈ Word 𝐵)
114 simpl3 1212 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑈 ∈ Word 𝐵)
11536oveq2d 7430 . . . . . . . . . . . 12 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) = (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈)))))
116115eleq2d 2846 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ↔ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈))))))
117116biimpa 482 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈)))))
11834nn0zd 12641 . . . . . . . . . . . . 13 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑈) ∈ ℤ)
11965, 118zaddcld 12730 . . . . . . . . . . . 12 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ)
12041, 65, 1193jca 1146 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ ∧ ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ))
121120adantr 486 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ ∧ ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ))
122 fzosubel2 13782 . . . . . . . . . 10 ((𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈)))) ∧ ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ ∧ ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ)) → (𝑥 − (♯‘𝑆)) ∈ ((♯‘𝑇)..^((♯‘𝑇) + (♯‘𝑈))))
123117, 121, 122syl2anc 596 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 − (♯‘𝑆)) ∈ ((♯‘𝑇)..^((♯‘𝑇) + (♯‘𝑈))))
124 ccatval2 14644 . . . . . . . . 9 ((𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵 ∧ (𝑥 − (♯‘𝑆)) ∈ ((♯‘𝑇)..^((♯‘𝑇) + (♯‘𝑈)))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑈‘((𝑥 − (♯‘𝑆)) − (♯‘𝑇))))
125113, 114, 123, 124syl3anc 1398 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑈‘((𝑥 − (♯‘𝑆)) − (♯‘𝑇))))
126112, 125eqtr4d 2798 . . . . . . 7 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑈‘(𝑥 − (♯‘(𝑆 ++ 𝑇)))) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
12749adantr 486 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
1289, 10oveq12d 7432 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈))) = (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
129128eleq2d 2846 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑥 ∈ ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈))) ↔ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
130129biimpar 483 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈))))
131 ccatval2 14644 . . . . . . . 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 13743 . . . . . . . . . . 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 2805 . . . . . 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 7026 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 6528  cfv 6533  (class class class)co 7414  cc 11123  0cc0 11125   + caddc 11128  cmin 11466  0cn0 12529  cz 12616  cuz 12888  ..^cfzo 13710  chash 14395  Word cword 14579   ++ cconcat 14636
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 2732  ax-rep 5232  ax-sep 5251  ax-nul 5263  ax-pow 5330  ax-pr 5398  ax-un 7737  ax-cnex 11181  ax-resscn 11182  ax-1cn 11183  ax-icn 11184  ax-addcl 11185  ax-addrcl 11186  ax-mulcl 11187  ax-mulrcl 11188  ax-mulcom 11189  ax-addass 11190  ax-mulass 11191  ax-distr 11192  ax-i2m1 11193  ax-1ne0 11194  ax-1rid 11195  ax-rnegex 11196  ax-rrecex 11197  ax-cnre 11198  ax-pre-lttri 11199  ax-pre-lttrn 11200  ax-pre-ltadd 11201  ax-pre-mulgt0 11202
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 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-reu 3366  df-rab 3413  df-v 3452  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 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-pred 6299  df-ord 6360  df-on 6361  df-lim 6362  df-suc 6363  df-iota 6489  df-fun 6535  df-fn 6536  df-f 6537  df-f1 6538  df-fo 6539  df-f1o 6540  df-fv 6541  df-riota 7371  df-ov 7417  df-oprab 7418  df-mpo 7419  df-om 7864  df-1st 7987  df-2nd 7988  df-frecs 8281  df-wrecs 8312  df-recs 8361  df-rdg 8400  df-1o 8456  df-er 8697  df-en 8954  df-dom 8955  df-sdom 8956  df-fin 8957  df-card 9945  df-pnf 11270  df-mnf 11271  df-xr 11272  df-ltxr 11273  df-le 11274  df-sub 11468  df-neg 11469  df-nn 12259  df-n0 12530  df-z 12617  df-uz 12889  df-fz 13563  df-fzo 13711  df-hash 14396  df-word 14580  df-concat 14637
This theorem is used by:  ccatw2s1ass  14700  cats1cat  14933  cats2cat  14934  frmdmnd  18969  efginvrel2  19855  efgredleme  19871  efgredlemc  19873  efgcpbllemb  19883  numclwwlk1lem2foalem  30832  numclwwlk1lem2fo  30839  signstfvc  35083
  Copyright terms: Public domain W3C validator