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

Theorem cshwshashnsame 16435
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 16431 . . . . 5 (𝑊 ∈ Word 𝑉𝑀 = 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)})
32ad2antrr 725 . . . 4 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → 𝑀 = 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)})
43fveq2d 6663 . . 3 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → (♯‘𝑀) = (♯‘ 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)}))
5 fzofi 13344 . . . . 5 (0..^(♯‘𝑊)) ∈ Fin
65a1i 11 . . . 4 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → (0..^(♯‘𝑊)) ∈ Fin)
7 snfi 8586 . . . . 5 {(𝑊 cyclShift 𝑛)} ∈ Fin
87a1i 11 . . . 4 ((((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) ∧ 𝑛 ∈ (0..^(♯‘𝑊))) → {(𝑊 cyclShift 𝑛)} ∈ Fin)
9 id 22 . . . . 5 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ))
109cshwsdisj 16430 . . . 4 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → Disj 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)})
116, 8, 10hashiun 15175 . . 3 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → (♯‘ 𝑛 ∈ (0..^(♯‘𝑊)){(𝑊 cyclShift 𝑛)}) = Σ𝑛 ∈ (0..^(♯‘𝑊))(♯‘{(𝑊 cyclShift 𝑛)}))
12 ovex 7179 . . . . . 6 (𝑊 cyclShift 𝑛) ∈ V
13 hashsng 13733 . . . . . 6 ((𝑊 cyclShift 𝑛) ∈ V → (♯‘{(𝑊 cyclShift 𝑛)}) = 1)
1412, 13mp1i 13 . . . . 5 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → (♯‘{(𝑊 cyclShift 𝑛)}) = 1)
1514sumeq2sdv 15059 . . . 4 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → Σ𝑛 ∈ (0..^(♯‘𝑊))(♯‘{(𝑊 cyclShift 𝑛)}) = Σ𝑛 ∈ (0..^(♯‘𝑊))1)
16 1cnd 10630 . . . . . . 7 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → 1 ∈ ℂ)
17 fsumconst 15143 . . . . . . 7 (((0..^(♯‘𝑊)) ∈ Fin ∧ 1 ∈ ℂ) → Σ𝑛 ∈ (0..^(♯‘𝑊))1 = ((♯‘(0..^(♯‘𝑊))) · 1))
185, 16, 17sylancr 590 . . . . . 6 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → Σ𝑛 ∈ (0..^(♯‘𝑊))1 = ((♯‘(0..^(♯‘𝑊))) · 1))
19 lencl 13883 . . . . . . . . 9 (𝑊 ∈ Word 𝑉 → (♯‘𝑊) ∈ ℕ0)
2019adantr 484 . . . . . . . 8 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (♯‘𝑊) ∈ ℕ0)
21 hashfzo0 13794 . . . . . . . 8 ((♯‘𝑊) ∈ ℕ0 → (♯‘(0..^(♯‘𝑊))) = (♯‘𝑊))
2220, 21syl 17 . . . . . . 7 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (♯‘(0..^(♯‘𝑊))) = (♯‘𝑊))
2322oveq1d 7161 . . . . . 6 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → ((♯‘(0..^(♯‘𝑊))) · 1) = ((♯‘𝑊) · 1))
24 prmnn 16014 . . . . . . . . 9 ((♯‘𝑊) ∈ ℙ → (♯‘𝑊) ∈ ℕ)
2524nnred 11647 . . . . . . . 8 ((♯‘𝑊) ∈ ℙ → (♯‘𝑊) ∈ ℝ)
2625adantl 485 . . . . . . 7 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (♯‘𝑊) ∈ ℝ)
27 ax-1rid 10601 . . . . . . 7 ((♯‘𝑊) ∈ ℝ → ((♯‘𝑊) · 1) = (♯‘𝑊))
2826, 27syl 17 . . . . . 6 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → ((♯‘𝑊) · 1) = (♯‘𝑊))
2918, 23, 283eqtrd 2863 . . . . 5 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → Σ𝑛 ∈ (0..^(♯‘𝑊))1 = (♯‘𝑊))
3029adantr 484 . . . 4 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → Σ𝑛 ∈ (0..^(♯‘𝑊))1 = (♯‘𝑊))
3115, 30eqtrd 2859 . . 3 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → Σ𝑛 ∈ (0..^(♯‘𝑊))(♯‘{(𝑊 cyclShift 𝑛)}) = (♯‘𝑊))
324, 11, 313eqtrd 2863 . 2 (((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) ∧ ∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0)) → (♯‘𝑀) = (♯‘𝑊))
3332ex 416 1 ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) ∈ ℙ) → (∃𝑖 ∈ (0..^(♯‘𝑊))(𝑊𝑖) ≠ (𝑊‘0) → (♯‘𝑀) = (♯‘𝑊)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 399   = wceq 1538  wcel 2115  wne 3014  wrex 3134  {crab 3137  Vcvv 3480  {csn 4550   ciun 4906  cfv 6344  (class class class)co 7146  Fincfn 8501  cc 10529  cr 10530  0cc0 10531  1c1 10532   · cmul 10536  0cn0 11892  ..^cfzo 13035  chash 13693  Word cword 13864   cyclShift ccsh 14148  Σcsu 15040  cprime 16011
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1912  ax-6 1971  ax-7 2016  ax-8 2117  ax-9 2125  ax-10 2146  ax-11 2162  ax-12 2179  ax-ext 2796  ax-rep 5177  ax-sep 5190  ax-nul 5197  ax-pow 5254  ax-pr 5318  ax-un 7452  ax-inf2 9097  ax-cnex 10587  ax-resscn 10588  ax-1cn 10589  ax-icn 10590  ax-addcl 10591  ax-addrcl 10592  ax-mulcl 10593  ax-mulrcl 10594  ax-mulcom 10595  ax-addass 10596  ax-mulass 10597  ax-distr 10598  ax-i2m1 10599  ax-1ne0 10600  ax-1rid 10601  ax-rnegex 10602  ax-rrecex 10603  ax-cnre 10604  ax-pre-lttri 10605  ax-pre-lttrn 10606  ax-pre-ltadd 10607  ax-pre-mulgt0 10608  ax-pre-sup 10609
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-fal 1551  df-ex 1782  df-nf 1786  df-sb 2071  df-mo 2624  df-eu 2655  df-clab 2803  df-cleq 2817  df-clel 2896  df-nfc 2964  df-ne 3015  df-nel 3119  df-ral 3138  df-rex 3139  df-reu 3140  df-rmo 3141  df-rab 3142  df-v 3482  df-sbc 3759  df-csb 3867  df-dif 3922  df-un 3924  df-in 3926  df-ss 3936  df-pss 3938  df-nul 4277  df-if 4451  df-pw 4524  df-sn 4551  df-pr 4553  df-tp 4555  df-op 4557  df-uni 4826  df-int 4864  df-iun 4908  df-disj 5019  df-br 5054  df-opab 5116  df-mpt 5134  df-tr 5160  df-id 5448  df-eprel 5453  df-po 5462  df-so 5463  df-fr 5502  df-se 5503  df-we 5504  df-xp 5549  df-rel 5550  df-cnv 5551  df-co 5552  df-dm 5553  df-rn 5554  df-res 5555  df-ima 5556  df-pred 6136  df-ord 6182  df-on 6183  df-lim 6184  df-suc 6185  df-iota 6303  df-fun 6346  df-fn 6347  df-f 6348  df-f1 6349  df-fo 6350  df-f1o 6351  df-fv 6352  df-isom 6353  df-riota 7104  df-ov 7149  df-oprab 7150  df-mpo 7151  df-om 7572  df-1st 7681  df-2nd 7682  df-wrecs 7939  df-recs 8000  df-rdg 8038  df-1o 8094  df-2o 8095  df-oadd 8098  df-er 8281  df-map 8400  df-en 8502  df-dom 8503  df-sdom 8504  df-fin 8505  df-sup 8899  df-inf 8900  df-oi 8967  df-dju 9323  df-card 9361  df-pnf 10671  df-mnf 10672  df-xr 10673  df-ltxr 10674  df-le 10675  df-sub 10866  df-neg 10867  df-div 11292  df-nn 11633  df-2 11695  df-3 11696  df-n0 11893  df-xnn0 11963  df-z 11977  df-uz 12239  df-rp 12385  df-fz 12893  df-fzo 13036  df-fl 13164  df-mod 13240  df-seq 13372  df-exp 13433  df-hash 13694  df-word 13865  df-concat 13921  df-substr 14001  df-pfx 14031  df-reps 14129  df-csh 14149  df-cj 14456  df-re 14457  df-im 14458  df-sqrt 14592  df-abs 14593  df-clim 14843  df-sum 15041  df-dvds 15606  df-gcd 15840  df-prm 16012  df-phi 16099
This theorem is referenced by:  cshwshash  16436  umgrhashecclwwlk  27861
  Copyright terms: Public domain W3C validator