![]() |
Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
|
Mirrors > Home > MPE Home > Th. List > swrdccatin12dOLD | Structured version Visualization version GIF version |
Description: Obsolete proof of pfxccatin12d 13849 as of 12-Oct-2022. (Contributed by AV, 31-May-2018.) (Proof modification is discouraged.) (New usage is discouraged.) |
Ref | Expression |
---|---|
swrdccatind.l | ⊢ (𝜑 → (♯‘𝐴) = 𝐿) |
swrdccatind.w | ⊢ (𝜑 → (𝐴 ∈ Word 𝑉 ∧ 𝐵 ∈ Word 𝑉)) |
pfxccatin12d.m | ⊢ (𝜑 → 𝑀 ∈ (0...𝐿)) |
pfxccatin12d.n | ⊢ (𝜑 → 𝑁 ∈ (𝐿...(𝐿 + (♯‘𝐵)))) |
Ref | Expression |
---|---|
swrdccatin12dOLD | ⊢ (𝜑 → ((𝐴 ++ 𝐵) substr 〈𝑀, 𝑁〉) = ((𝐴 substr 〈𝑀, 𝐿〉) ++ (𝐵 substr 〈0, (𝑁 − 𝐿)〉))) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | swrdccatind.l | . 2 ⊢ (𝜑 → (♯‘𝐴) = 𝐿) | |
2 | swrdccatind.w | . . . . . 6 ⊢ (𝜑 → (𝐴 ∈ Word 𝑉 ∧ 𝐵 ∈ Word 𝑉)) | |
3 | 2 | adantl 475 | . . . . 5 ⊢ (((♯‘𝐴) = 𝐿 ∧ 𝜑) → (𝐴 ∈ Word 𝑉 ∧ 𝐵 ∈ Word 𝑉)) |
4 | pfxccatin12d.m | . . . . . . . 8 ⊢ (𝜑 → 𝑀 ∈ (0...𝐿)) | |
5 | pfxccatin12d.n | . . . . . . . 8 ⊢ (𝜑 → 𝑁 ∈ (𝐿...(𝐿 + (♯‘𝐵)))) | |
6 | 4, 5 | jca 509 | . . . . . . 7 ⊢ (𝜑 → (𝑀 ∈ (0...𝐿) ∧ 𝑁 ∈ (𝐿...(𝐿 + (♯‘𝐵))))) |
7 | 6 | adantl 475 | . . . . . 6 ⊢ (((♯‘𝐴) = 𝐿 ∧ 𝜑) → (𝑀 ∈ (0...𝐿) ∧ 𝑁 ∈ (𝐿...(𝐿 + (♯‘𝐵))))) |
8 | oveq2 6912 | . . . . . . . . 9 ⊢ ((♯‘𝐴) = 𝐿 → (0...(♯‘𝐴)) = (0...𝐿)) | |
9 | 8 | eleq2d 2891 | . . . . . . . 8 ⊢ ((♯‘𝐴) = 𝐿 → (𝑀 ∈ (0...(♯‘𝐴)) ↔ 𝑀 ∈ (0...𝐿))) |
10 | id 22 | . . . . . . . . . 10 ⊢ ((♯‘𝐴) = 𝐿 → (♯‘𝐴) = 𝐿) | |
11 | oveq1 6911 | . . . . . . . . . 10 ⊢ ((♯‘𝐴) = 𝐿 → ((♯‘𝐴) + (♯‘𝐵)) = (𝐿 + (♯‘𝐵))) | |
12 | 10, 11 | oveq12d 6922 | . . . . . . . . 9 ⊢ ((♯‘𝐴) = 𝐿 → ((♯‘𝐴)...((♯‘𝐴) + (♯‘𝐵))) = (𝐿...(𝐿 + (♯‘𝐵)))) |
13 | 12 | eleq2d 2891 | . . . . . . . 8 ⊢ ((♯‘𝐴) = 𝐿 → (𝑁 ∈ ((♯‘𝐴)...((♯‘𝐴) + (♯‘𝐵))) ↔ 𝑁 ∈ (𝐿...(𝐿 + (♯‘𝐵))))) |
14 | 9, 13 | anbi12d 626 | . . . . . . 7 ⊢ ((♯‘𝐴) = 𝐿 → ((𝑀 ∈ (0...(♯‘𝐴)) ∧ 𝑁 ∈ ((♯‘𝐴)...((♯‘𝐴) + (♯‘𝐵)))) ↔ (𝑀 ∈ (0...𝐿) ∧ 𝑁 ∈ (𝐿...(𝐿 + (♯‘𝐵)))))) |
15 | 14 | adantr 474 | . . . . . 6 ⊢ (((♯‘𝐴) = 𝐿 ∧ 𝜑) → ((𝑀 ∈ (0...(♯‘𝐴)) ∧ 𝑁 ∈ ((♯‘𝐴)...((♯‘𝐴) + (♯‘𝐵)))) ↔ (𝑀 ∈ (0...𝐿) ∧ 𝑁 ∈ (𝐿...(𝐿 + (♯‘𝐵)))))) |
16 | 7, 15 | mpbird 249 | . . . . 5 ⊢ (((♯‘𝐴) = 𝐿 ∧ 𝜑) → (𝑀 ∈ (0...(♯‘𝐴)) ∧ 𝑁 ∈ ((♯‘𝐴)...((♯‘𝐴) + (♯‘𝐵))))) |
17 | eqid 2824 | . . . . . 6 ⊢ (♯‘𝐴) = (♯‘𝐴) | |
18 | 17 | swrdccatin12OLD 13831 | . . . . 5 ⊢ ((𝐴 ∈ Word 𝑉 ∧ 𝐵 ∈ Word 𝑉) → ((𝑀 ∈ (0...(♯‘𝐴)) ∧ 𝑁 ∈ ((♯‘𝐴)...((♯‘𝐴) + (♯‘𝐵)))) → ((𝐴 ++ 𝐵) substr 〈𝑀, 𝑁〉) = ((𝐴 substr 〈𝑀, (♯‘𝐴)〉) ++ (𝐵 substr 〈0, (𝑁 − (♯‘𝐴))〉)))) |
19 | 3, 16, 18 | sylc 65 | . . . 4 ⊢ (((♯‘𝐴) = 𝐿 ∧ 𝜑) → ((𝐴 ++ 𝐵) substr 〈𝑀, 𝑁〉) = ((𝐴 substr 〈𝑀, (♯‘𝐴)〉) ++ (𝐵 substr 〈0, (𝑁 − (♯‘𝐴))〉))) |
20 | 19 | ex 403 | . . 3 ⊢ ((♯‘𝐴) = 𝐿 → (𝜑 → ((𝐴 ++ 𝐵) substr 〈𝑀, 𝑁〉) = ((𝐴 substr 〈𝑀, (♯‘𝐴)〉) ++ (𝐵 substr 〈0, (𝑁 − (♯‘𝐴))〉)))) |
21 | opeq2 4623 | . . . . . 6 ⊢ ((♯‘𝐴) = 𝐿 → 〈𝑀, (♯‘𝐴)〉 = 〈𝑀, 𝐿〉) | |
22 | 21 | oveq2d 6920 | . . . . 5 ⊢ ((♯‘𝐴) = 𝐿 → (𝐴 substr 〈𝑀, (♯‘𝐴)〉) = (𝐴 substr 〈𝑀, 𝐿〉)) |
23 | oveq2 6912 | . . . . . . 7 ⊢ ((♯‘𝐴) = 𝐿 → (𝑁 − (♯‘𝐴)) = (𝑁 − 𝐿)) | |
24 | 23 | opeq2d 4629 | . . . . . 6 ⊢ ((♯‘𝐴) = 𝐿 → 〈0, (𝑁 − (♯‘𝐴))〉 = 〈0, (𝑁 − 𝐿)〉) |
25 | 24 | oveq2d 6920 | . . . . 5 ⊢ ((♯‘𝐴) = 𝐿 → (𝐵 substr 〈0, (𝑁 − (♯‘𝐴))〉) = (𝐵 substr 〈0, (𝑁 − 𝐿)〉)) |
26 | 22, 25 | oveq12d 6922 | . . . 4 ⊢ ((♯‘𝐴) = 𝐿 → ((𝐴 substr 〈𝑀, (♯‘𝐴)〉) ++ (𝐵 substr 〈0, (𝑁 − (♯‘𝐴))〉)) = ((𝐴 substr 〈𝑀, 𝐿〉) ++ (𝐵 substr 〈0, (𝑁 − 𝐿)〉))) |
27 | 26 | eqeq2d 2834 | . . 3 ⊢ ((♯‘𝐴) = 𝐿 → (((𝐴 ++ 𝐵) substr 〈𝑀, 𝑁〉) = ((𝐴 substr 〈𝑀, (♯‘𝐴)〉) ++ (𝐵 substr 〈0, (𝑁 − (♯‘𝐴))〉)) ↔ ((𝐴 ++ 𝐵) substr 〈𝑀, 𝑁〉) = ((𝐴 substr 〈𝑀, 𝐿〉) ++ (𝐵 substr 〈0, (𝑁 − 𝐿)〉)))) |
28 | 20, 27 | sylibd 231 | . 2 ⊢ ((♯‘𝐴) = 𝐿 → (𝜑 → ((𝐴 ++ 𝐵) substr 〈𝑀, 𝑁〉) = ((𝐴 substr 〈𝑀, 𝐿〉) ++ (𝐵 substr 〈0, (𝑁 − 𝐿)〉)))) |
29 | 1, 28 | mpcom 38 | 1 ⊢ (𝜑 → ((𝐴 ++ 𝐵) substr 〈𝑀, 𝑁〉) = ((𝐴 substr 〈𝑀, 𝐿〉) ++ (𝐵 substr 〈0, (𝑁 − 𝐿)〉))) |
Colors of variables: wff setvar class |
Syntax hints: → wi 4 ↔ wb 198 ∧ wa 386 = wceq 1658 ∈ wcel 2166 〈cop 4402 ‘cfv 6122 (class class class)co 6904 0cc0 10251 + caddc 10254 − cmin 10584 ...cfz 12618 ♯chash 13409 Word cword 13573 ++ cconcat 13629 substr csubstr 13699 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1896 ax-4 1910 ax-5 2011 ax-6 2077 ax-7 2114 ax-8 2168 ax-9 2175 ax-10 2194 ax-11 2209 ax-12 2222 ax-13 2390 ax-ext 2802 ax-rep 4993 ax-sep 5004 ax-nul 5012 ax-pow 5064 ax-pr 5126 ax-un 7208 ax-cnex 10307 ax-resscn 10308 ax-1cn 10309 ax-icn 10310 ax-addcl 10311 ax-addrcl 10312 ax-mulcl 10313 ax-mulrcl 10314 ax-mulcom 10315 ax-addass 10316 ax-mulass 10317 ax-distr 10318 ax-i2m1 10319 ax-1ne0 10320 ax-1rid 10321 ax-rnegex 10322 ax-rrecex 10323 ax-cnre 10324 ax-pre-lttri 10325 ax-pre-lttrn 10326 ax-pre-ltadd 10327 ax-pre-mulgt0 10328 |
This theorem depends on definitions: df-bi 199 df-an 387 df-or 881 df-3or 1114 df-3an 1115 df-tru 1662 df-ex 1881 df-nf 1885 df-sb 2070 df-mo 2604 df-eu 2639 df-clab 2811 df-cleq 2817 df-clel 2820 df-nfc 2957 df-ne 2999 df-nel 3102 df-ral 3121 df-rex 3122 df-reu 3123 df-rab 3125 df-v 3415 df-sbc 3662 df-csb 3757 df-dif 3800 df-un 3802 df-in 3804 df-ss 3811 df-pss 3813 df-nul 4144 df-if 4306 df-pw 4379 df-sn 4397 df-pr 4399 df-tp 4401 df-op 4403 df-uni 4658 df-int 4697 df-iun 4741 df-br 4873 df-opab 4935 df-mpt 4952 df-tr 4975 df-id 5249 df-eprel 5254 df-po 5262 df-so 5263 df-fr 5300 df-we 5302 df-xp 5347 df-rel 5348 df-cnv 5349 df-co 5350 df-dm 5351 df-rn 5352 df-res 5353 df-ima 5354 df-pred 5919 df-ord 5965 df-on 5966 df-lim 5967 df-suc 5968 df-iota 6085 df-fun 6124 df-fn 6125 df-f 6126 df-f1 6127 df-fo 6128 df-f1o 6129 df-fv 6130 df-riota 6865 df-ov 6907 df-oprab 6908 df-mpt2 6909 df-om 7326 df-1st 7427 df-2nd 7428 df-wrecs 7671 df-recs 7733 df-rdg 7771 df-1o 7825 df-oadd 7829 df-er 8008 df-en 8222 df-dom 8223 df-sdom 8224 df-fin 8225 df-card 9077 df-pnf 10392 df-mnf 10393 df-xr 10394 df-ltxr 10395 df-le 10396 df-sub 10586 df-neg 10587 df-nn 11350 df-n0 11618 df-z 11704 df-uz 11968 df-fz 12619 df-fzo 12760 df-hash 13410 df-word 13574 df-concat 13630 df-substr 13700 |
This theorem is referenced by: (None) |
Copyright terms: Public domain | W3C validator |