Metamath Proof Explorer < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >  cshwshashnsame Structured version   Visualization version   GIF version

Theorem cshwshashnsame 16209
 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.)
Hypothesis
Ref Expression
cshwrepswhash1.m 𝑀 = {𝑤 ∈ Word 𝑉 ∣ ∃𝑛 ∈ (0..^(♯‘𝑊))(𝑊 cyclShift 𝑛) = 𝑤}
Assertion
Ref Expression
cshwshashnsame ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0) → (♯‘𝑀) = (♯‘𝑊)))
Distinct variable groups:   𝑛,𝑉,𝑤   𝑛,𝑊,𝑤,𝑖   𝑖,𝑉
Allowed substitution hints:   𝑀(𝑤,𝑖,𝑛)

Proof of Theorem cshwshashnsame
StepHypRef Expression
1 cshwrepswhash1.m . . . . . 6 𝑀 = {𝑤 ∈ Word 𝑉 ∣ ∃𝑛 ∈ (0..^(♯‘𝑊))(𝑊 cyclShift 𝑛) = 𝑤}
21cshwsiun 16205 . . . . 5 (𝑊 ∈ Word 𝑉𝑀 = 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)})
32ad2antrr 716 . . . 4 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → 𝑀 = 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)})
43fveq2d 6450 . . 3 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → (♯‘𝑀) = (♯‘ 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)}))
5 fzofi 13092 . . . . 5 (0..^(♯‘𝑊)) ∈ Fin
65a1i 11 . . . 4 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → (0..^(♯‘𝑊)) ∈ Fin)
7 snfi 8326 . . . . 5 {(𝑊 cyclShift 𝑛)} ∈ Fin
87a1i 11 . . . 4 ((((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) ∧ 𝑛 ∈ (0..^(♯‘𝑊))) → {(𝑊 cyclShift 𝑛)} ∈ Fin)
9 id 22 . . . . 5 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ))
109cshwsdisj 16204 . . . 4 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → Disj 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)})
116, 8, 10hashiun 14958 . . 3 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → (♯‘ 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)}) = Σ𝑛 ∈ (0..^(♯‘𝑊))(♯‘{(𝑊 cyclShift 𝑛)}))
12 ovex 6954 . . . . . 6 (𝑊 cyclShift 𝑛) ∈ V
13 hashsng 13474 . . . . . 6 ((𝑊 cyclShift 𝑛) ∈ V → (♯‘{(𝑊 cyclShift 𝑛)}) = 1)
1412, 13mp1i 13 . . . . 5 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → (♯‘{(𝑊 cyclShift 𝑛)}) = 1)
1514sumeq2sdv 14842 . . . 4 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → Σ𝑛 ∈ (0..^(♯‘𝑊))(♯‘{(𝑊 cyclShift 𝑛)}) = Σ𝑛 ∈ (0..^(♯‘𝑊))1)
16 1cnd 10371 . . . . . . 7 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → 1 ∈ ℂ)
17 fsumconst 14926 . . . . . . 7 (((0..^(♯‘𝑊)) ∈ Fin ∧ 1 ∈ ℂ) → Σ𝑛 ∈ (0..^(♯‘𝑊))1 = ((♯‘(0..^(♯‘𝑊))) · 1))
185, 16, 17sylancr 581 . . . . . 6 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → Σ𝑛 ∈ (0..^(♯‘𝑊))1 = ((♯‘(0..^(♯‘𝑊))) · 1))
19 lencl 13621 . . . . . . . . 9 (𝑊 ∈ Word 𝑉 → (♯‘𝑊) ∈ ℕ0)
2019adantr 474 . . . . . . . 8 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (♯‘𝑊) ∈ ℕ0)
21 hashfzo0 13531 . . . . . . . 8 ((♯‘𝑊) ∈ ℕ0 → (♯‘(0..^(♯‘𝑊))) = (♯‘𝑊))
2220, 21syl 17 . . . . . . 7 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (♯‘(0..^(♯‘𝑊))) = (♯‘𝑊))
2322oveq1d 6937 . . . . . 6 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → ((♯‘(0..^(♯‘𝑊))) · 1) = ((♯‘𝑊) · 1))
24 prmnn 15793 . . . . . . . . 9 ((♯‘𝑊) ∈ ℙ → (♯‘𝑊) ∈ ℕ)
2524nnred 11391 . . . . . . . 8 ((♯‘𝑊) ∈ ℙ → (♯‘𝑊) ∈ ℝ)
2625adantl 475 . . . . . . 7 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (♯‘𝑊) ∈ ℝ)
27 ax-1rid 10342 . . . . . . 7 ((♯‘𝑊) ∈ ℝ → ((♯‘𝑊) · 1) = (♯‘𝑊))
2826, 27syl 17 . . . . . 6 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → ((♯‘𝑊) · 1) = (♯‘𝑊))
2918, 23, 283eqtrd 2818 . . . . 5 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → Σ𝑛 ∈ (0..^(♯‘𝑊))1 = (♯‘𝑊))
3029adantr 474 . . . 4 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → Σ𝑛 ∈ (0..^(♯‘𝑊))1 = (♯‘𝑊))
3115, 30eqtrd 2814 . . 3 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → Σ𝑛 ∈ (0..^(♯‘𝑊))(♯‘{(𝑊 cyclShift 𝑛)}) = (♯‘𝑊))
324, 11, 313eqtrd 2818 . 2 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → (♯‘𝑀) = (♯‘𝑊))
3332ex 403 1 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0) → (♯‘𝑀) = (♯‘𝑊)))
 Colors of variables: wff setvar class Syntax hints:   → wi 4   ∧ wa 386   = wceq 1601   ∈ wcel 2107   ≠ wne 2969  ∃wrex 3091  {crab 3094  Vcvv 3398  {csn 4398  ∪ ciun 4753  ‘cfv 6135  (class class class)co 6922  Fincfn 8241  ℂcc 10270  ℝcr 10271  0cc0 10272  1c1 10273   · cmul 10277  ℕ0cn0 11642  ..^cfzo 12784  ♯chash 13435  Word cword 13599   cyclShift ccsh 13934  Σcsu 14824  ℙcprime 15790 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1839  ax-4 1853  ax-5 1953  ax-6 2021  ax-7 2055  ax-8 2109  ax-9 2116  ax-10 2135  ax-11 2150  ax-12 2163  ax-13 2334  ax-ext 2754  ax-rep 5006  ax-sep 5017  ax-nul 5025  ax-pow 5077  ax-pr 5138  ax-un 7226  ax-inf2 8835  ax-cnex 10328  ax-resscn 10329  ax-1cn 10330  ax-icn 10331  ax-addcl 10332  ax-addrcl 10333  ax-mulcl 10334  ax-mulrcl 10335  ax-mulcom 10336  ax-addass 10337  ax-mulass 10338  ax-distr 10339  ax-i2m1 10340  ax-1ne0 10341  ax-1rid 10342  ax-rnegex 10343  ax-rrecex 10344  ax-cnre 10345  ax-pre-lttri 10346  ax-pre-lttrn 10347  ax-pre-ltadd 10348  ax-pre-mulgt0 10349  ax-pre-sup 10350 This theorem depends on definitions:  df-bi 199  df-an 387  df-or 837  df-3or 1072  df-3an 1073  df-tru 1605  df-fal 1615  df-ex 1824  df-nf 1828  df-sb 2012  df-mo 2551  df-eu 2587  df-clab 2764  df-cleq 2770  df-clel 2774  df-nfc 2921  df-ne 2970  df-nel 3076  df-ral 3095  df-rex 3096  df-reu 3097  df-rmo 3098  df-rab 3099  df-v 3400  df-sbc 3653  df-csb 3752  df-dif 3795  df-un 3797  df-in 3799  df-ss 3806  df-pss 3808  df-nul 4142  df-if 4308  df-pw 4381  df-sn 4399  df-pr 4401  df-tp 4403  df-op 4405  df-uni 4672  df-int 4711  df-iun 4755  df-disj 4855  df-br 4887  df-opab 4949  df-mpt 4966  df-tr 4988  df-id 5261  df-eprel 5266  df-po 5274  df-so 5275  df-fr 5314  df-se 5315  df-we 5316  df-xp 5361  df-rel 5362  df-cnv 5363  df-co 5364  df-dm 5365  df-rn 5366  df-res 5367  df-ima 5368  df-pred 5933  df-ord 5979  df-on 5980  df-lim 5981  df-suc 5982  df-iota 6099  df-fun 6137  df-fn 6138  df-f 6139  df-f1 6140  df-fo 6141  df-f1o 6142  df-fv 6143  df-isom 6144  df-riota 6883  df-ov 6925  df-oprab 6926  df-mpt2 6927  df-om 7344  df-1st 7445  df-2nd 7446  df-wrecs 7689  df-recs 7751  df-rdg 7789  df-1o 7843  df-2o 7844  df-oadd 7847  df-er 8026  df-map 8142  df-en 8242  df-dom 8243  df-sdom 8244  df-fin 8245  df-sup 8636  df-inf 8637  df-oi 8704  df-card 9098  df-cda 9325  df-pnf 10413  df-mnf 10414  df-xr 10415  df-ltxr 10416  df-le 10417  df-sub 10608  df-neg 10609  df-div 11033  df-nn 11375  df-2 11438  df-3 11439  df-n0 11643  df-xnn0 11715  df-z 11729  df-uz 11993  df-rp 12138  df-fz 12644  df-fzo 12785  df-fl 12912  df-mod 12988  df-seq 13120  df-exp 13179  df-hash 13436  df-word 13600  df-concat 13661  df-substr 13731  df-pfx 13780  df-reps 13915  df-csh 13936  df-cj 14246  df-re 14247  df-im 14248  df-sqrt 14382  df-abs 14383  df-clim 14627  df-sum 14825  df-dvds 15388  df-gcd 15623  df-prm 15791  df-phi 15875 This theorem is referenced by:  cshwshash  16210  umgrhashecclwwlk  27476
 Copyright terms: Public domain W3C validator