MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  cshwshashlem1 Structured version   Unicode version

Theorem cshwshashlem1 14243
Description: If cyclically shifting a word of length being a prime number not consisting of identical symbols by at least one position (and not by as many positions as the length of the word), the result will not be the word itself. (Contributed by AV, 19-May-2018.) (Revised by AV, 8-Jun-2018.) (Revised by AV, 10-Nov-2018.)
Hypothesis
Ref Expression
cshwshash.0  |-  ( ph  ->  ( W  e. Word  V  /\  ( # `  W
)  e.  Prime )
)
Assertion
Ref Expression
cshwshashlem1  |-  ( (
ph  /\  E. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =/=  ( W ` 
0 )  /\  L  e.  ( 1..^ ( # `  W ) ) )  ->  ( W cyclShift  L )  =/=  W )
Distinct variable groups:    i, L    i, V    i, W    ph, i

Proof of Theorem cshwshashlem1
StepHypRef Expression
1 df-ne 2650 . . . . . . 7  |-  ( ( W `  i )  =/=  ( W ` 
0 )  <->  -.  ( W `  i )  =  ( W ` 
0 ) )
21rexbii 2862 . . . . . 6  |-  ( E. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =/=  ( W `  0
)  <->  E. i  e.  ( 0..^ ( # `  W
) )  -.  ( W `  i )  =  ( W ` 
0 ) )
3 rexnal 2854 . . . . . 6  |-  ( E. i  e.  ( 0..^ ( # `  W
) )  -.  ( W `  i )  =  ( W ` 
0 )  <->  -.  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) )
42, 3bitri 249 . . . . 5  |-  ( E. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =/=  ( W `  0
)  <->  -.  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) )
5 simpll 753 . . . . . . . . . . 11  |-  ( ( ( ph  /\  L  e.  ( 1..^ ( # `  W ) ) )  /\  ( W cyclShift  L )  =  W )  ->  ph )
6 fzo0ss1 11699 . . . . . . . . . . . . . 14  |-  ( 1..^ ( # `  W
) )  C_  (
0..^ ( # `  W
) )
7 fzossfz 11690 . . . . . . . . . . . . . 14  |-  ( 0..^ ( # `  W
) )  C_  (
0 ... ( # `  W
) )
86, 7sstri 3476 . . . . . . . . . . . . 13  |-  ( 1..^ ( # `  W
) )  C_  (
0 ... ( # `  W
) )
98sseli 3463 . . . . . . . . . . . 12  |-  ( L  e.  ( 1..^ (
# `  W )
)  ->  L  e.  ( 0 ... ( # `
 W ) ) )
109ad2antlr 726 . . . . . . . . . . 11  |-  ( ( ( ph  /\  L  e.  ( 1..^ ( # `  W ) ) )  /\  ( W cyclShift  L )  =  W )  ->  L  e.  ( 0 ... ( # `  W
) ) )
11 simpr 461 . . . . . . . . . . 11  |-  ( ( ( ph  /\  L  e.  ( 1..^ ( # `  W ) ) )  /\  ( W cyclShift  L )  =  W )  -> 
( W cyclShift  L )  =  W )
12 cshwshash.0 . . . . . . . . . . . . 13  |-  ( ph  ->  ( W  e. Word  V  /\  ( # `  W
)  e.  Prime )
)
13 simpll 753 . . . . . . . . . . . . . . . . 17  |-  ( ( ( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) ) )  ->  W  e. Word  V )
14 simpr 461 . . . . . . . . . . . . . . . . . 18  |-  ( ( W  e. Word  V  /\  ( # `  W )  e.  Prime )  ->  ( # `
 W )  e. 
Prime )
1514adantr 465 . . . . . . . . . . . . . . . . 17  |-  ( ( ( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) ) )  -> 
( # `  W )  e.  Prime )
16 elfzelz 11573 . . . . . . . . . . . . . . . . . 18  |-  ( L  e.  ( 0 ... ( # `  W
) )  ->  L  e.  ZZ )
1716adantl 466 . . . . . . . . . . . . . . . . 17  |-  ( ( ( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) ) )  ->  L  e.  ZZ )
18 cshwsidrepswmod0 14242 . . . . . . . . . . . . . . . . 17  |-  ( ( W  e. Word  V  /\  ( # `  W )  e.  Prime  /\  L  e.  ZZ )  ->  (
( W cyclShift  L )  =  W  ->  ( ( L  mod  ( # `  W
) )  =  0  \/  W  =  ( ( W `  0
) repeatS  ( # `  W
) ) ) ) )
1913, 15, 17, 18syl3anc 1219 . . . . . . . . . . . . . . . 16  |-  ( ( ( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) ) )  -> 
( ( W cyclShift  L )  =  W  ->  (
( L  mod  ( # `
 W ) )  =  0  \/  W  =  ( ( W `
 0 ) repeatS  ( # `
 W ) ) ) ) )
2019ex 434 . . . . . . . . . . . . . . 15  |-  ( ( W  e. Word  V  /\  ( # `  W )  e.  Prime )  ->  ( L  e.  ( 0 ... ( # `  W
) )  ->  (
( W cyclShift  L )  =  W  ->  ( ( L  mod  ( # `  W
) )  =  0  \/  W  =  ( ( W `  0
) repeatS  ( # `  W
) ) ) ) ) )
21203imp 1182 . . . . . . . . . . . . . 14  |-  ( ( ( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W )  ->  ( ( L  mod  ( # `  W
) )  =  0  \/  W  =  ( ( W `  0
) repeatS  ( # `  W
) ) ) )
22 olc 384 . . . . . . . . . . . . . . . . . . . 20  |-  ( L  =  ( # `  W
)  ->  ( L  =  0  \/  L  =  ( # `  W
) ) )
2322a1d 25 . . . . . . . . . . . . . . . . . . 19  |-  ( L  =  ( # `  W
)  ->  ( (
( L  mod  ( # `
 W ) )  =  0  /\  (
( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W ) )  ->  ( L  =  0  \/  L  =  ( # `  W
) ) ) )
24 fzofzim 11713 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( ( L  =/=  ( # `  W )  /\  L  e.  ( 0 ... ( # `
 W ) ) )  ->  L  e.  ( 0..^ ( # `  W
) ) )
25 zmodidfzoimp 11858 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( L  e.  ( 0..^ (
# `  W )
)  ->  ( L  mod  ( # `  W
) )  =  L )
26 eqtr2 2481 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31  |-  ( ( ( L  mod  ( # `
 W ) )  =  L  /\  ( L  mod  ( # `  W
) )  =  0 )  ->  L  = 
0 )
2726a1d 25 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30  |-  ( ( ( L  mod  ( # `
 W ) )  =  L  /\  ( L  mod  ( # `  W
) )  =  0 )  ->  ( ( W  e. Word  V  /\  ( # `
 W )  e. 
Prime )  ->  L  =  0 ) )
2827ex 434 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29  |-  ( ( L  mod  ( # `  W ) )  =  L  ->  ( ( L  mod  ( # `  W
) )  =  0  ->  ( ( W  e. Word  V  /\  ( # `
 W )  e. 
Prime )  ->  L  =  0 ) ) )
2925, 28syl 16 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28  |-  ( L  e.  ( 0..^ (
# `  W )
)  ->  ( ( L  mod  ( # `  W
) )  =  0  ->  ( ( W  e. Word  V  /\  ( # `
 W )  e. 
Prime )  ->  L  =  0 ) ) )
3024, 29syl 16 . . . . . . . . . . . . . . . . . . . . . . . . . . 27  |-  ( ( L  =/=  ( # `  W )  /\  L  e.  ( 0 ... ( # `
 W ) ) )  ->  ( ( L  mod  ( # `  W
) )  =  0  ->  ( ( W  e. Word  V  /\  ( # `
 W )  e. 
Prime )  ->  L  =  0 ) ) )
3130expcom 435 . . . . . . . . . . . . . . . . . . . . . . . . . 26  |-  ( L  e.  ( 0 ... ( # `  W
) )  ->  ( L  =/=  ( # `  W
)  ->  ( ( L  mod  ( # `  W
) )  =  0  ->  ( ( W  e. Word  V  /\  ( # `
 W )  e. 
Prime )  ->  L  =  0 ) ) ) )
3231com24 87 . . . . . . . . . . . . . . . . . . . . . . . . 25  |-  ( L  e.  ( 0 ... ( # `  W
) )  ->  (
( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  ->  ( ( L  mod  ( # `  W ) )  =  0  -> 
( L  =/=  ( # `
 W )  ->  L  =  0 ) ) ) )
3332impcom 430 . . . . . . . . . . . . . . . . . . . . . . . 24  |-  ( ( ( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) ) )  -> 
( ( L  mod  ( # `  W ) )  =  0  -> 
( L  =/=  ( # `
 W )  ->  L  =  0 ) ) )
34333adant3 1008 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( ( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W )  ->  ( ( L  mod  ( # `  W
) )  =  0  ->  ( L  =/=  ( # `  W
)  ->  L  = 
0 ) ) )
3534impcom 430 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( ( L  mod  ( # `
 W ) )  =  0  /\  (
( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W ) )  ->  ( L  =/=  ( # `  W
)  ->  L  = 
0 ) )
3635impcom 430 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( L  =/=  ( # `  W )  /\  (
( L  mod  ( # `
 W ) )  =  0  /\  (
( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W ) ) )  ->  L  =  0 )
3736orcd 392 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( L  =/=  ( # `  W )  /\  (
( L  mod  ( # `
 W ) )  =  0  /\  (
( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W ) ) )  -> 
( L  =  0  \/  L  =  (
# `  W )
) )
3837ex 434 . . . . . . . . . . . . . . . . . . 19  |-  ( L  =/=  ( # `  W
)  ->  ( (
( L  mod  ( # `
 W ) )  =  0  /\  (
( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W ) )  ->  ( L  =  0  \/  L  =  ( # `  W
) ) ) )
3923, 38pm2.61ine 2765 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( L  mod  ( # `
 W ) )  =  0  /\  (
( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W ) )  ->  ( L  =  0  \/  L  =  ( # `  W
) ) )
4039orcd 392 . . . . . . . . . . . . . . . . 17  |-  ( ( ( L  mod  ( # `
 W ) )  =  0  /\  (
( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W ) )  ->  (
( L  =  0  \/  L  =  (
# `  W )
)  \/  W  =  ( ( W ` 
0 ) repeatS  ( # `  W
) ) ) )
41 df-3or 966 . . . . . . . . . . . . . . . . 17  |-  ( ( L  =  0  \/  L  =  ( # `  W )  \/  W  =  ( ( W `
 0 ) repeatS  ( # `
 W ) ) )  <->  ( ( L  =  0  \/  L  =  ( # `  W
) )  \/  W  =  ( ( W `
 0 ) repeatS  ( # `
 W ) ) ) )
4240, 41sylibr 212 . . . . . . . . . . . . . . . 16  |-  ( ( ( L  mod  ( # `
 W ) )  =  0  /\  (
( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W ) )  ->  ( L  =  0  \/  L  =  ( # `  W
)  \/  W  =  ( ( W ` 
0 ) repeatS  ( # `  W
) ) ) )
4342ex 434 . . . . . . . . . . . . . . 15  |-  ( ( L  mod  ( # `  W ) )  =  0  ->  ( (
( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W )  ->  ( L  =  0  \/  L  =  ( # `  W
)  \/  W  =  ( ( W ` 
0 ) repeatS  ( # `  W
) ) ) ) )
44 3mix3 1159 . . . . . . . . . . . . . . . 16  |-  ( W  =  ( ( W `
 0 ) repeatS  ( # `
 W ) )  ->  ( L  =  0  \/  L  =  ( # `  W
)  \/  W  =  ( ( W ` 
0 ) repeatS  ( # `  W
) ) ) )
4544a1d 25 . . . . . . . . . . . . . . 15  |-  ( W  =  ( ( W `
 0 ) repeatS  ( # `
 W ) )  ->  ( ( ( W  e. Word  V  /\  ( # `  W )  e.  Prime )  /\  L  e.  ( 0 ... ( # `
 W ) )  /\  ( W cyclShift  L )  =  W )  -> 
( L  =  0  \/  L  =  (
# `  W )  \/  W  =  (
( W `  0
) repeatS  ( # `  W
) ) ) ) )
4643, 45jaoi 379 . . . . . . . . . . . . . 14  |-  ( ( ( L  mod  ( # `
 W ) )  =  0  \/  W  =  ( ( W `
 0 ) repeatS  ( # `
 W ) ) )  ->  ( (
( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W )  ->  ( L  =  0  \/  L  =  ( # `  W
)  \/  W  =  ( ( W ` 
0 ) repeatS  ( # `  W
) ) ) ) )
4721, 46mpcom 36 . . . . . . . . . . . . 13  |-  ( ( ( W  e. Word  V  /\  ( # `  W
)  e.  Prime )  /\  L  e.  (
0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W )  ->  ( L  =  0  \/  L  =  ( # `  W
)  \/  W  =  ( ( W ` 
0 ) repeatS  ( # `  W
) ) ) )
4812, 47syl3an1 1252 . . . . . . . . . . . 12  |-  ( (
ph  /\  L  e.  ( 0 ... ( # `
 W ) )  /\  ( W cyclShift  L )  =  W )  -> 
( L  =  0  \/  L  =  (
# `  W )  \/  W  =  (
( W `  0
) repeatS  ( # `  W
) ) ) )
49 3mix1 1157 . . . . . . . . . . . . . 14  |-  ( L  =  0  ->  ( L  =  0  \/  L  =  ( # `  W
)  \/  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) )
5049a1d 25 . . . . . . . . . . . . 13  |-  ( L  =  0  ->  (
( ph  /\  L  e.  ( 0 ... ( # `
 W ) )  /\  ( W cyclShift  L )  =  W )  -> 
( L  =  0  \/  L  =  (
# `  W )  \/  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) ) )
51 3mix2 1158 . . . . . . . . . . . . . 14  |-  ( L  =  ( # `  W
)  ->  ( L  =  0  \/  L  =  ( # `  W
)  \/  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) )
5251a1d 25 . . . . . . . . . . . . 13  |-  ( L  =  ( # `  W
)  ->  ( ( ph  /\  L  e.  ( 0 ... ( # `  W ) )  /\  ( W cyclShift  L )  =  W )  ->  ( L  =  0  \/  L  =  ( # `  W
)  \/  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) ) )
53 repswsymballbi 12539 . . . . . . . . . . . . . . . . . . 19  |-  ( W  e. Word  V  ->  ( W  =  ( ( W `  0 ) repeatS  (
# `  W )
)  <->  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
5453adantr 465 . . . . . . . . . . . . . . . . . 18  |-  ( ( W  e. Word  V  /\  ( # `  W )  e.  Prime )  ->  ( W  =  ( ( W `  0 ) repeatS  (
# `  W )
)  <->  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
5512, 54syl 16 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  ( W  =  ( ( W `  0
) repeatS  ( # `  W
) )  <->  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) )
56553ad2ant1 1009 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  L  e.  ( 0 ... ( # `
 W ) )  /\  ( W cyclShift  L )  =  W )  -> 
( W  =  ( ( W `  0
) repeatS  ( # `  W
) )  <->  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) )
5756biimpa 484 . . . . . . . . . . . . . . 15  |-  ( ( ( ph  /\  L  e.  ( 0 ... ( # `
 W ) )  /\  ( W cyclShift  L )  =  W )  /\  W  =  ( ( W `  0 ) repeatS  (
# `  W )
) )  ->  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) )
58573mix3d 1165 . . . . . . . . . . . . . 14  |-  ( ( ( ph  /\  L  e.  ( 0 ... ( # `
 W ) )  /\  ( W cyclShift  L )  =  W )  /\  W  =  ( ( W `  0 ) repeatS  (
# `  W )
) )  ->  ( L  =  0  \/  L  =  ( # `  W
)  \/  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) )
5958expcom 435 . . . . . . . . . . . . 13  |-  ( W  =  ( ( W `
 0 ) repeatS  ( # `
 W ) )  ->  ( ( ph  /\  L  e.  ( 0 ... ( # `  W
) )  /\  ( W cyclShift  L )  =  W )  ->  ( L  =  0  \/  L  =  ( # `  W
)  \/  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) ) )
6050, 52, 593jaoi 1282 . . . . . . . . . . . 12  |-  ( ( L  =  0  \/  L  =  ( # `  W )  \/  W  =  ( ( W `
 0 ) repeatS  ( # `
 W ) ) )  ->  ( ( ph  /\  L  e.  ( 0 ... ( # `  W ) )  /\  ( W cyclShift  L )  =  W )  ->  ( L  =  0  \/  L  =  ( # `  W
)  \/  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) ) )
6148, 60mpcom 36 . . . . . . . . . . 11  |-  ( (
ph  /\  L  e.  ( 0 ... ( # `
 W ) )  /\  ( W cyclShift  L )  =  W )  -> 
( L  =  0  \/  L  =  (
# `  W )  \/  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
625, 10, 11, 61syl3anc 1219 . . . . . . . . . 10  |-  ( ( ( ph  /\  L  e.  ( 1..^ ( # `  W ) ) )  /\  ( W cyclShift  L )  =  W )  -> 
( L  =  0  \/  L  =  (
# `  W )  \/  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
63 elfzo1 11715 . . . . . . . . . . . . . 14  |-  ( L  e.  ( 1..^ (
# `  W )
)  <->  ( L  e.  NN  /\  ( # `  W )  e.  NN  /\  L  <  ( # `  W ) ) )
64 nnne0 10468 . . . . . . . . . . . . . . . 16  |-  ( L  e.  NN  ->  L  =/=  0 )
65 df-ne 2650 . . . . . . . . . . . . . . . . 17  |-  ( L  =/=  0  <->  -.  L  =  0 )
66 pm2.21 108 . . . . . . . . . . . . . . . . 17  |-  ( -.  L  =  0  -> 
( L  =  0  ->  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
6765, 66sylbi 195 . . . . . . . . . . . . . . . 16  |-  ( L  =/=  0  ->  ( L  =  0  ->  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
6864, 67syl 16 . . . . . . . . . . . . . . 15  |-  ( L  e.  NN  ->  ( L  =  0  ->  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
69683ad2ant1 1009 . . . . . . . . . . . . . 14  |-  ( ( L  e.  NN  /\  ( # `  W )  e.  NN  /\  L  <  ( # `  W
) )  ->  ( L  =  0  ->  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
7063, 69sylbi 195 . . . . . . . . . . . . 13  |-  ( L  e.  ( 1..^ (
# `  W )
)  ->  ( L  =  0  ->  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) )
7170ad2antlr 726 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  L  e.  ( 1..^ ( # `  W ) ) )  /\  ( W cyclShift  L )  =  W )  -> 
( L  =  0  ->  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
7271com12 31 . . . . . . . . . . 11  |-  ( L  =  0  ->  (
( ( ph  /\  L  e.  ( 1..^ ( # `  W
) ) )  /\  ( W cyclShift  L )  =  W )  ->  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) )
73 nnre 10443 . . . . . . . . . . . . . . . . 17  |-  ( L  e.  NN  ->  L  e.  RR )
74 ltne 9585 . . . . . . . . . . . . . . . . 17  |-  ( ( L  e.  RR  /\  L  <  ( # `  W
) )  ->  ( # `
 W )  =/= 
L )
7573, 74sylan 471 . . . . . . . . . . . . . . . 16  |-  ( ( L  e.  NN  /\  L  <  ( # `  W
) )  ->  ( # `
 W )  =/= 
L )
76 df-ne 2650 . . . . . . . . . . . . . . . . 17  |-  ( (
# `  W )  =/=  L  <->  -.  ( # `  W
)  =  L )
77 eqcom 2463 . . . . . . . . . . . . . . . . . 18  |-  ( L  =  ( # `  W
)  <->  ( # `  W
)  =  L )
78 pm2.21 108 . . . . . . . . . . . . . . . . . 18  |-  ( -.  ( # `  W
)  =  L  -> 
( ( # `  W
)  =  L  ->  A. i  e.  (
0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
7977, 78syl5bi 217 . . . . . . . . . . . . . . . . 17  |-  ( -.  ( # `  W
)  =  L  -> 
( L  =  (
# `  W )  ->  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
8076, 79sylbi 195 . . . . . . . . . . . . . . . 16  |-  ( (
# `  W )  =/=  L  ->  ( L  =  ( # `  W
)  ->  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) )
8175, 80syl 16 . . . . . . . . . . . . . . 15  |-  ( ( L  e.  NN  /\  L  <  ( # `  W
) )  ->  ( L  =  ( # `  W
)  ->  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) )
82813adant2 1007 . . . . . . . . . . . . . 14  |-  ( ( L  e.  NN  /\  ( # `  W )  e.  NN  /\  L  <  ( # `  W
) )  ->  ( L  =  ( # `  W
)  ->  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) )
8363, 82sylbi 195 . . . . . . . . . . . . 13  |-  ( L  e.  ( 1..^ (
# `  W )
)  ->  ( L  =  ( # `  W
)  ->  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) )
8483ad2antlr 726 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  L  e.  ( 1..^ ( # `  W ) ) )  /\  ( W cyclShift  L )  =  W )  -> 
( L  =  (
# `  W )  ->  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
8584com12 31 . . . . . . . . . . 11  |-  ( L  =  ( # `  W
)  ->  ( (
( ph  /\  L  e.  ( 1..^ ( # `  W ) ) )  /\  ( W cyclShift  L )  =  W )  ->  A. i  e.  (
0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
86 ax-1 6 . . . . . . . . . . 11  |-  ( A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
)  ->  ( (
( ph  /\  L  e.  ( 1..^ ( # `  W ) ) )  /\  ( W cyclShift  L )  =  W )  ->  A. i  e.  (
0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) ) )
8772, 85, 863jaoi 1282 . . . . . . . . . 10  |-  ( ( L  =  0  \/  L  =  ( # `  W )  \/  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) )  ->  (
( ( ph  /\  L  e.  ( 1..^ ( # `  W
) ) )  /\  ( W cyclShift  L )  =  W )  ->  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 ) ) )
8862, 87mpcom 36 . . . . . . . . 9  |-  ( ( ( ph  /\  L  e.  ( 1..^ ( # `  W ) ) )  /\  ( W cyclShift  L )  =  W )  ->  A. i  e.  (
0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
) )
8988pm2.24d 143 . . . . . . . 8  |-  ( ( ( ph  /\  L  e.  ( 1..^ ( # `  W ) ) )  /\  ( W cyclShift  L )  =  W )  -> 
( -.  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 )  ->  ( W cyclShift  L )  =/=  W
) )
9089exp31 604 . . . . . . 7  |-  ( ph  ->  ( L  e.  ( 1..^ ( # `  W
) )  ->  (
( W cyclShift  L )  =  W  ->  ( -.  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
)  ->  ( W cyclShift  L )  =/=  W ) ) ) )
9190com34 83 . . . . . 6  |-  ( ph  ->  ( L  e.  ( 1..^ ( # `  W
) )  ->  ( -.  A. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =  ( W `  0
)  ->  ( ( W cyclShift  L )  =  W  ->  ( W cyclShift  L )  =/=  W ) ) ) )
9291com23 78 . . . . 5  |-  ( ph  ->  ( -.  A. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =  ( W ` 
0 )  ->  ( L  e.  ( 1..^ ( # `  W
) )  ->  (
( W cyclShift  L )  =  W  ->  ( W cyclShift  L )  =/=  W ) ) ) )
934, 92syl5bi 217 . . . 4  |-  ( ph  ->  ( E. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =/=  ( W ` 
0 )  ->  ( L  e.  ( 1..^ ( # `  W
) )  ->  (
( W cyclShift  L )  =  W  ->  ( W cyclShift  L )  =/=  W ) ) ) )
94933imp 1182 . . 3  |-  ( (
ph  /\  E. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =/=  ( W ` 
0 )  /\  L  e.  ( 1..^ ( # `  W ) ) )  ->  ( ( W cyclShift  L )  =  W  ->  ( W cyclShift  L )  =/=  W ) )
9594com12 31 . 2  |-  ( ( W cyclShift  L )  =  W  ->  ( ( ph  /\ 
E. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =/=  ( W `  0
)  /\  L  e.  ( 1..^ ( # `  W
) ) )  -> 
( W cyclShift  L )  =/= 
W ) )
96 ax-1 6 . 2  |-  ( ( W cyclShift  L )  =/=  W  ->  ( ( ph  /\  E. i  e.  ( 0..^ ( # `  W
) ) ( W `
 i )  =/=  ( W `  0
)  /\  L  e.  ( 1..^ ( # `  W
) ) )  -> 
( W cyclShift  L )  =/= 
W ) )
9795, 96pm2.61ine 2765 1  |-  ( (
ph  /\  E. i  e.  ( 0..^ ( # `  W ) ) ( W `  i )  =/=  ( W ` 
0 )  /\  L  e.  ( 1..^ ( # `  W ) ) )  ->  ( W cyclShift  L )  =/=  W )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 184    \/ wo 368    /\ wa 369    \/ w3o 964    /\ w3a 965    = wceq 1370    e. wcel 1758    =/= wne 2648   A.wral 2799   E.wrex 2800   class class class wbr 4403   ` cfv 5529  (class class class)co 6203   RRcr 9395   0cc0 9396   1c1 9397    < clt 9532   NNcn 10436   ZZcz 10760   ...cfz 11557  ..^cfzo 11668    mod cmo 11828   #chash 12223  Word cword 12342   repeatS creps 12349   cyclShift ccsh 12546   Primecprime 13884
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1592  ax-4 1603  ax-5 1671  ax-6 1710  ax-7 1730  ax-8 1760  ax-9 1762  ax-10 1777  ax-11 1782  ax-12 1794  ax-13 1955  ax-ext 2432  ax-rep 4514  ax-sep 4524  ax-nul 4532  ax-pow 4581  ax-pr 4642  ax-un 6485  ax-cnex 9452  ax-resscn 9453  ax-1cn 9454  ax-icn 9455  ax-addcl 9456  ax-addrcl 9457  ax-mulcl 9458  ax-mulrcl 9459  ax-mulcom 9460  ax-addass 9461  ax-mulass 9462  ax-distr 9463  ax-i2m1 9464  ax-1ne0 9465  ax-1rid 9466  ax-rnegex 9467  ax-rrecex 9468  ax-cnre 9469  ax-pre-lttri 9470  ax-pre-lttrn 9471  ax-pre-ltadd 9472  ax-pre-mulgt0 9473  ax-pre-sup 9474
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3or 966  df-3an 967  df-tru 1373  df-ex 1588  df-nf 1591  df-sb 1703  df-eu 2266  df-mo 2267  df-clab 2440  df-cleq 2446  df-clel 2449  df-nfc 2604  df-ne 2650  df-nel 2651  df-ral 2804  df-rex 2805  df-reu 2806  df-rmo 2807  df-rab 2808  df-v 3080  df-sbc 3295  df-csb 3399  df-dif 3442  df-un 3444  df-in 3446  df-ss 3453  df-pss 3455  df-nul 3749  df-if 3903  df-pw 3973  df-sn 3989  df-pr 3991  df-tp 3993  df-op 3995  df-uni 4203  df-int 4240  df-iun 4284  df-br 4404  df-opab 4462  df-mpt 4463  df-tr 4497  df-eprel 4743  df-id 4747  df-po 4752  df-so 4753  df-fr 4790  df-we 4792  df-ord 4833  df-on 4834  df-lim 4835  df-suc 4836  df-xp 4957  df-rel 4958  df-cnv 4959  df-co 4960  df-dm 4961  df-rn 4962  df-res 4963  df-ima 4964  df-iota 5492  df-fun 5531  df-fn 5532  df-f 5533  df-f1 5534  df-fo 5535  df-f1o 5536  df-fv 5537  df-riota 6164  df-ov 6206  df-oprab 6207  df-mpt2 6208  df-om 6590  df-1st 6690  df-2nd 6691  df-recs 6945  df-rdg 6979  df-1o 7033  df-2o 7034  df-oadd 7037  df-er 7214  df-map 7329  df-en 7424  df-dom 7425  df-sdom 7426  df-fin 7427  df-sup 7805  df-card 8223  df-cda 8451  df-pnf 9534  df-mnf 9535  df-xr 9536  df-ltxr 9537  df-le 9538  df-sub 9711  df-neg 9712  df-div 10108  df-nn 10437  df-2 10494  df-3 10495  df-n0 10694  df-z 10761  df-uz 10976  df-rp 11106  df-fz 11558  df-fzo 11669  df-fl 11762  df-mod 11829  df-seq 11927  df-exp 11986  df-hash 12224  df-word 12350  df-concat 12352  df-substr 12354  df-reps 12357  df-csh 12547  df-cj 12709  df-re 12710  df-im 12711  df-sqr 12845  df-abs 12846  df-dvds 13657  df-gcd 13812  df-prm 13885  df-phi 13962
This theorem is referenced by:  cshwshashlem2  14244
  Copyright terms: Public domain W3C validator