%I #17 May 29 2022 01:38:34
%S 0,0,0,0,3,4,4,6,6,6,21,12,14,16,22,18,22,22,20,24,24,20,63,24,28,30,
%T 30,30,52,30,86,78,48,48,42,48,48,50,54,54,46,48,44,52,44,46,173,54,
%U 60,60,56,54,58,50,58,60,64,58,186,156,58,56,236,78,150,80,78,90,86,90,86,84,88,90,92,96,90,82,86,88,92,88,84,84,84,86,84,82,84
%N a(1) = 0; for n>1, a(n) = prime(n-1) - A090252(n).
%C Theorem: a(n) >= 0 for all n.
%H N. J. A. Sloane, <a href="/A354154/b354154.txt">Table of n, a(n) for n = 1..10000</a>
%e A090252 begins
%e 1, 2, 3, 5, 4, 7, 9, 11, 13, ...
%e and we subtract these numbers from
%e 1, 2, 3, 5, 7, 11, 13, 17, 19, ...
%e to get
%e 0, 0, 0, 0, 3, 4, 4, 6, 6, ...
%o (Python)
%o from math import gcd, prod
%o from sympy import isprime, nextprime
%o from itertools import count, islice
%o def agen(): # generator of terms
%o alst, aset, mink, p = [1], {1}, 2, 1
%o yield 0
%o for n in count(2):
%o k, s, p = mink, n - n//2, nextprime(p)
%o prodall = prod(alst[n-n//2-1:n-1])
%o while k in aset or gcd(prodall, k) != 1: k += 1
%o alst.append(k); aset.add(k); yield p - k
%o while mink in aset: mink += 1
%o print(list(islice(agen(), 89))) # _Michael S. Branicky_, May 28 2022
%Y Cf. A090252.
%K nonn
%O 1,5
%A _N. J. A. Sloane_, May 28 2022