![]() |
Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
|
Mirrors > Home > MPE Home > Th. List > cshwidxm | Structured version Visualization version GIF version |
Description: The symbol at index (n-N) of a word of length n (not 0) cyclically shifted by N positions (not 0) is the symbol at index 0 of the original word. (Contributed by AV, 18-May-2018.) (Revised by AV, 21-May-2018.) (Revised by AV, 30-Oct-2018.) |
Ref | Expression |
---|---|
cshwidxm | ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑁 ∈ (1...(♯‘𝑊))) → ((𝑊 cyclShift 𝑁)‘((♯‘𝑊) − 𝑁)) = (𝑊‘0)) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | simpl 474 | . . 3 ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑁 ∈ (1...(♯‘𝑊))) → 𝑊 ∈ Word 𝑉) | |
2 | elfzelz 12555 | . . . 4 ⊢ (𝑁 ∈ (1...(♯‘𝑊)) → 𝑁 ∈ ℤ) | |
3 | 2 | adantl 473 | . . 3 ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑁 ∈ (1...(♯‘𝑊))) → 𝑁 ∈ ℤ) |
4 | ubmelfzo 12747 | . . . 4 ⊢ (𝑁 ∈ (1...(♯‘𝑊)) → ((♯‘𝑊) − 𝑁) ∈ (0..^(♯‘𝑊))) | |
5 | 4 | adantl 473 | . . 3 ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑁 ∈ (1...(♯‘𝑊))) → ((♯‘𝑊) − 𝑁) ∈ (0..^(♯‘𝑊))) |
6 | cshwidxmod 13769 | . . 3 ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑁 ∈ ℤ ∧ ((♯‘𝑊) − 𝑁) ∈ (0..^(♯‘𝑊))) → ((𝑊 cyclShift 𝑁)‘((♯‘𝑊) − 𝑁)) = (𝑊‘((((♯‘𝑊) − 𝑁) + 𝑁) mod (♯‘𝑊)))) | |
7 | 1, 3, 5, 6 | syl3anc 1477 | . 2 ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑁 ∈ (1...(♯‘𝑊))) → ((𝑊 cyclShift 𝑁)‘((♯‘𝑊) − 𝑁)) = (𝑊‘((((♯‘𝑊) − 𝑁) + 𝑁) mod (♯‘𝑊)))) |
8 | elfz1b 12622 | . . . . . . . 8 ⊢ (𝑁 ∈ (1...(♯‘𝑊)) ↔ (𝑁 ∈ ℕ ∧ (♯‘𝑊) ∈ ℕ ∧ 𝑁 ≤ (♯‘𝑊))) | |
9 | nncn 11240 | . . . . . . . . . 10 ⊢ (𝑁 ∈ ℕ → 𝑁 ∈ ℂ) | |
10 | nncn 11240 | . . . . . . . . . 10 ⊢ ((♯‘𝑊) ∈ ℕ → (♯‘𝑊) ∈ ℂ) | |
11 | 9, 10 | anim12ci 592 | . . . . . . . . 9 ⊢ ((𝑁 ∈ ℕ ∧ (♯‘𝑊) ∈ ℕ) → ((♯‘𝑊) ∈ ℂ ∧ 𝑁 ∈ ℂ)) |
12 | 11 | 3adant3 1127 | . . . . . . . 8 ⊢ ((𝑁 ∈ ℕ ∧ (♯‘𝑊) ∈ ℕ ∧ 𝑁 ≤ (♯‘𝑊)) → ((♯‘𝑊) ∈ ℂ ∧ 𝑁 ∈ ℂ)) |
13 | 8, 12 | sylbi 207 | . . . . . . 7 ⊢ (𝑁 ∈ (1...(♯‘𝑊)) → ((♯‘𝑊) ∈ ℂ ∧ 𝑁 ∈ ℂ)) |
14 | npcan 10502 | . . . . . . 7 ⊢ (((♯‘𝑊) ∈ ℂ ∧ 𝑁 ∈ ℂ) → (((♯‘𝑊) − 𝑁) + 𝑁) = (♯‘𝑊)) | |
15 | 13, 14 | syl 17 | . . . . . 6 ⊢ (𝑁 ∈ (1...(♯‘𝑊)) → (((♯‘𝑊) − 𝑁) + 𝑁) = (♯‘𝑊)) |
16 | 15 | oveq1d 6829 | . . . . 5 ⊢ (𝑁 ∈ (1...(♯‘𝑊)) → ((((♯‘𝑊) − 𝑁) + 𝑁) mod (♯‘𝑊)) = ((♯‘𝑊) mod (♯‘𝑊))) |
17 | 16 | adantl 473 | . . . 4 ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑁 ∈ (1...(♯‘𝑊))) → ((((♯‘𝑊) − 𝑁) + 𝑁) mod (♯‘𝑊)) = ((♯‘𝑊) mod (♯‘𝑊))) |
18 | nnrp 12055 | . . . . . . . 8 ⊢ ((♯‘𝑊) ∈ ℕ → (♯‘𝑊) ∈ ℝ+) | |
19 | modid0 12910 | . . . . . . . 8 ⊢ ((♯‘𝑊) ∈ ℝ+ → ((♯‘𝑊) mod (♯‘𝑊)) = 0) | |
20 | 18, 19 | syl 17 | . . . . . . 7 ⊢ ((♯‘𝑊) ∈ ℕ → ((♯‘𝑊) mod (♯‘𝑊)) = 0) |
21 | 20 | 3ad2ant2 1129 | . . . . . 6 ⊢ ((𝑁 ∈ ℕ ∧ (♯‘𝑊) ∈ ℕ ∧ 𝑁 ≤ (♯‘𝑊)) → ((♯‘𝑊) mod (♯‘𝑊)) = 0) |
22 | 8, 21 | sylbi 207 | . . . . 5 ⊢ (𝑁 ∈ (1...(♯‘𝑊)) → ((♯‘𝑊) mod (♯‘𝑊)) = 0) |
23 | 22 | adantl 473 | . . . 4 ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑁 ∈ (1...(♯‘𝑊))) → ((♯‘𝑊) mod (♯‘𝑊)) = 0) |
24 | 17, 23 | eqtrd 2794 | . . 3 ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑁 ∈ (1...(♯‘𝑊))) → ((((♯‘𝑊) − 𝑁) + 𝑁) mod (♯‘𝑊)) = 0) |
25 | 24 | fveq2d 6357 | . 2 ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑁 ∈ (1...(♯‘𝑊))) → (𝑊‘((((♯‘𝑊) − 𝑁) + 𝑁) mod (♯‘𝑊))) = (𝑊‘0)) |
26 | 7, 25 | eqtrd 2794 | 1 ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑁 ∈ (1...(♯‘𝑊))) → ((𝑊 cyclShift 𝑁)‘((♯‘𝑊) − 𝑁)) = (𝑊‘0)) |
Colors of variables: wff setvar class |
Syntax hints: → wi 4 ∧ wa 383 ∧ w3a 1072 = wceq 1632 ∈ wcel 2139 class class class wbr 4804 ‘cfv 6049 (class class class)co 6814 ℂcc 10146 0cc0 10148 1c1 10149 + caddc 10151 ≤ cle 10287 − cmin 10478 ℕcn 11232 ℤcz 11589 ℝ+crp 12045 ...cfz 12539 ..^cfzo 12679 mod cmo 12882 ♯chash 13331 Word cword 13497 cyclShift ccsh 13754 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1871 ax-4 1886 ax-5 1988 ax-6 2054 ax-7 2090 ax-8 2141 ax-9 2148 ax-10 2168 ax-11 2183 ax-12 2196 ax-13 2391 ax-ext 2740 ax-rep 4923 ax-sep 4933 ax-nul 4941 ax-pow 4992 ax-pr 5055 ax-un 7115 ax-cnex 10204 ax-resscn 10205 ax-1cn 10206 ax-icn 10207 ax-addcl 10208 ax-addrcl 10209 ax-mulcl 10210 ax-mulrcl 10211 ax-mulcom 10212 ax-addass 10213 ax-mulass 10214 ax-distr 10215 ax-i2m1 10216 ax-1ne0 10217 ax-1rid 10218 ax-rnegex 10219 ax-rrecex 10220 ax-cnre 10221 ax-pre-lttri 10222 ax-pre-lttrn 10223 ax-pre-ltadd 10224 ax-pre-mulgt0 10225 ax-pre-sup 10226 |
This theorem depends on definitions: df-bi 197 df-or 384 df-an 385 df-3or 1073 df-3an 1074 df-tru 1635 df-ex 1854 df-nf 1859 df-sb 2047 df-eu 2611 df-mo 2612 df-clab 2747 df-cleq 2753 df-clel 2756 df-nfc 2891 df-ne 2933 df-nel 3036 df-ral 3055 df-rex 3056 df-reu 3057 df-rmo 3058 df-rab 3059 df-v 3342 df-sbc 3577 df-csb 3675 df-dif 3718 df-un 3720 df-in 3722 df-ss 3729 df-pss 3731 df-nul 4059 df-if 4231 df-pw 4304 df-sn 4322 df-pr 4324 df-tp 4326 df-op 4328 df-uni 4589 df-int 4628 df-iun 4674 df-br 4805 df-opab 4865 df-mpt 4882 df-tr 4905 df-id 5174 df-eprel 5179 df-po 5187 df-so 5188 df-fr 5225 df-we 5227 df-xp 5272 df-rel 5273 df-cnv 5274 df-co 5275 df-dm 5276 df-rn 5277 df-res 5278 df-ima 5279 df-pred 5841 df-ord 5887 df-on 5888 df-lim 5889 df-suc 5890 df-iota 6012 df-fun 6051 df-fn 6052 df-f 6053 df-f1 6054 df-fo 6055 df-f1o 6056 df-fv 6057 df-riota 6775 df-ov 6817 df-oprab 6818 df-mpt2 6819 df-om 7232 df-1st 7334 df-2nd 7335 df-wrecs 7577 df-recs 7638 df-rdg 7676 df-1o 7730 df-oadd 7734 df-er 7913 df-en 8124 df-dom 8125 df-sdom 8126 df-fin 8127 df-sup 8515 df-inf 8516 df-card 8975 df-pnf 10288 df-mnf 10289 df-xr 10290 df-ltxr 10291 df-le 10292 df-sub 10480 df-neg 10481 df-div 10897 df-nn 11233 df-2 11291 df-n0 11505 df-z 11590 df-uz 11900 df-rp 12046 df-fz 12540 df-fzo 12680 df-fl 12807 df-mod 12883 df-hash 13332 df-word 13505 df-concat 13507 df-substr 13509 df-csh 13755 |
This theorem is referenced by: (None) |
Copyright terms: Public domain | W3C validator |