login
The OEIS is supported by the many generous donors to the OEIS Foundation.

 

Logo
Hints
(Greetings from The On-Line Encyclopedia of Integer Sequences!)
A342754 Irregular triangle read by rows: T(n, k) is the number i of iterations that every scytale of length n and k > 1 sides must process its own ciphertext before the initial plaintext returns, where k | n, k > 1 and (n-1) | (k^i-1). 1

%I #62 Aug 13 2022 20:49:53

%S 2,4,4,3,3,2,6,6,10,5,5,10,12,12,6,6,4,2,4,8,16,16,8,18,9,9,18,4,4,6,

%T 6,11,11,11,11,11,11,2,20,20,3,3,18,9,9,18,28,28,14,14,28,28,5,5,5,5,

%U 8,8,10,10,16,16,12,12,6,2,6,12,12,36,36,18,18,12,6,4,4,6,12

%N Irregular triangle read by rows: T(n, k) is the number i of iterations that every scytale of length n and k > 1 sides must process its own ciphertext before the initial plaintext returns, where k | n, k > 1 and (n-1) | (k^i-1).

%C Each number in this sequence is the number of times a scytale has to be fed with its own ciphertext until the apparatus generates back the initial plaintext because for every n/m integer, n > m > 1 and every integer i > 1, n^x mod (m-1) != n^i+1 mod (m-1). Tertium non datur: if n^i mod (m-1) = n^i+1 mod (m-1), i = i + 1, an absurdity. And this is why a recursive scytale does not freeze. Moreover, according to modular arithmetic, if n mod m = 1, then n +- (i*m) mod m = 1. This is why after a certain number of iterations the scytale returns the initial plaintext. Finally, for every integer y > 1, if n^i mod (m-1) = 1, then n^(y*i) mod (m-1) = 1, i < y*i. And this is why there is a first number of iterations for returning the initial plaintext, QED.

%D Rodrigo Panchiniak Fernandes, OpenPGPjs in Drupal: Practical Privacy-Driven Web Development, Apress (Springer), 2021, 35-40. (in press)

%H Rodrigo Panchiniak Fernandes, <a href="/A342754/b342754.txt">Table of n, a(n) for n = 1..10000</a>

%H Rodrigo Panchiniak Fernandes, <a href="https://crypto.stackexchange.com/questions/88431/how-can-i-determine-the-number-of-times-i-have-to-reapply-the-scytale-until-the">Initial question</a>, Cryptography Stack Exchange.

%H Wikipedia, <a href="https://en.wikipedia.org/wiki/Scytale">Scytale</a>

%F Let n and k represent the length of the message and the number of sides of the scytale, respectively, with 1 < k < n. For each k that divides n, T(n,k) is the minimum integer i, 1 < i < n, such that n-1 divides k^i - 1.

%e Irregular triangle begins:

%e 00|01|02|03|04|05|06|...

%e 01| | | | | | |

%e 02| | | | | | |

%e 03| | | | | | |

%e 04| | 2| | | | |

%e 05| | | | | | |

%e 06| | 4| 4| | | |

%e 07| | | | | | |

%e 08| | 3| | 3| | |

%e 09| | | 2| | | |

%e 10| | 6| | | 6| |

%e 11| | | | | | |

%e 12| |10| 5| 5| |10|

%e 13| | | | | | |

%e ...

%o (JavaScript)

%o // m = 1..10000

%o let n = 0n;

%o let a = [];

%o for (let m = 1n; m < 10001n; m = m + 1n){

%o for (let k = 2n; k <= m; k = k + 1n){

%o if ((m % k) == 0n){

%o let xmod = 1n;

%o for (let x = 1n; xmod != 0n; x = x + 1n){

%o xmod = ((k ** x) - 1n) % (m - 1n);

%o if (xmod == 0n && x != 1n){

%o a[n] = x;

%o n++;

%o }

%o }

%o }

%o }

%o }

%o console.info(a.join(','));

%o (PARI) row(n)={if(n==1, [], my(v=divisors(n)); vector(#v, i, znorder(Mod(v[i], n-1))))} \\ _Andrew Howroyd_, Mar 23 2021

%Y Row n is contained in row n-1 of A216327.

%K nonn,tabf,easy

%O 1,1

%A _Rodrigo Panchiniak Fernandes_, Mar 20 2021

Lookup | Welcome | Wiki | Register | Music | Plot 2 | Demos | Index | Browse | More | WebCam
Contribute new seq. or comment | Format | Style Sheet | Transforms | Superseeker | Recents
The OEIS Community | Maintained by The OEIS Foundation Inc.

License Agreements, Terms of Use, Privacy Policy. .

Last modified May 4 21:32 EDT 2024. Contains 372257 sequences. (Running on oeis4.)