![]() |
Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
|
Mirrors > Home > MPE Home > Th. List > wrdred1hash | Structured version Visualization version GIF version |
Description: The length of a word truncated by a symbol. (Contributed by Alexander van der Vekens, 1-Nov-2017.) (Revised by AV, 29-Jan-2021.) |
Ref | Expression |
---|---|
wrdred1hash | ⊢ ((𝐹 ∈ Word 𝑆 ∧ 1 ≤ (♯‘𝐹)) → (♯‘(𝐹 ↾ (0..^((♯‘𝐹) − 1)))) = ((♯‘𝐹) − 1)) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | lencl 14488 | . . 3 ⊢ (𝐹 ∈ Word 𝑆 → (♯‘𝐹) ∈ ℕ0) | |
2 | wrdf 14474 | . . . 4 ⊢ (𝐹 ∈ Word 𝑆 → 𝐹:(0..^(♯‘𝐹))⟶𝑆) | |
3 | ffn 6718 | . . . 4 ⊢ (𝐹:(0..^(♯‘𝐹))⟶𝑆 → 𝐹 Fn (0..^(♯‘𝐹))) | |
4 | nn0z 12588 | . . . . . . . . . . 11 ⊢ ((♯‘𝐹) ∈ ℕ0 → (♯‘𝐹) ∈ ℤ) | |
5 | fzossrbm1 13666 | . . . . . . . . . . 11 ⊢ ((♯‘𝐹) ∈ ℤ → (0..^((♯‘𝐹) − 1)) ⊆ (0..^(♯‘𝐹))) | |
6 | 4, 5 | syl 17 | . . . . . . . . . 10 ⊢ ((♯‘𝐹) ∈ ℕ0 → (0..^((♯‘𝐹) − 1)) ⊆ (0..^(♯‘𝐹))) |
7 | 6 | adantr 480 | . . . . . . . . 9 ⊢ (((♯‘𝐹) ∈ ℕ0 ∧ 1 ≤ (♯‘𝐹)) → (0..^((♯‘𝐹) − 1)) ⊆ (0..^(♯‘𝐹))) |
8 | 7 | adantl 481 | . . . . . . . 8 ⊢ ((𝐹 Fn (0..^(♯‘𝐹)) ∧ ((♯‘𝐹) ∈ ℕ0 ∧ 1 ≤ (♯‘𝐹))) → (0..^((♯‘𝐹) − 1)) ⊆ (0..^(♯‘𝐹))) |
9 | fnssresb 6673 | . . . . . . . . 9 ⊢ (𝐹 Fn (0..^(♯‘𝐹)) → ((𝐹 ↾ (0..^((♯‘𝐹) − 1))) Fn (0..^((♯‘𝐹) − 1)) ↔ (0..^((♯‘𝐹) − 1)) ⊆ (0..^(♯‘𝐹)))) | |
10 | 9 | adantr 480 | . . . . . . . 8 ⊢ ((𝐹 Fn (0..^(♯‘𝐹)) ∧ ((♯‘𝐹) ∈ ℕ0 ∧ 1 ≤ (♯‘𝐹))) → ((𝐹 ↾ (0..^((♯‘𝐹) − 1))) Fn (0..^((♯‘𝐹) − 1)) ↔ (0..^((♯‘𝐹) − 1)) ⊆ (0..^(♯‘𝐹)))) |
11 | 8, 10 | mpbird 256 | . . . . . . 7 ⊢ ((𝐹 Fn (0..^(♯‘𝐹)) ∧ ((♯‘𝐹) ∈ ℕ0 ∧ 1 ≤ (♯‘𝐹))) → (𝐹 ↾ (0..^((♯‘𝐹) − 1))) Fn (0..^((♯‘𝐹) − 1))) |
12 | hashfn 14340 | . . . . . . 7 ⊢ ((𝐹 ↾ (0..^((♯‘𝐹) − 1))) Fn (0..^((♯‘𝐹) − 1)) → (♯‘(𝐹 ↾ (0..^((♯‘𝐹) − 1)))) = (♯‘(0..^((♯‘𝐹) − 1)))) | |
13 | 11, 12 | syl 17 | . . . . . 6 ⊢ ((𝐹 Fn (0..^(♯‘𝐹)) ∧ ((♯‘𝐹) ∈ ℕ0 ∧ 1 ≤ (♯‘𝐹))) → (♯‘(𝐹 ↾ (0..^((♯‘𝐹) − 1)))) = (♯‘(0..^((♯‘𝐹) − 1)))) |
14 | 1nn0 12493 | . . . . . . . . 9 ⊢ 1 ∈ ℕ0 | |
15 | nn0sub2 12628 | . . . . . . . . 9 ⊢ ((1 ∈ ℕ0 ∧ (♯‘𝐹) ∈ ℕ0 ∧ 1 ≤ (♯‘𝐹)) → ((♯‘𝐹) − 1) ∈ ℕ0) | |
16 | 14, 15 | mp3an1 1447 | . . . . . . . 8 ⊢ (((♯‘𝐹) ∈ ℕ0 ∧ 1 ≤ (♯‘𝐹)) → ((♯‘𝐹) − 1) ∈ ℕ0) |
17 | hashfzo0 14395 | . . . . . . . 8 ⊢ (((♯‘𝐹) − 1) ∈ ℕ0 → (♯‘(0..^((♯‘𝐹) − 1))) = ((♯‘𝐹) − 1)) | |
18 | 16, 17 | syl 17 | . . . . . . 7 ⊢ (((♯‘𝐹) ∈ ℕ0 ∧ 1 ≤ (♯‘𝐹)) → (♯‘(0..^((♯‘𝐹) − 1))) = ((♯‘𝐹) − 1)) |
19 | 18 | adantl 481 | . . . . . 6 ⊢ ((𝐹 Fn (0..^(♯‘𝐹)) ∧ ((♯‘𝐹) ∈ ℕ0 ∧ 1 ≤ (♯‘𝐹))) → (♯‘(0..^((♯‘𝐹) − 1))) = ((♯‘𝐹) − 1)) |
20 | 13, 19 | eqtrd 2771 | . . . . 5 ⊢ ((𝐹 Fn (0..^(♯‘𝐹)) ∧ ((♯‘𝐹) ∈ ℕ0 ∧ 1 ≤ (♯‘𝐹))) → (♯‘(𝐹 ↾ (0..^((♯‘𝐹) − 1)))) = ((♯‘𝐹) − 1)) |
21 | 20 | ex 412 | . . . 4 ⊢ (𝐹 Fn (0..^(♯‘𝐹)) → (((♯‘𝐹) ∈ ℕ0 ∧ 1 ≤ (♯‘𝐹)) → (♯‘(𝐹 ↾ (0..^((♯‘𝐹) − 1)))) = ((♯‘𝐹) − 1))) |
22 | 2, 3, 21 | 3syl 18 | . . 3 ⊢ (𝐹 ∈ Word 𝑆 → (((♯‘𝐹) ∈ ℕ0 ∧ 1 ≤ (♯‘𝐹)) → (♯‘(𝐹 ↾ (0..^((♯‘𝐹) − 1)))) = ((♯‘𝐹) − 1))) |
23 | 1, 22 | mpand 692 | . 2 ⊢ (𝐹 ∈ Word 𝑆 → (1 ≤ (♯‘𝐹) → (♯‘(𝐹 ↾ (0..^((♯‘𝐹) − 1)))) = ((♯‘𝐹) − 1))) |
24 | 23 | imp 406 | 1 ⊢ ((𝐹 ∈ Word 𝑆 ∧ 1 ≤ (♯‘𝐹)) → (♯‘(𝐹 ↾ (0..^((♯‘𝐹) − 1)))) = ((♯‘𝐹) − 1)) |
Colors of variables: wff setvar class |
Syntax hints: → wi 4 ↔ wb 205 ∧ wa 395 = wceq 1540 ∈ wcel 2105 ⊆ wss 3949 class class class wbr 5149 ↾ cres 5679 Fn wfn 6539 ⟶wf 6540 ‘cfv 6544 (class class class)co 7412 0cc0 11113 1c1 11114 ≤ cle 11254 − cmin 11449 ℕ0cn0 12477 ℤcz 12563 ..^cfzo 13632 ♯chash 14295 Word cword 14469 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1796 ax-4 1810 ax-5 1912 ax-6 1970 ax-7 2010 ax-8 2107 ax-9 2115 ax-10 2136 ax-11 2153 ax-12 2170 ax-ext 2702 ax-rep 5286 ax-sep 5300 ax-nul 5307 ax-pow 5364 ax-pr 5428 ax-un 7728 ax-cnex 11169 ax-resscn 11170 ax-1cn 11171 ax-icn 11172 ax-addcl 11173 ax-addrcl 11174 ax-mulcl 11175 ax-mulrcl 11176 ax-mulcom 11177 ax-addass 11178 ax-mulass 11179 ax-distr 11180 ax-i2m1 11181 ax-1ne0 11182 ax-1rid 11183 ax-rnegex 11184 ax-rrecex 11185 ax-cnre 11186 ax-pre-lttri 11187 ax-pre-lttrn 11188 ax-pre-ltadd 11189 ax-pre-mulgt0 11190 |
This theorem depends on definitions: df-bi 206 df-an 396 df-or 845 df-3or 1087 df-3an 1088 df-tru 1543 df-fal 1553 df-ex 1781 df-nf 1785 df-sb 2067 df-mo 2533 df-eu 2562 df-clab 2709 df-cleq 2723 df-clel 2809 df-nfc 2884 df-ne 2940 df-nel 3046 df-ral 3061 df-rex 3070 df-reu 3376 df-rab 3432 df-v 3475 df-sbc 3779 df-csb 3895 df-dif 3952 df-un 3954 df-in 3956 df-ss 3966 df-pss 3968 df-nul 4324 df-if 4530 df-pw 4605 df-sn 4630 df-pr 4632 df-op 4636 df-uni 4910 df-int 4952 df-iun 5000 df-br 5150 df-opab 5212 df-mpt 5233 df-tr 5267 df-id 5575 df-eprel 5581 df-po 5589 df-so 5590 df-fr 5632 df-we 5634 df-xp 5683 df-rel 5684 df-cnv 5685 df-co 5686 df-dm 5687 df-rn 5688 df-res 5689 df-ima 5690 df-pred 6301 df-ord 6368 df-on 6369 df-lim 6370 df-suc 6371 df-iota 6496 df-fun 6546 df-fn 6547 df-f 6548 df-f1 6549 df-fo 6550 df-f1o 6551 df-fv 6552 df-riota 7368 df-ov 7415 df-oprab 7416 df-mpo 7417 df-om 7859 df-1st 7978 df-2nd 7979 df-frecs 8269 df-wrecs 8300 df-recs 8374 df-rdg 8413 df-1o 8469 df-er 8706 df-en 8943 df-dom 8944 df-sdom 8945 df-fin 8946 df-card 9937 df-pnf 11255 df-mnf 11256 df-xr 11257 df-ltxr 11258 df-le 11259 df-sub 11451 df-neg 11452 df-nn 12218 df-n0 12478 df-z 12564 df-uz 12828 df-fz 13490 df-fzo 13633 df-hash 14296 df-word 14470 |
This theorem is referenced by: redwlklem 29192 redwlk 29193 |
Copyright terms: Public domain | W3C validator |