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

Theorem ccatass 14646
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 14631 . . . . 5 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
2 ccatcl 14631 . . . . 5 (((𝑆 ++ 𝑇) ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) ∈ Word 𝐵)
31, 2stoic3 1809 . . . 4 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) ∈ Word 𝐵)
4 wrdfn 14585 . . . 4 (((𝑆 ++ 𝑇) ++ 𝑈) ∈ Word 𝐵 → ((𝑆 ++ 𝑇) ++ 𝑈) Fn (0..^(♯‘((𝑆 ++ 𝑇) ++ 𝑈))))
53, 4syl 18 . . 3 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) Fn (0..^(♯‘((𝑆 ++ 𝑇) ++ 𝑈))))
6 ccatlen 14632 . . . . . . 7 (((𝑆 ++ 𝑇) ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘((𝑆 ++ 𝑇) ++ 𝑈)) = ((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)))
71, 6stoic3 1809 . . . . . 6 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘((𝑆 ++ 𝑇) ++ 𝑈)) = ((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)))
8 ccatlen 14632 . . . . . . . 8 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵) → (♯‘(𝑆 ++ 𝑇)) = ((♯‘𝑆) + (♯‘𝑇)))
983adant3 1150 . . . . . . 7 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘(𝑆 ++ 𝑇)) = ((♯‘𝑆) + (♯‘𝑇)))
109oveq1d 7434 . . . . . 6 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈)) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
117, 10eqtrd 2800 . . . . 5 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘((𝑆 ++ 𝑇) ++ 𝑈)) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
1211oveq2d 7435 . . . 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 14631 . . . . . 6 ((𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑇 ++ 𝑈) ∈ Word 𝐵)
17163adant1 1148 . . . . 5 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑇 ++ 𝑈) ∈ Word 𝐵)
18 ccatcl 14631 . . . . 5 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) ∈ Word 𝐵)
1915, 17, 18syl2anc 596 . . . 4 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) ∈ Word 𝐵)
20 wrdfn 14585 . . . 4 ((𝑆 ++ (𝑇 ++ 𝑈)) ∈ Word 𝐵 → (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))))
2119, 20syl 18 . . 3 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑆 ++ (𝑇 ++ 𝑈)) Fn (0..^(♯‘(𝑆 ++ (𝑇 ++ 𝑈)))))
22 ccatlen 14632 . . . . . . . 8 ((𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘(𝑇 ++ 𝑈)) = ((♯‘𝑇) + (♯‘𝑈)))
23223adant1 1148 . . . . . . 7 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘(𝑇 ++ 𝑈)) = ((♯‘𝑇) + (♯‘𝑈)))
2423oveq2d 7435 . . . . . 6 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))) = ((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈))))
25 ccatlen 14632 . . . . . . 7 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵) → (♯‘(𝑆 ++ (𝑇 ++ 𝑈))) = ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))))
2615, 17, 25syl2anc 596 . . . . . 6 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘(𝑆 ++ (𝑇 ++ 𝑈))) = ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))))
27 lencl 14590 . . . . . . . . 9 (𝑆 ∈ Word 𝐵 → (♯‘𝑆) ∈ ℕ0)
28273ad2ant1 1151 . . . . . . . 8 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ ℕ0)
2928nn0cnd 12584 . . . . . . 7 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ ℂ)
30 lencl 14590 . . . . . . . . 9 (𝑇 ∈ Word 𝐵 → (♯‘𝑇) ∈ ℕ0)
31303ad2ant2 1152 . . . . . . . 8 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑇) ∈ ℕ0)
3231nn0cnd 12584 . . . . . . 7 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑇) ∈ ℂ)
33 lencl 14590 . . . . . . . . 9 (𝑈 ∈ Word 𝐵 → (♯‘𝑈) ∈ ℕ0)
34333ad2ant3 1153 . . . . . . . 8 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑈) ∈ ℕ0)
3534nn0cnd 12584 . . . . . . 7 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑈) ∈ ℂ)
3629, 32, 35addassd 11248 . . . . . 6 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) = ((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈))))
3724, 26, 363eqtr4d 2810 . . . . 5 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘(𝑆 ++ (𝑇 ++ 𝑈))) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
3837oveq2d 7435 . . . 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 12633 . . . 4 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ ℤ)
42 fzospliti 13739 . . . . 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 14634 . . . . . 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 12896 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑆) ∈ (ℤ‘(♯‘𝑆)))
53 uzaddcl 12946 . . . . . . . . . 10 (((♯‘𝑆) ∈ (ℤ‘(♯‘𝑆)) ∧ (♯‘𝑇) ∈ ℕ0) → ((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ‘(♯‘𝑆)))
5452, 31, 53syl2anc 596 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ‘(♯‘𝑆)))
55 fzoss2 13735 . . . . . . . . 9 (((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ‘(♯‘𝑆)) → (0..^(♯‘𝑆)) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
5654, 55syl 18 . . . . . . . 8 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (0..^(♯‘𝑆)) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
579oveq2d 7435 . . . . . . . 8 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (0..^(♯‘(𝑆 ++ 𝑇))) = (0..^((♯‘𝑆) + (♯‘𝑇))))
5856, 57sseqtrrd 3975 . . . . . . 7 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (0..^(♯‘𝑆)) ⊆ (0..^(♯‘(𝑆 ++ 𝑇))))
5958sselda 3938 . . . . . 6 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → 𝑥 ∈ (0..^(♯‘(𝑆 ++ 𝑇))))
60 ccatval1 14634 . . . . . 6 (((𝑆 ++ 𝑇) ∈ Word 𝐵𝑈 ∈ Word 𝐵𝑥 ∈ (0..^(♯‘(𝑆 ++ 𝑇)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ 𝑇)‘𝑥))
6150, 51, 59, 60syl3anc 1398 . . . . 5 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ 𝑇)‘𝑥))
62 ccatval1 14634 . . . . . 6 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵𝑥 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = (𝑆𝑥))
6315, 17, 46, 62syl2an3an 1449 . . . . 5 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = (𝑆𝑥))
6448, 61, 633eqtr4d 2810 . . . 4 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (0..^(♯‘𝑆))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥))
6531nn0zd 12633 . . . . . . 7 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑇) ∈ ℤ)
6641, 65zaddcld 12722 . . . . . 6 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘𝑇)) ∈ ℤ)
67 fzospliti 13739 . . . . . . 7 ((𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ∧ ((♯‘𝑆) + (♯‘𝑇)) ∈ ℤ) → (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∨ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
6867ex 418 . . . . . 6 (𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) → (((♯‘𝑆) + (♯‘𝑇)) ∈ ℤ → (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∨ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))))
6966, 68mpan9 516 . . . . 5 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∨ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
70 id 23 . . . . . . . . 9 (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) → 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))))
71 ccatval2 14635 . . . . . . . . 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 13774 . . . . . . . . . . 11 ((𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ∧ (♯‘𝑇) ∈ ℤ) → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇)))
7675ex 418 . . . . . . . . . 10 (𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) → ((♯‘𝑇) ∈ ℤ → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇))))
7765, 76mpan9 516 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇)))
78 ccatval1 14634 . . . . . . . . 9 ((𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵 ∧ (𝑥 − (♯‘𝑆)) ∈ (0..^(♯‘𝑇))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑇‘(𝑥 − (♯‘𝑆))))
7973, 74, 77, 78syl3anc 1398 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑇‘(𝑥 − (♯‘𝑆))))
8072, 79eqtr4d 2803 . . . . . . 7 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ 𝑇)‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
8149adantr 486 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
82 fzoss1 13734 . . . . . . . . . . . 12 ((♯‘𝑆) ∈ (ℤ‘0) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
83 nn0uz 12918 . . . . . . . . . . . 12 0 = (ℤ‘0)
8482, 83eleq2s 2883 . . . . . . . . . . 11 ((♯‘𝑆) ∈ ℕ0 → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
8528, 84syl 18 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^((♯‘𝑆) + (♯‘𝑇))))
8685, 57sseqtrrd 3975 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ (0..^(♯‘(𝑆 ++ 𝑇))))
8786sselda 3938 . . . . . . . 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 12896 . . . . . . . . . . . 12 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ‘((♯‘𝑆) + (♯‘𝑇))))
92 uzaddcl 12946 . . . . . . . . . . . 12 ((((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ‘((♯‘𝑆) + (♯‘𝑇))) ∧ (♯‘𝑈) ∈ ℕ0) → (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) ∈ (ℤ‘((♯‘𝑆) + (♯‘𝑇))))
9391, 34, 92syl2anc 596 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) ∈ (ℤ‘((♯‘𝑆) + (♯‘𝑇))))
94 fzoss2 13735 . . . . . . . . . . 11 ((((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)) ∈ (ℤ‘((♯‘𝑆) + (♯‘𝑇))) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
9593, 94syl 18 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
9624, 36eqtr4d 2803 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))) = (((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))
9796oveq2d 7435 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))) = ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
9895, 97sseqtrrd 3975 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇))) ⊆ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
9998sselda 3938 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
100 ccatval2 14635 . . . . . . . 8 ((𝑆 ∈ Word 𝐵 ∧ (𝑇 ++ 𝑈) ∈ Word 𝐵𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈))))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
10189, 90, 99, 100syl3anc 1398 . . . . . . 7 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
10280, 88, 1013eqtr4d 2810 . . . . . 6 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → (((𝑆 ++ 𝑇) ++ 𝑈)‘𝑥) = ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥))
1039oveq2d 7435 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑥 − (♯‘(𝑆 ++ 𝑇))) = (𝑥 − ((♯‘𝑆) + (♯‘𝑇))))
104103adantr 486 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 − (♯‘(𝑆 ++ 𝑇))) = (𝑥 − ((♯‘𝑆) + (♯‘𝑇))))
105 elfzoelz 13706 . . . . . . . . . . . . 13 (𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) → 𝑥 ∈ ℤ)
106105zcnd 12719 . . . . . . . . . . . 12 (𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) → 𝑥 ∈ ℂ)
107106adantl 487 . . . . . . . . . . 11 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ ℂ)
10829adantr 486 . . . . . . . . . . 11 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (♯‘𝑆) ∈ ℂ)
10932adantr 486 . . . . . . . . . . 11 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (♯‘𝑇) ∈ ℂ)
110107, 108, 109subsub4d 11617 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((𝑥 − (♯‘𝑆)) − (♯‘𝑇)) = (𝑥 − ((♯‘𝑆) + (♯‘𝑇))))
111104, 110eqtr4d 2803 . . . . . . . . 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 7435 . . . . . . . . . . . 12 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) = (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈)))))
116115eleq2d 2851 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ↔ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈))))))
117116biimpa 482 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈)))))
11834nn0zd 12633 . . . . . . . . . . . . 13 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (♯‘𝑈) ∈ ℤ)
11965, 118zaddcld 12722 . . . . . . . . . . . 12 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ)
12041, 65, 1193jca 1146 . . . . . . . . . . 11 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ ∧ ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ))
121120adantr 486 . . . . . . . . . 10 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ ∧ ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ))
122 fzosubel2 13773 . . . . . . . . . 10 ((𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^((♯‘𝑆) + ((♯‘𝑇) + (♯‘𝑈)))) ∧ ((♯‘𝑆) ∈ ℤ ∧ (♯‘𝑇) ∈ ℤ ∧ ((♯‘𝑇) + (♯‘𝑈)) ∈ ℤ)) → (𝑥 − (♯‘𝑆)) ∈ ((♯‘𝑇)..^((♯‘𝑇) + (♯‘𝑈))))
123117, 121, 122syl2anc 596 . . . . . . . . 9 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑥 − (♯‘𝑆)) ∈ ((♯‘𝑇)..^((♯‘𝑇) + (♯‘𝑈))))
124 ccatval2 14635 . . . . . . . . 9 ((𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵 ∧ (𝑥 − (♯‘𝑆)) ∈ ((♯‘𝑇)..^((♯‘𝑇) + (♯‘𝑈)))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑈‘((𝑥 − (♯‘𝑆)) − (♯‘𝑇))))
125113, 114, 123, 124syl3anc 1398 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))) = (𝑈‘((𝑥 − (♯‘𝑆)) − (♯‘𝑇))))
126112, 125eqtr4d 2803 . . . . . . 7 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑈‘(𝑥 − (♯‘(𝑆 ++ 𝑇)))) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
12749adantr 486 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → (𝑆 ++ 𝑇) ∈ Word 𝐵)
1289, 10oveq12d 7437 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈))) = (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
129128eleq2d 2851 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (𝑥 ∈ ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈))) ↔ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))))
130129biimpar 483 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ ((♯‘(𝑆 ++ 𝑇))..^((♯‘(𝑆 ++ 𝑇)) + (♯‘𝑈))))
131 ccatval2 14635 . . . . . . . 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 13734 . . . . . . . . . . 11 (((♯‘𝑆) + (♯‘𝑇)) ∈ (ℤ‘(♯‘𝑆)) → (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
13654, 135syl 18 . . . . . . . . . 10 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ⊆ ((♯‘𝑆)..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))))
137136, 97sseqtrrd 3975 . . . . . . . . 9 ((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) → (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈))) ⊆ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
138137sselda 3938 . . . . . . . 8 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → 𝑥 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘(𝑇 ++ 𝑈)))))
139133, 134, 138, 100syl3anc 1398 . . . . . . 7 (((𝑆 ∈ Word 𝐵𝑇 ∈ Word 𝐵𝑈 ∈ Word 𝐵) ∧ 𝑥 ∈ (((♯‘𝑆) + (♯‘𝑇))..^(((♯‘𝑆) + (♯‘𝑇)) + (♯‘𝑈)))) → ((𝑆 ++ (𝑇 ++ 𝑈))‘𝑥) = ((𝑇 ++ 𝑈)‘(𝑥 − (♯‘𝑆))))
140126, 132, 1393eqtr4d 2810 . . . . . 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 2146  wss 3906   Fn wfn 6535  cfv 6540  (class class class)co 7419  cc 11115  0cc0 11117   + caddc 11120  cmin 11458  0cn0 12521  cz 12608  cuz 12880  ..^cfzo 13701  chash 14386  Word cword 14570   ++ cconcat 14627
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 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2737  ax-rep 5240  ax-sep 5259  ax-nul 5271  ax-pow 5338  ax-pr 5406  ax-un 7742  ax-cnex 11173  ax-resscn 11174  ax-1cn 11175  ax-icn 11176  ax-addcl 11177  ax-addrcl 11178  ax-mulcl 11179  ax-mulrcl 11180  ax-mulcom 11181  ax-addass 11182  ax-mulass 11183  ax-distr 11184  ax-i2m1 11185  ax-1ne0 11186  ax-1rid 11187  ax-rnegex 11188  ax-rrecex 11189  ax-cnre 11190  ax-pre-lttri 11191  ax-pre-lttrn 11192  ax-pre-ltadd 11193  ax-pre-mulgt0 11194
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 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-nel 3067  df-ral 3082  df-rex 3092  df-reu 3372  df-rab 3419  df-v 3459  df-sbc 3747  df-csb 3855  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-pss 3926  df-nul 4287  df-if 4490  df-pw 4566  df-sn 4592  df-pr 4594  df-op 4598  df-uni 4875  df-int 4915  df-iun 4960  df-br 5112  df-opab 5176  df-mpt 5195  df-tr 5221  df-id 5558  df-eprel 5563  df-po 5571  df-so 5572  df-fr 5616  df-we 5618  df-xp 5669  df-rel 5670  df-cnv 5671  df-co 5672  df-dm 5673  df-rn 5674  df-res 5675  df-ima 5676  df-pred 6306  df-ord 6367  df-on 6368  df-lim 6369  df-suc 6370  df-iota 6496  df-fun 6542  df-fn 6543  df-f 6544  df-f1 6545  df-fo 6546  df-f1o 6547  df-fv 6548  df-riota 7376  df-ov 7422  df-oprab 7423  df-mpo 7424  df-om 7869  df-1st 7992  df-2nd 7993  df-frecs 8284  df-wrecs 8315  df-recs 8364  df-rdg 8403  df-1o 8459  df-er 8700  df-en 8950  df-dom 8951  df-sdom 8952  df-fin 8953  df-card 9941  df-pnf 11262  df-mnf 11263  df-xr 11264  df-ltxr 11265  df-le 11266  df-sub 11460  df-neg 11461  df-nn 12251  df-n0 12522  df-z 12609  df-uz 12881  df-fz 13554  df-fzo 13702  df-hash 14387  df-word 14571  df-concat 14628
This theorem is used by:  ccatw2s1ass  14691  cats1cat  14924  cats2cat  14925  frmdmnd  18957  efginvrel2  19843  efgredleme  19859  efgredlemc  19861  efgcpbllemb  19871  numclwwlk1lem2foalem  30775  numclwwlk1lem2fo  30782  signstfvc  35028
  Copyright terms: Public domain W3C validator