Metamath Proof Explorer


Theorem cshweqrep

Description: If cyclically shifting a word by L position results in the word itself, the symbol at any position is repeated at multiples of L (modulo the length of the word) positions in the word. (Contributed by AV, 13-May-2018) (Revised by AV, 7-Jun-2018) (Revised by AV, 1-Nov-2018)

Ref Expression
Assertion cshweqrep ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โ†’ ( ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†’ โˆ€ ๐‘— โˆˆ โ„•0 ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘— ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )

Proof

Step Hyp Ref Expression
1 oveq1 โŠข ( ๐‘ฅ = 0 โ†’ ( ๐‘ฅ ยท ๐ฟ ) = ( 0 ยท ๐ฟ ) )
2 1 oveq2d โŠข ( ๐‘ฅ = 0 โ†’ ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) = ( ๐ผ + ( 0 ยท ๐ฟ ) ) )
3 2 fvoveq1d โŠข ( ๐‘ฅ = 0 โ†’ ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( 0 ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
4 3 eqeq2d โŠข ( ๐‘ฅ = 0 โ†’ ( ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†” ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( 0 ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
5 4 imbi2d โŠข ( ๐‘ฅ = 0 โ†’ ( ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†” ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( 0 ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) )
6 oveq1 โŠข ( ๐‘ฅ = ๐‘ฆ โ†’ ( ๐‘ฅ ยท ๐ฟ ) = ( ๐‘ฆ ยท ๐ฟ ) )
7 6 oveq2d โŠข ( ๐‘ฅ = ๐‘ฆ โ†’ ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) = ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) )
8 7 fvoveq1d โŠข ( ๐‘ฅ = ๐‘ฆ โ†’ ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
9 8 eqeq2d โŠข ( ๐‘ฅ = ๐‘ฆ โ†’ ( ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†” ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
10 9 imbi2d โŠข ( ๐‘ฅ = ๐‘ฆ โ†’ ( ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†” ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) )
11 oveq1 โŠข ( ๐‘ฅ = ( ๐‘ฆ + 1 ) โ†’ ( ๐‘ฅ ยท ๐ฟ ) = ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) )
12 11 oveq2d โŠข ( ๐‘ฅ = ( ๐‘ฆ + 1 ) โ†’ ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) = ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) )
13 12 fvoveq1d โŠข ( ๐‘ฅ = ( ๐‘ฆ + 1 ) โ†’ ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
14 13 eqeq2d โŠข ( ๐‘ฅ = ( ๐‘ฆ + 1 ) โ†’ ( ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†” ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
15 14 imbi2d โŠข ( ๐‘ฅ = ( ๐‘ฆ + 1 ) โ†’ ( ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†” ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) )
16 oveq1 โŠข ( ๐‘ฅ = ๐‘— โ†’ ( ๐‘ฅ ยท ๐ฟ ) = ( ๐‘— ยท ๐ฟ ) )
17 16 oveq2d โŠข ( ๐‘ฅ = ๐‘— โ†’ ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) = ( ๐ผ + ( ๐‘— ยท ๐ฟ ) ) )
18 17 fvoveq1d โŠข ( ๐‘ฅ = ๐‘— โ†’ ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘— ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
19 18 eqeq2d โŠข ( ๐‘ฅ = ๐‘— โ†’ ( ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†” ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘— ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
20 19 imbi2d โŠข ( ๐‘ฅ = ๐‘— โ†’ ( ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฅ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†” ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘— ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) )
21 zcn โŠข ( ๐ฟ โˆˆ โ„ค โ†’ ๐ฟ โˆˆ โ„‚ )
22 21 mul02d โŠข ( ๐ฟ โˆˆ โ„ค โ†’ ( 0 ยท ๐ฟ ) = 0 )
23 22 adantl โŠข ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โ†’ ( 0 ยท ๐ฟ ) = 0 )
24 23 adantr โŠข ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( 0 ยท ๐ฟ ) = 0 )
25 24 oveq2d โŠข ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐ผ + ( 0 ยท ๐ฟ ) ) = ( ๐ผ + 0 ) )
26 elfzoelz โŠข ( ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) โ†’ ๐ผ โˆˆ โ„ค )
27 26 zcnd โŠข ( ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) โ†’ ๐ผ โˆˆ โ„‚ )
28 27 addridd โŠข ( ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) โ†’ ( ๐ผ + 0 ) = ๐ผ )
29 28 ad2antll โŠข ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐ผ + 0 ) = ๐ผ )
30 25 29 eqtrd โŠข ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐ผ + ( 0 ยท ๐ฟ ) ) = ๐ผ )
31 30 oveq1d โŠข ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ( ๐ผ + ( 0 ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ๐ผ mod ( โ™ฏ โ€˜ ๐‘Š ) ) )
32 zmodidfzoimp โŠข ( ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) โ†’ ( ๐ผ mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ๐ผ )
33 32 ad2antll โŠข ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐ผ mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ๐ผ )
34 31 33 eqtr2d โŠข ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ๐ผ = ( ( ๐ผ + ( 0 ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) )
35 34 fveq2d โŠข ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( 0 ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
36 fveq1 โŠข ( ๐‘Š = ( ๐‘Š cyclShift ๐ฟ ) โ†’ ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) = ( ( ๐‘Š cyclShift ๐ฟ ) โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
37 36 eqcoms โŠข ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โ†’ ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) = ( ( ๐‘Š cyclShift ๐ฟ ) โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
38 37 ad2antrl โŠข ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) = ( ( ๐‘Š cyclShift ๐ฟ ) โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
39 38 adantl โŠข ( ( ๐‘ฆ โˆˆ โ„•0 โˆง ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) โ†’ ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) = ( ( ๐‘Š cyclShift ๐ฟ ) โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
40 simprll โŠข ( ( ๐‘ฆ โˆˆ โ„•0 โˆง ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) โ†’ ๐‘Š โˆˆ Word ๐‘‰ )
41 simprlr โŠข ( ( ๐‘ฆ โˆˆ โ„•0 โˆง ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) โ†’ ๐ฟ โˆˆ โ„ค )
42 elfzo0 โŠข ( ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) โ†” ( ๐ผ โˆˆ โ„•0 โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• โˆง ๐ผ < ( โ™ฏ โ€˜ ๐‘Š ) ) )
43 nn0z โŠข ( ๐ผ โˆˆ โ„•0 โ†’ ๐ผ โˆˆ โ„ค )
44 43 adantr โŠข ( ( ๐ผ โˆˆ โ„•0 โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) โ†’ ๐ผ โˆˆ โ„ค )
45 nn0z โŠข ( ๐‘ฆ โˆˆ โ„•0 โ†’ ๐‘ฆ โˆˆ โ„ค )
46 zmulcl โŠข ( ( ๐‘ฆ โˆˆ โ„ค โˆง ๐ฟ โˆˆ โ„ค ) โ†’ ( ๐‘ฆ ยท ๐ฟ ) โˆˆ โ„ค )
47 45 46 sylan โŠข ( ( ๐‘ฆ โˆˆ โ„•0 โˆง ๐ฟ โˆˆ โ„ค ) โ†’ ( ๐‘ฆ ยท ๐ฟ ) โˆˆ โ„ค )
48 47 ancoms โŠข ( ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) โ†’ ( ๐‘ฆ ยท ๐ฟ ) โˆˆ โ„ค )
49 zaddcl โŠข ( ( ๐ผ โˆˆ โ„ค โˆง ( ๐‘ฆ ยท ๐ฟ ) โˆˆ โ„ค ) โ†’ ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ค )
50 44 48 49 syl2an โŠข ( ( ( ๐ผ โˆˆ โ„•0 โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) โˆง ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) ) โ†’ ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ค )
51 simplr โŠข ( ( ( ๐ผ โˆˆ โ„•0 โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) โˆง ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) ) โ†’ ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• )
52 50 51 jca โŠข ( ( ( ๐ผ โˆˆ โ„•0 โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) โˆง ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) ) โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ค โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) )
53 52 ex โŠข ( ( ๐ผ โˆˆ โ„•0 โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) โ†’ ( ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ค โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) ) )
54 53 3adant3 โŠข ( ( ๐ผ โˆˆ โ„•0 โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• โˆง ๐ผ < ( โ™ฏ โ€˜ ๐‘Š ) ) โ†’ ( ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ค โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) ) )
55 42 54 sylbi โŠข ( ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) โ†’ ( ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ค โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) ) )
56 55 adantl โŠข ( ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†’ ( ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ค โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) ) )
57 56 expd โŠข ( ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†’ ( ๐ฟ โˆˆ โ„ค โ†’ ( ๐‘ฆ โˆˆ โ„•0 โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ค โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) ) ) )
58 57 com12 โŠข ( ๐ฟ โˆˆ โ„ค โ†’ ( ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†’ ( ๐‘ฆ โˆˆ โ„•0 โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ค โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) ) ) )
59 58 adantl โŠข ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โ†’ ( ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†’ ( ๐‘ฆ โˆˆ โ„•0 โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ค โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) ) ) )
60 59 imp โŠข ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘ฆ โˆˆ โ„•0 โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ค โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) ) )
61 60 impcom โŠข ( ( ๐‘ฆ โˆˆ โ„•0 โˆง ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ค โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) )
62 zmodfzo โŠข ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ค โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) )
63 61 62 syl โŠข ( ( ๐‘ฆ โˆˆ โ„•0 โˆง ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) )
64 cshwidxmod โŠข ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค โˆง ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†’ ( ( ๐‘Š cyclShift ๐ฟ ) โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) = ( ๐‘Š โ€˜ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
65 40 41 63 64 syl3anc โŠข ( ( ๐‘ฆ โˆˆ โ„•0 โˆง ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) โ†’ ( ( ๐‘Š cyclShift ๐ฟ ) โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) = ( ๐‘Š โ€˜ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
66 nn0re โŠข ( ๐ผ โˆˆ โ„•0 โ†’ ๐ผ โˆˆ โ„ )
67 zre โŠข ( ๐ฟ โˆˆ โ„ค โ†’ ๐ฟ โˆˆ โ„ )
68 nn0re โŠข ( ๐‘ฆ โˆˆ โ„•0 โ†’ ๐‘ฆ โˆˆ โ„ )
69 nnrp โŠข ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• โ†’ ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„+ )
70 remulcl โŠข ( ( ๐‘ฆ โˆˆ โ„ โˆง ๐ฟ โˆˆ โ„ ) โ†’ ( ๐‘ฆ ยท ๐ฟ ) โˆˆ โ„ )
71 70 ancoms โŠข ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โ†’ ( ๐‘ฆ ยท ๐ฟ ) โˆˆ โ„ )
72 readdcl โŠข ( ( ๐ผ โˆˆ โ„ โˆง ( ๐‘ฆ ยท ๐ฟ ) โˆˆ โ„ ) โ†’ ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ )
73 71 72 sylan2 โŠข ( ( ๐ผ โˆˆ โ„ โˆง ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) ) โ†’ ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ )
74 73 ancoms โŠข ( ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) โ†’ ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ )
75 74 adantl โŠข ( ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„+ โˆง ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) ) โ†’ ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ )
76 simprll โŠข ( ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„+ โˆง ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) ) โ†’ ๐ฟ โˆˆ โ„ )
77 simpl โŠข ( ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„+ โˆง ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) ) โ†’ ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„+ )
78 modaddmod โŠข ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) โˆˆ โ„ โˆง ๐ฟ โˆˆ โ„ โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„+ ) โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) )
79 75 76 77 78 syl3anc โŠข ( ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„+ โˆง ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) ) โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) )
80 recn โŠข ( ๐ผ โˆˆ โ„ โ†’ ๐ผ โˆˆ โ„‚ )
81 80 adantl โŠข ( ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) โ†’ ๐ผ โˆˆ โ„‚ )
82 70 recnd โŠข ( ( ๐‘ฆ โˆˆ โ„ โˆง ๐ฟ โˆˆ โ„ ) โ†’ ( ๐‘ฆ ยท ๐ฟ ) โˆˆ โ„‚ )
83 82 ancoms โŠข ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โ†’ ( ๐‘ฆ ยท ๐ฟ ) โˆˆ โ„‚ )
84 83 adantr โŠข ( ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) โ†’ ( ๐‘ฆ ยท ๐ฟ ) โˆˆ โ„‚ )
85 recn โŠข ( ๐ฟ โˆˆ โ„ โ†’ ๐ฟ โˆˆ โ„‚ )
86 85 adantr โŠข ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โ†’ ๐ฟ โˆˆ โ„‚ )
87 86 adantr โŠข ( ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) โ†’ ๐ฟ โˆˆ โ„‚ )
88 81 84 87 addassd โŠข ( ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) + ๐ฟ ) = ( ๐ผ + ( ( ๐‘ฆ ยท ๐ฟ ) + ๐ฟ ) ) )
89 recn โŠข ( ๐‘ฆ โˆˆ โ„ โ†’ ๐‘ฆ โˆˆ โ„‚ )
90 89 adantl โŠข ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โ†’ ๐‘ฆ โˆˆ โ„‚ )
91 1cnd โŠข ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โ†’ 1 โˆˆ โ„‚ )
92 90 91 86 adddird โŠข ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โ†’ ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) = ( ( ๐‘ฆ ยท ๐ฟ ) + ( 1 ยท ๐ฟ ) ) )
93 85 mullidd โŠข ( ๐ฟ โˆˆ โ„ โ†’ ( 1 ยท ๐ฟ ) = ๐ฟ )
94 93 adantr โŠข ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โ†’ ( 1 ยท ๐ฟ ) = ๐ฟ )
95 94 oveq2d โŠข ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โ†’ ( ( ๐‘ฆ ยท ๐ฟ ) + ( 1 ยท ๐ฟ ) ) = ( ( ๐‘ฆ ยท ๐ฟ ) + ๐ฟ ) )
96 92 95 eqtr2d โŠข ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โ†’ ( ( ๐‘ฆ ยท ๐ฟ ) + ๐ฟ ) = ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) )
97 96 adantr โŠข ( ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) โ†’ ( ( ๐‘ฆ ยท ๐ฟ ) + ๐ฟ ) = ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) )
98 97 oveq2d โŠข ( ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) โ†’ ( ๐ผ + ( ( ๐‘ฆ ยท ๐ฟ ) + ๐ฟ ) ) = ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) )
99 88 98 eqtrd โŠข ( ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) + ๐ฟ ) = ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) )
100 99 adantl โŠข ( ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„+ โˆง ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) ) โ†’ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) + ๐ฟ ) = ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) )
101 100 oveq1d โŠข ( ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„+ โˆง ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) ) โ†’ ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) )
102 79 101 eqtrd โŠข ( ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„+ โˆง ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) ) โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) )
103 102 ex โŠข ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„+ โ†’ ( ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
104 69 103 syl โŠข ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• โ†’ ( ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โˆง ๐ผ โˆˆ โ„ ) โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
105 104 expd โŠข ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• โ†’ ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โ†’ ( ๐ผ โˆˆ โ„ โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
106 105 com12 โŠข ( ( ๐ฟ โˆˆ โ„ โˆง ๐‘ฆ โˆˆ โ„ ) โ†’ ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• โ†’ ( ๐ผ โˆˆ โ„ โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
107 67 68 106 syl2an โŠข ( ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) โ†’ ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• โ†’ ( ๐ผ โˆˆ โ„ โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
108 107 com13 โŠข ( ๐ผ โˆˆ โ„ โ†’ ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• โ†’ ( ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
109 66 108 syl โŠข ( ๐ผ โˆˆ โ„•0 โ†’ ( ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• โ†’ ( ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
110 109 imp โŠข ( ( ๐ผ โˆˆ โ„•0 โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• ) โ†’ ( ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
111 110 3adant3 โŠข ( ( ๐ผ โˆˆ โ„•0 โˆง ( โ™ฏ โ€˜ ๐‘Š ) โˆˆ โ„• โˆง ๐ผ < ( โ™ฏ โ€˜ ๐‘Š ) ) โ†’ ( ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
112 42 111 sylbi โŠข ( ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) โ†’ ( ( ๐ฟ โˆˆ โ„ค โˆง ๐‘ฆ โˆˆ โ„•0 ) โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
113 112 expd โŠข ( ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) โ†’ ( ๐ฟ โˆˆ โ„ค โ†’ ( ๐‘ฆ โˆˆ โ„•0 โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
114 113 adantld โŠข ( ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) โ†’ ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โ†’ ( ๐‘ฆ โˆˆ โ„•0 โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
115 114 adantl โŠข ( ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†’ ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โ†’ ( ๐‘ฆ โˆˆ โ„•0 โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
116 115 impcom โŠข ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘ฆ โˆˆ โ„•0 โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
117 116 impcom โŠข ( ( ๐‘ฆ โˆˆ โ„•0 โˆง ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) โ†’ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) = ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) )
118 117 fveq2d โŠข ( ( ๐‘ฆ โˆˆ โ„•0 โˆง ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) โ†’ ( ๐‘Š โ€˜ ( ( ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) + ๐ฟ ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
119 39 65 118 3eqtrd โŠข ( ( ๐‘ฆ โˆˆ โ„•0 โˆง ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) โ†’ ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
120 119 eqeq2d โŠข ( ( ๐‘ฆ โˆˆ โ„•0 โˆง ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) โ†’ ( ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†” ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
121 120 biimpd โŠข ( ( ๐‘ฆ โˆˆ โ„•0 โˆง ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) โ†’ ( ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
122 121 ex โŠข ( ๐‘ฆ โˆˆ โ„•0 โ†’ ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) )
123 122 a2d โŠข ( ๐‘ฆ โˆˆ โ„•0 โ†’ ( ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘ฆ ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ( ๐‘ฆ + 1 ) ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) ) )
124 5 10 15 20 35 123 nn0ind โŠข ( ๐‘— โˆˆ โ„•0 โ†’ ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘— ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
125 124 com12 โŠข ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ ( ๐‘— โˆˆ โ„•0 โ†’ ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘— ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )
126 125 ralrimiv โŠข ( ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โˆง ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) โ†’ โˆ€ ๐‘— โˆˆ โ„•0 ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘— ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) )
127 126 ex โŠข ( ( ๐‘Š โˆˆ Word ๐‘‰ โˆง ๐ฟ โˆˆ โ„ค ) โ†’ ( ( ( ๐‘Š cyclShift ๐ฟ ) = ๐‘Š โˆง ๐ผ โˆˆ ( 0 ..^ ( โ™ฏ โ€˜ ๐‘Š ) ) ) โ†’ โˆ€ ๐‘— โˆˆ โ„•0 ( ๐‘Š โ€˜ ๐ผ ) = ( ๐‘Š โ€˜ ( ( ๐ผ + ( ๐‘— ยท ๐ฟ ) ) mod ( โ™ฏ โ€˜ ๐‘Š ) ) ) ) )