login

Year-end appeal: Please make a donation to the OEIS Foundation to support ongoing development and maintenance of the OEIS. We are now in our 61st year, we have over 378,000 sequences, and we’ve reached 11,000 citations (which often say “discovered thanks to the OEIS”).

A347925
a(n) is the lowest common denominator of n-th Gilbreath polynomial.
2
1, 1, 1, 1, 1, 3, 6, 30, 180, 1260, 181440, 1814400, 19958400, 239500800, 3113510400, 43589145600, 43589145600, 653837184000, 177843714048000, 177843714048000, 1600593426432000, 1216451004088320000, 25545471085854720000, 25545471085854720000
OFFSET
1,6
COMMENTS
Let S=(p_1, ..., p_n) be the ordered sequence of the first n prime numbers. The n-th Gilbreath polynomial is defined as the polynomial P_n such that the x-th term of the upper bound Gilbreath sequence of S, U(S)_x, is U(S)_x=2^(n+x-1)+P_n where P_n = Sum_{i=1..n} T(n,i)*x^(i-1)/a(n).
EXAMPLE
The lowest common denominator of P_6 is a(6)=3, in fact P_6 = (-57 - 55x - 15x^2 - 2x^3)/3. The x-th term of the upper bound Gilbreath sequence of S=(p_1, ..., p_6) = (2, 3, 5, 7, 11, 13) is U(S)_x = 2^(x+5) + (-57 - 55x - 15x^2 - 2x^3)/3.
PROG
(PARI) polynomialfit(data) = Pol(Vecrev(matsolve(matrix(#data, #data, i, j, i^(j-1)), data~))); \\ from David A. Corneth
isg(v, k) = {my(w = concat(v, k), vd = w); for (i=1, #w-1, vd = vector(#vd-1, k, abs(vd[k+1] - vd[k])); if (vd[1] != 1, return (0)); ); return (1); }
nextx(v) = {my(k = nextprime(nextprime(vecmax(v)+1)+1)); while (isg(v, k), k+=2); k-=2; }
a(n) = {my(vp = primes(n), v = List()); for (i=1, n, my(x = nextx(vp)); vp = concat(vp, x); listput(v, x); ); v = Vec(v); my(cp = Vecrev(polynomialfit(vector(#v, k, v[k] - 2^(k+n-1))))); lcm(apply(denominator, cp)); } \\ Michel Marcus, Sep 20 2021
CROSSREFS
Cf. A347924.
Sequence in context: A157534 A372024 A133799 * A262022 A088436 A088506
KEYWORD
nonn
AUTHOR
Riccardo Gatti, Sep 20 2021
STATUS
approved