Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
Mirrors > Home > MPE Home > Th. List > ccatfval | Structured version Visualization version GIF version |
Description: Value of the concatenation operator. (Contributed by Stefan O'Rear, 15-Aug-2015.) |
Ref | Expression |
---|---|
ccatfval | ⊢ ((𝑆 ∈ 𝑉 ∧ 𝑇 ∈ 𝑊) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))))) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | elex 3510 | . 2 ⊢ (𝑆 ∈ 𝑉 → 𝑆 ∈ V) | |
2 | elex 3510 | . 2 ⊢ (𝑇 ∈ 𝑊 → 𝑇 ∈ V) | |
3 | fveq2 6663 | . . . . . 6 ⊢ (𝑠 = 𝑆 → (♯‘𝑠) = (♯‘𝑆)) | |
4 | fveq2 6663 | . . . . . 6 ⊢ (𝑡 = 𝑇 → (♯‘𝑡) = (♯‘𝑇)) | |
5 | 3, 4 | oveqan12d 7164 | . . . . 5 ⊢ ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → ((♯‘𝑠) + (♯‘𝑡)) = ((♯‘𝑆) + (♯‘𝑇))) |
6 | 5 | oveq2d 7161 | . . . 4 ⊢ ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → (0..^((♯‘𝑠) + (♯‘𝑡))) = (0..^((♯‘𝑆) + (♯‘𝑇)))) |
7 | 3 | oveq2d 7161 | . . . . . . 7 ⊢ (𝑠 = 𝑆 → (0..^(♯‘𝑠)) = (0..^(♯‘𝑆))) |
8 | 7 | eleq2d 2895 | . . . . . 6 ⊢ (𝑠 = 𝑆 → (𝑥 ∈ (0..^(♯‘𝑠)) ↔ 𝑥 ∈ (0..^(♯‘𝑆)))) |
9 | 8 | adantr 481 | . . . . 5 ⊢ ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → (𝑥 ∈ (0..^(♯‘𝑠)) ↔ 𝑥 ∈ (0..^(♯‘𝑆)))) |
10 | fveq1 6662 | . . . . . 6 ⊢ (𝑠 = 𝑆 → (𝑠‘𝑥) = (𝑆‘𝑥)) | |
11 | 10 | adantr 481 | . . . . 5 ⊢ ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → (𝑠‘𝑥) = (𝑆‘𝑥)) |
12 | simpr 485 | . . . . . 6 ⊢ ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → 𝑡 = 𝑇) | |
13 | 3 | oveq2d 7161 | . . . . . . 7 ⊢ (𝑠 = 𝑆 → (𝑥 − (♯‘𝑠)) = (𝑥 − (♯‘𝑆))) |
14 | 13 | adantr 481 | . . . . . 6 ⊢ ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → (𝑥 − (♯‘𝑠)) = (𝑥 − (♯‘𝑆))) |
15 | 12, 14 | fveq12d 6670 | . . . . 5 ⊢ ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → (𝑡‘(𝑥 − (♯‘𝑠))) = (𝑇‘(𝑥 − (♯‘𝑆)))) |
16 | 9, 11, 15 | ifbieq12d 4490 | . . . 4 ⊢ ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → if(𝑥 ∈ (0..^(♯‘𝑠)), (𝑠‘𝑥), (𝑡‘(𝑥 − (♯‘𝑠)))) = if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆))))) |
17 | 6, 16 | mpteq12dv 5142 | . . 3 ⊢ ((𝑠 = 𝑆 ∧ 𝑡 = 𝑇) → (𝑥 ∈ (0..^((♯‘𝑠) + (♯‘𝑡))) ↦ if(𝑥 ∈ (0..^(♯‘𝑠)), (𝑠‘𝑥), (𝑡‘(𝑥 − (♯‘𝑠))))) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))))) |
18 | df-concat 13911 | . . 3 ⊢ ++ = (𝑠 ∈ V, 𝑡 ∈ V ↦ (𝑥 ∈ (0..^((♯‘𝑠) + (♯‘𝑡))) ↦ if(𝑥 ∈ (0..^(♯‘𝑠)), (𝑠‘𝑥), (𝑡‘(𝑥 − (♯‘𝑠)))))) | |
19 | ovex 7178 | . . . 4 ⊢ (0..^((♯‘𝑆) + (♯‘𝑇))) ∈ V | |
20 | 19 | mptex 6977 | . . 3 ⊢ (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆))))) ∈ V |
21 | 17, 18, 20 | ovmpoa 7294 | . 2 ⊢ ((𝑆 ∈ V ∧ 𝑇 ∈ V) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))))) |
22 | 1, 2, 21 | syl2an 595 | 1 ⊢ ((𝑆 ∈ 𝑉 ∧ 𝑇 ∈ 𝑊) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))))) |
Colors of variables: wff setvar class |
Syntax hints: → wi 4 ↔ wb 207 ∧ wa 396 = wceq 1528 ∈ wcel 2105 Vcvv 3492 ifcif 4463 ↦ cmpt 5137 ‘cfv 6348 (class class class)co 7145 0cc0 10525 + caddc 10528 − cmin 10858 ..^cfzo 13021 ♯chash 13678 ++ cconcat 13910 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1787 ax-4 1801 ax-5 1902 ax-6 1961 ax-7 2006 ax-8 2107 ax-9 2115 ax-10 2136 ax-11 2151 ax-12 2167 ax-ext 2790 ax-rep 5181 ax-sep 5194 ax-nul 5201 ax-pr 5320 |
This theorem depends on definitions: df-bi 208 df-an 397 df-or 842 df-3an 1081 df-tru 1531 df-ex 1772 df-nf 1776 df-sb 2061 df-mo 2615 df-eu 2647 df-clab 2797 df-cleq 2811 df-clel 2890 df-nfc 2960 df-ne 3014 df-ral 3140 df-rex 3141 df-reu 3142 df-rab 3144 df-v 3494 df-sbc 3770 df-csb 3881 df-dif 3936 df-un 3938 df-in 3940 df-ss 3949 df-nul 4289 df-if 4464 df-sn 4558 df-pr 4560 df-op 4564 df-uni 4831 df-iun 4912 df-br 5058 df-opab 5120 df-mpt 5138 df-id 5453 df-xp 5554 df-rel 5555 df-cnv 5556 df-co 5557 df-dm 5558 df-rn 5559 df-res 5560 df-ima 5561 df-iota 6307 df-fun 6350 df-fn 6351 df-f 6352 df-f1 6353 df-fo 6354 df-f1o 6355 df-fv 6356 df-ov 7148 df-oprab 7149 df-mpo 7150 df-concat 13911 |
This theorem is referenced by: ccatcl 13914 ccatlen 13915 ccatlenOLD 13916 ccatval1 13918 ccatval1OLD 13919 ccatval2 13920 ccatvalfn 13923 ccatalpha 13935 repswccat 14136 ccatco 14185 ofccat 14317 ccatmulgnn0dir 31711 |
Copyright terms: Public domain | W3C validator |