OFFSET
1,2
COMMENTS
The seed in each case is a single live cell at the left end.
Terms of the form 2^k-1 have a period of 1 since all cells die.
In binary, all terms (except the 1's) have at least one 1 followed by at least one 0. The exceptions are the 36th and 94th terms and their derivatives, which have alternating 1's and 0's in their binary expansion.
LINKS
Adam P. Goucher, Table of n, a(n) for n = 1..200 (terms for n = 1..99 from E-Hern Lee)
Lee Burnette, Variations of Life. [dead link]
Lee Burnette, Oscillator for n=10. [dead link]
Stack Exchange Network chat, Initial message.
Stack Exchange Network chat, Electrons in a wire.
FORMULA
No general formula for even-indexed terms is known. For odd-indexed terms, a(2n+1) = 2*a(n), except when n is of the form (2^k - 1), in which case a(n) = 1.
EXAMPLE
a(10) = 62 because a strip of 10 cells has period 62 in this rule.
MATHEMATICA
g = Function[{sq, p}, Module[{l = Length[sq]},
Do[If[sq[[i]] == sq[[j]], Return[p^(j - 1) - p^(i - 1)]],
{j, 2, l}, {i, 1, j - 1}]]];
MPM = Algebra`MatrixPowerMod;
EventualPeriod = Function[{m, v, p},
Module[{n = Length[m], w, sq, k, primes},
sq = NestList[(MPM[#, p, p]) &, m, n];
w = Mod[Last[sq].v, p];
sq = Map[(Mod[#.w, p]) &, sq];
k = g[sq, p];
If[k == Null, k = p^n Apply[LCM, Table[p^r - 1, {r, 1, n}]]];
primes = Map[First, FactorInteger[k]];
primes = Select[primes, (# > 1) &];
While[Length[primes] > 0,
primes = Select[primes, (Mod[k, #] == 0) &];
primes = Select[primes, (Mod[MPM[m, k/#, p].w, p] == w) &];
k = k/Fold[Times, 1, primes];
]; k ]];
mat = Function[{n}, Table[Boole[Abs[i - j] == 1], {i, 1, n}, {j, 1, n}]];
vec = Function[{n}, Table[Boole[i == 1], {i, 1, n}]];
Table[EventualPeriod[mat[n], vec[n], 2], {n, 1, 100}]
(* Adam P. Goucher, Jan 13 2019 *)
PROG
(Python)
def electron_period(n):
wire_mask = (1 << n) - 1
power = lam = 1
tortoise, hare = 1, 2
while tortoise != hare:
if power == lam:
tortoise = hare
power *= 2
lam = 0
hare = ((hare << 1) ^ (hare >> 1)) & wire_mask
lam += 1
return lam
CROSSREFS
KEYWORD
nonn
AUTHOR
Lee Burnette, Feb 12 2016
STATUS
approved