OFFSET
1,5
MAPLE
read transforms; # https://oeis.org/transforms.txt
arow := len -> EULERi([seq(A000073(n), n = 0..len)]): arow(39);
# second Maple program:
t:= n-> (<<0|1|0>, <0|0|1>, <1|1|1>>^n)[1, 3]:
b:= proc(n, i) option remember; `if`(n=0, 1, `if`(i<1, 0,
add(binomial(a(i)+j-1, j)*b(n-i*j, i-1), j=0..n/i)))
end:
a:= proc(n) option remember; t(n-1)-b(n, n-1) end:
seq(a(n), n=1..40); # Alois P. Heinz, Dec 05 2021
MATHEMATICA
(* EulerInvTransform is defined in A022562. *)
EulerInvTransform[LinearRecurrence[{1, 1, 1}, {0, 0, 1}, 40]]
PROG
(SageMath)
def euler_invtrans(A) :
L = []; M = []
for i in range(len(A)) :
s = (i+1)*A[i] - sum(L[j-1]*A[i-j] for j in (1..i))
L.append(s)
s = sum(moebius((i+1)/d)*L[d-1] for d in divisors(i+1))
M.append(s/(i + 1))
return M
@cached_function
def a(n): return a(n-1) + a(n-2) + a(n-3) if n > 2 else [0, 0, 1][n]
print(euler_invtrans([a(n) for n in range(40)]))
(Python) # After the Maple program of Alois P. Heinz.
from functools import cache
from math import comb
def binomial(n, k):
if n == -1: return 1
return comb(n, k)
@cache
def A000073(n):
if n <= 1: return 0
if n == 2: return 1
@cache
def b(n, i):
if n == 0: return 1
if i < 1: return 0
return sum(binomial(a(i) + j - 1, j) *
b(n - i * j, i - 1) for j in range(1 + n // i))
@cache
def a(n): return (A000073(n - 1) - b(n, n - 1))
print([a(n) for n in range(1, 41)])
(PARI)
InvEulerT(v)={my(p=log(1+x*Ser(v))); dirdiv(vector(#v, n, polcoef(p, n)), vector(#v, n, 1/n))}
seq(n) = InvEulerT(Vec(x^2/(1 - x - x^2 - x^3) + O(x^n), -n)) \\ Andrew Howroyd, Dec 05 2021
CROSSREFS
KEYWORD
nonn
AUTHOR
Peter Luschny, Dec 05 2021
STATUS
approved