![]() |
Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
|
Mirrors > Home > MPE Home > Th. List > swrdval2 | Structured version Visualization version GIF version |
Description: Value of the subword extractor in its intended domain. (Contributed by Stefan O'Rear, 15-Aug-2015.) (Proof shortened by AV, 2-May-2020.) |
Ref | Expression |
---|---|
swrdval2 | ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (𝑆 substr 〈𝐹, 𝐿〉) = (𝑥 ∈ (0..^(𝐿 − 𝐹)) ↦ (𝑆‘(𝑥 + 𝐹)))) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | simp1 1133 | . . 3 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → 𝑆 ∈ Word 𝐴) | |
2 | elfzelz 13557 | . . . 4 ⊢ (𝐹 ∈ (0...𝐿) → 𝐹 ∈ ℤ) | |
3 | 2 | 3ad2ant2 1131 | . . 3 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → 𝐹 ∈ ℤ) |
4 | elfzelz 13557 | . . . 4 ⊢ (𝐿 ∈ (0...(♯‘𝑆)) → 𝐿 ∈ ℤ) | |
5 | 4 | 3ad2ant3 1132 | . . 3 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → 𝐿 ∈ ℤ) |
6 | swrdval 14653 | . . 3 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ ℤ ∧ 𝐿 ∈ ℤ) → (𝑆 substr 〈𝐹, 𝐿〉) = if((𝐹..^𝐿) ⊆ dom 𝑆, (𝑥 ∈ (0..^(𝐿 − 𝐹)) ↦ (𝑆‘(𝑥 + 𝐹))), ∅)) | |
7 | 1, 3, 5, 6 | syl3anc 1368 | . 2 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (𝑆 substr 〈𝐹, 𝐿〉) = if((𝐹..^𝐿) ⊆ dom 𝑆, (𝑥 ∈ (0..^(𝐿 − 𝐹)) ↦ (𝑆‘(𝑥 + 𝐹))), ∅)) |
8 | elfzuz 13553 | . . . . . . 7 ⊢ (𝐹 ∈ (0...𝐿) → 𝐹 ∈ (ℤ≥‘0)) | |
9 | 8 | 3ad2ant2 1131 | . . . . . 6 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → 𝐹 ∈ (ℤ≥‘0)) |
10 | fzoss1 13715 | . . . . . 6 ⊢ (𝐹 ∈ (ℤ≥‘0) → (𝐹..^𝐿) ⊆ (0..^𝐿)) | |
11 | 9, 10 | syl 17 | . . . . 5 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (𝐹..^𝐿) ⊆ (0..^𝐿)) |
12 | elfzuz3 13554 | . . . . . . 7 ⊢ (𝐿 ∈ (0...(♯‘𝑆)) → (♯‘𝑆) ∈ (ℤ≥‘𝐿)) | |
13 | 12 | 3ad2ant3 1132 | . . . . . 6 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (♯‘𝑆) ∈ (ℤ≥‘𝐿)) |
14 | fzoss2 13716 | . . . . . 6 ⊢ ((♯‘𝑆) ∈ (ℤ≥‘𝐿) → (0..^𝐿) ⊆ (0..^(♯‘𝑆))) | |
15 | 13, 14 | syl 17 | . . . . 5 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (0..^𝐿) ⊆ (0..^(♯‘𝑆))) |
16 | 11, 15 | sstrd 3990 | . . . 4 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (𝐹..^𝐿) ⊆ (0..^(♯‘𝑆))) |
17 | wrddm 14531 | . . . . 5 ⊢ (𝑆 ∈ Word 𝐴 → dom 𝑆 = (0..^(♯‘𝑆))) | |
18 | 17 | 3ad2ant1 1130 | . . . 4 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → dom 𝑆 = (0..^(♯‘𝑆))) |
19 | 16, 18 | sseqtrrd 4021 | . . 3 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (𝐹..^𝐿) ⊆ dom 𝑆) |
20 | 19 | iftrued 4541 | . 2 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → if((𝐹..^𝐿) ⊆ dom 𝑆, (𝑥 ∈ (0..^(𝐿 − 𝐹)) ↦ (𝑆‘(𝑥 + 𝐹))), ∅) = (𝑥 ∈ (0..^(𝐿 − 𝐹)) ↦ (𝑆‘(𝑥 + 𝐹)))) |
21 | 7, 20 | eqtrd 2766 | 1 ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝐹 ∈ (0...𝐿) ∧ 𝐿 ∈ (0...(♯‘𝑆))) → (𝑆 substr 〈𝐹, 𝐿〉) = (𝑥 ∈ (0..^(𝐿 − 𝐹)) ↦ (𝑆‘(𝑥 + 𝐹)))) |
Colors of variables: wff setvar class |
Syntax hints: → wi 4 ∧ w3a 1084 = wceq 1534 ∈ wcel 2099 ⊆ wss 3947 ∅c0 4325 ifcif 4533 〈cop 4639 ↦ cmpt 5238 dom cdm 5684 ‘cfv 6556 (class class class)co 7426 0cc0 11160 + caddc 11163 − cmin 11496 ℤcz 12612 ℤ≥cuz 12876 ...cfz 13540 ..^cfzo 13683 ♯chash 14349 Word cword 14524 substr csubstr 14650 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1790 ax-4 1804 ax-5 1906 ax-6 1964 ax-7 2004 ax-8 2101 ax-9 2109 ax-10 2130 ax-11 2147 ax-12 2167 ax-ext 2697 ax-rep 5292 ax-sep 5306 ax-nul 5313 ax-pow 5371 ax-pr 5435 ax-un 7748 ax-cnex 11216 ax-resscn 11217 ax-1cn 11218 ax-icn 11219 ax-addcl 11220 ax-addrcl 11221 ax-mulcl 11222 ax-mulrcl 11223 ax-mulcom 11224 ax-addass 11225 ax-mulass 11226 ax-distr 11227 ax-i2m1 11228 ax-1ne0 11229 ax-1rid 11230 ax-rnegex 11231 ax-rrecex 11232 ax-cnre 11233 ax-pre-lttri 11234 ax-pre-lttrn 11235 ax-pre-ltadd 11236 ax-pre-mulgt0 11237 |
This theorem depends on definitions: df-bi 206 df-an 395 df-or 846 df-3or 1085 df-3an 1086 df-tru 1537 df-fal 1547 df-ex 1775 df-nf 1779 df-sb 2061 df-mo 2529 df-eu 2558 df-clab 2704 df-cleq 2718 df-clel 2803 df-nfc 2878 df-ne 2931 df-nel 3037 df-ral 3052 df-rex 3061 df-reu 3365 df-rab 3420 df-v 3464 df-sbc 3777 df-csb 3893 df-dif 3950 df-un 3952 df-in 3954 df-ss 3964 df-pss 3967 df-nul 4326 df-if 4534 df-pw 4609 df-sn 4634 df-pr 4636 df-op 4640 df-uni 4916 df-int 4957 df-iun 5005 df-br 5156 df-opab 5218 df-mpt 5239 df-tr 5273 df-id 5582 df-eprel 5588 df-po 5596 df-so 5597 df-fr 5639 df-we 5641 df-xp 5690 df-rel 5691 df-cnv 5692 df-co 5693 df-dm 5694 df-rn 5695 df-res 5696 df-ima 5697 df-pred 6314 df-ord 6381 df-on 6382 df-lim 6383 df-suc 6384 df-iota 6508 df-fun 6558 df-fn 6559 df-f 6560 df-f1 6561 df-fo 6562 df-f1o 6563 df-fv 6564 df-riota 7382 df-ov 7429 df-oprab 7430 df-mpo 7431 df-om 7879 df-1st 8005 df-2nd 8006 df-frecs 8298 df-wrecs 8329 df-recs 8403 df-rdg 8442 df-1o 8498 df-er 8736 df-en 8977 df-dom 8978 df-sdom 8979 df-fin 8980 df-card 9984 df-pnf 11302 df-mnf 11303 df-xr 11304 df-ltxr 11305 df-le 11306 df-sub 11498 df-neg 11499 df-nn 12267 df-n0 12527 df-z 12613 df-uz 12877 df-fz 13541 df-fzo 13684 df-hash 14350 df-word 14525 df-substr 14651 |
This theorem is referenced by: swrdlen 14657 swrdfv 14658 swrdwrdsymb 14672 pfxmpt 14688 swrdswrd 14715 swrdrn2 32820 swrdrn3 32821 cshw1s2 32826 |
Copyright terms: Public domain | W3C validator |