| Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > MPE Home > Th. List > cshwshashnsame | Structured version Visualization version GIF version | ||
| Description: If a word (not consisting of identical symbols) has a length being a prime number, the size of the set of (different!) words resulting by cyclically shifting the original word equals the length of the original word. (Contributed by AV, 19-May-2018.) (Revised by AV, 10-Nov-2018.) |
| Ref | Expression |
|---|---|
| cshwrepswhash1.m | ⊢ 𝑀 = {𝑤 ∈ Word 𝑉 ∣ ∃𝑛 ∈ (0..^(♯‘𝑊))(𝑊 cyclShift 𝑛) = 𝑤} |
| Ref | Expression |
|---|---|
| cshwshashnsame | ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ≠ (𝑊‘0) → (♯‘𝑀) = (♯‘𝑊))) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | cshwrepswhash1.m | . . . . . 6 ⊢ 𝑀 = {𝑤 ∈ Word 𝑉 ∣ ∃𝑛 ∈ (0..^(♯‘𝑊))(𝑊 cyclShift 𝑛) = 𝑤} | |
| 2 | 1 | cshwsiun 17137 | . . . . 5 ⊢ (𝑊 ∈ Word 𝑉 → 𝑀 = ∪ 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)}) |
| 3 | 2 | ad2antrr 726 | . . . 4 ⊢ (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ≠ (𝑊‘0)) → 𝑀 = ∪ 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)}) |
| 4 | 3 | fveq2d 6910 | . . 3 ⊢ (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ≠ (𝑊‘0)) → (♯‘𝑀) = (♯‘∪ 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)})) |
| 5 | fzofi 14015 | . . . . 5 ⊢ (0..^(♯‘𝑊)) ∈ Fin | |
| 6 | 5 | a1i 11 | . . . 4 ⊢ (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ≠ (𝑊‘0)) → (0..^(♯‘𝑊)) ∈ Fin) |
| 7 | snfi 9083 | . . . . 5 ⊢ {(𝑊 cyclShift 𝑛)} ∈ Fin | |
| 8 | 7 | a1i 11 | . . . 4 ⊢ ((((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ≠ (𝑊‘0)) ∧ 𝑛 ∈ (0..^(♯‘𝑊))) → {(𝑊 cyclShift 𝑛)} ∈ Fin) |
| 9 | id 22 | . . . . 5 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ)) | |
| 10 | 9 | cshwsdisj 17136 | . . . 4 ⊢ (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ≠ (𝑊‘0)) → Disj 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)}) |
| 11 | 6, 8, 10 | hashiun 15858 | . . 3 ⊢ (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ≠ (𝑊‘0)) → (♯‘∪ 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)}) = Σ𝑛 ∈ (0..^(♯‘𝑊))(♯‘{(𝑊 cyclShift 𝑛)})) |
| 12 | ovex 7464 | . . . . . 6 ⊢ (𝑊 cyclShift 𝑛) ∈ V | |
| 13 | hashsng 14408 | . . . . . 6 ⊢ ((𝑊 cyclShift 𝑛) ∈ V → (♯‘{(𝑊 cyclShift 𝑛)}) = 1) | |
| 14 | 12, 13 | mp1i 13 | . . . . 5 ⊢ (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ≠ (𝑊‘0)) → (♯‘{(𝑊 cyclShift 𝑛)}) = 1) |
| 15 | 14 | sumeq2sdv 15739 | . . . 4 ⊢ (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ≠ (𝑊‘0)) → Σ𝑛 ∈ (0..^(♯‘𝑊))(♯‘{(𝑊 cyclShift 𝑛)}) = Σ𝑛 ∈ (0..^(♯‘𝑊))1) |
| 16 | 1cnd 11256 | . . . . . . 7 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → 1 ∈ ℂ) | |
| 17 | fsumconst 15826 | . . . . . . 7 ⊢ (((0..^(♯‘𝑊)) ∈ Fin ∧ 1 ∈ ℂ) → Σ𝑛 ∈ (0..^(♯‘𝑊))1 = ((♯‘(0..^(♯‘𝑊))) · 1)) | |
| 18 | 5, 16, 17 | sylancr 587 | . . . . . 6 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → Σ𝑛 ∈ (0..^(♯‘𝑊))1 = ((♯‘(0..^(♯‘𝑊))) · 1)) |
| 19 | lencl 14571 | . . . . . . . . 9 ⊢ (𝑊 ∈ Word 𝑉 → (♯‘𝑊) ∈ ℕ0) | |
| 20 | 19 | adantr 480 | . . . . . . . 8 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (♯‘𝑊) ∈ ℕ0) |
| 21 | hashfzo0 14469 | . . . . . . . 8 ⊢ ((♯‘𝑊) ∈ ℕ0 → (♯‘(0..^(♯‘𝑊))) = (♯‘𝑊)) | |
| 22 | 20, 21 | syl 17 | . . . . . . 7 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (♯‘(0..^(♯‘𝑊))) = (♯‘𝑊)) |
| 23 | 22 | oveq1d 7446 | . . . . . 6 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → ((♯‘(0..^(♯‘𝑊))) · 1) = ((♯‘𝑊) · 1)) |
| 24 | prmnn 16711 | . . . . . . . . 9 ⊢ ((♯‘𝑊) ∈ ℙ → (♯‘𝑊) ∈ ℕ) | |
| 25 | 24 | nnred 12281 | . . . . . . . 8 ⊢ ((♯‘𝑊) ∈ ℙ → (♯‘𝑊) ∈ ℝ) |
| 26 | 25 | adantl 481 | . . . . . . 7 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (♯‘𝑊) ∈ ℝ) |
| 27 | ax-1rid 11225 | . . . . . . 7 ⊢ ((♯‘𝑊) ∈ ℝ → ((♯‘𝑊) · 1) = (♯‘𝑊)) | |
| 28 | 26, 27 | syl 17 | . . . . . 6 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → ((♯‘𝑊) · 1) = (♯‘𝑊)) |
| 29 | 18, 23, 28 | 3eqtrd 2781 | . . . . 5 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → Σ𝑛 ∈ (0..^(♯‘𝑊))1 = (♯‘𝑊)) |
| 30 | 29 | adantr 480 | . . . 4 ⊢ (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ≠ (𝑊‘0)) → Σ𝑛 ∈ (0..^(♯‘𝑊))1 = (♯‘𝑊)) |
| 31 | 15, 30 | eqtrd 2777 | . . 3 ⊢ (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ≠ (𝑊‘0)) → Σ𝑛 ∈ (0..^(♯‘𝑊))(♯‘{(𝑊 cyclShift 𝑛)}) = (♯‘𝑊)) |
| 32 | 4, 11, 31 | 3eqtrd 2781 | . 2 ⊢ (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ≠ (𝑊‘0)) → (♯‘𝑀) = (♯‘𝑊)) |
| 33 | 32 | ex 412 | 1 ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ≠ (𝑊‘0) → (♯‘𝑀) = (♯‘𝑊))) |
| Colors of variables: wff setvar class |
| Syntax hints: → wi 4 ∧ wa 395 = wceq 1540 ∈ wcel 2108 ≠ wne 2940 ∃wrex 3070 {crab 3436 Vcvv 3480 {csn 4626 ∪ ciun 4991 ‘cfv 6561 (class class class)co 7431 Fincfn 8985 ℂcc 11153 ℝcr 11154 0cc0 11155 1c1 11156 · cmul 11160 ℕ0cn0 12526 ..^cfzo 13694 ♯chash 14369 Word cword 14552 cyclShift ccsh 14826 Σcsu 15722 ℙcprime 16708 |
| This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1795 ax-4 1809 ax-5 1910 ax-6 1967 ax-7 2007 ax-8 2110 ax-9 2118 ax-10 2141 ax-11 2157 ax-12 2177 ax-ext 2708 ax-rep 5279 ax-sep 5296 ax-nul 5306 ax-pow 5365 ax-pr 5432 ax-un 7755 ax-inf2 9681 ax-cnex 11211 ax-resscn 11212 ax-1cn 11213 ax-icn 11214 ax-addcl 11215 ax-addrcl 11216 ax-mulcl 11217 ax-mulrcl 11218 ax-mulcom 11219 ax-addass 11220 ax-mulass 11221 ax-distr 11222 ax-i2m1 11223 ax-1ne0 11224 ax-1rid 11225 ax-rnegex 11226 ax-rrecex 11227 ax-cnre 11228 ax-pre-lttri 11229 ax-pre-lttrn 11230 ax-pre-ltadd 11231 ax-pre-mulgt0 11232 ax-pre-sup 11233 |
| This theorem depends on definitions: df-bi 207 df-an 396 df-or 849 df-3or 1088 df-3an 1089 df-tru 1543 df-fal 1553 df-ex 1780 df-nf 1784 df-sb 2065 df-mo 2540 df-eu 2569 df-clab 2715 df-cleq 2729 df-clel 2816 df-nfc 2892 df-ne 2941 df-nel 3047 df-ral 3062 df-rex 3071 df-rmo 3380 df-reu 3381 df-rab 3437 df-v 3482 df-sbc 3789 df-csb 3900 df-dif 3954 df-un 3956 df-in 3958 df-ss 3968 df-pss 3971 df-nul 4334 df-if 4526 df-pw 4602 df-sn 4627 df-pr 4629 df-op 4633 df-uni 4908 df-int 4947 df-iun 4993 df-disj 5111 df-br 5144 df-opab 5206 df-mpt 5226 df-tr 5260 df-id 5578 df-eprel 5584 df-po 5592 df-so 5593 df-fr 5637 df-se 5638 df-we 5639 df-xp 5691 df-rel 5692 df-cnv 5693 df-co 5694 df-dm 5695 df-rn 5696 df-res 5697 df-ima 5698 df-pred 6321 df-ord 6387 df-on 6388 df-lim 6389 df-suc 6390 df-iota 6514 df-fun 6563 df-fn 6564 df-f 6565 df-f1 6566 df-fo 6567 df-f1o 6568 df-fv 6569 df-isom 6570 df-riota 7388 df-ov 7434 df-oprab 7435 df-mpo 7436 df-om 7888 df-1st 8014 df-2nd 8015 df-frecs 8306 df-wrecs 8337 df-recs 8411 df-rdg 8450 df-1o 8506 df-2o 8507 df-oadd 8510 df-er 8745 df-en 8986 df-dom 8987 df-sdom 8988 df-fin 8989 df-sup 9482 df-inf 9483 df-oi 9550 df-dju 9941 df-card 9979 df-pnf 11297 df-mnf 11298 df-xr 11299 df-ltxr 11300 df-le 11301 df-sub 11494 df-neg 11495 df-div 11921 df-nn 12267 df-2 12329 df-3 12330 df-n0 12527 df-xnn0 12600 df-z 12614 df-uz 12879 df-rp 13035 df-fz 13548 df-fzo 13695 df-fl 13832 df-mod 13910 df-seq 14043 df-exp 14103 df-hash 14370 df-word 14553 df-concat 14609 df-substr 14679 df-pfx 14709 df-reps 14807 df-csh 14827 df-cj 15138 df-re 15139 df-im 15140 df-sqrt 15274 df-abs 15275 df-clim 15524 df-sum 15723 df-dvds 16291 df-gcd 16532 df-prm 16709 df-phi 16803 |
| This theorem is referenced by: cshwshash 17142 umgrhashecclwwlk 30097 |
| Copyright terms: Public domain | W3C validator |