cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A363393 Triangle read by rows. T(n, k) = [x^k] (2 - Sum_{k=0..n} binomial(n, k)*Euler(k, 1)*(-2*x)^k).

This page as a plain text file.
%I A363393 #46 Nov 17 2024 08:51:27
%S A363393 1,1,1,1,2,0,1,3,0,-2,1,4,0,-8,0,1,5,0,-20,0,16,1,6,0,-40,0,96,0,1,7,
%T A363393 0,-70,0,336,0,-272,1,8,0,-112,0,896,0,-2176,0,1,9,0,-168,0,2016,0,
%U A363393 -9792,0,7936,1,10,0,-240,0,4032,0,-32640,0,79360,0
%N A363393 Triangle read by rows. T(n, k) = [x^k] (2 - Sum_{k=0..n} binomial(n, k)*Euler(k, 1)*(-2*x)^k).
%C A363393 The Swiss-Knife polynomials (A081658 and A153641) generate the dual triangle ('dual' in the sense of Euler-tangent versus Euler-secant numbers).
%H A363393 Peter Luschny, <a href="/A363393/a363393.pdf">Illustrating the polynomials P363393</a>.
%H A363393 Peter Luschny, <a href="http://www.oeis.org/wiki/User:Peter_Luschny/SwissKnifePolynomials">Swiss-Knife polynomials and Euler numbers</a>.
%H A363393 Peter Luschny, <a href="http://www.luschny.de/math/seq/SwissKnifePolynomials.html">The Swiss-Knife polynomials</a>.
%H A363393 <a href="/index/Eu#Euler">Index entries for sequences related to Euler numbers.</a>
%F A363393 For a recursion see the Python program.
%F A363393 T(n, k) = [x^k] P(n, x) where P(n, x) = (1 / (n + 1)) * Sum_{j=0..n+1} binomial(n + 1, j) * Bernoulli(j, 1) * (4^j - 2^j) * x^(j - 1).
%F A363393 Integral_{x=-n..n} P(n, x)/2 dx = n.
%F A363393 T(n, k) = [x^(n - k)] -(-2)^k * Euler(k, 1) / (x - 1)^(k + 1).
%F A363393 T(n, k) = n! * [x^(n - k)][y^n] exp(x*y) * (1 + tanh(y)).
%e A363393 The triangle T(n, k) starts:
%e A363393 [0] 1;
%e A363393 [1] 1, 1;
%e A363393 [2] 1, 2, 0;
%e A363393 [3] 1, 3, 0,   -2;
%e A363393 [4] 1, 4, 0,   -8, 0;
%e A363393 [5] 1, 5, 0,  -20, 0,   16;
%e A363393 [6] 1, 6, 0,  -40, 0,   96, 0;
%e A363393 [7] 1, 7, 0,  -70, 0,  336, 0,  -272;
%e A363393 [8] 1, 8, 0, -112, 0,  896, 0, -2176, 0;
%e A363393 [9] 1, 9, 0, -168, 0, 2016, 0, -9792, 0, 7936;
%p A363393 P := n -> add(binomial(n + 1, j)*bernoulli(j, 1)*(4^j - 2^j)*x^(j-1), j = 0..n+1) / (n + 1):  T := (n, k) -> coeff(P(n), x, k):
%p A363393 seq(seq(T(n, k), k = 0..n), n = 0..9);
%p A363393 # Second program, based on the generating functions of the columns:
%p A363393 ogf := n -> -(-2)^n * euler(n, 1) / (x - 1)^(n + 1):
%p A363393 ser := n -> series(ogf(n), x, 16):
%p A363393 T := (n, k) -> coeff(ser(k), x, n - k):
%p A363393 for n from 0 to 9 do seq(T(n, k), k = 0..n) od;
%p A363393 # Alternative, based on the bivariate generating function:
%p A363393 egf :=  exp(x*y) * (1 + tanh(y)): ord := 20:
%p A363393 sery := series(egf, y, ord): polx := n -> coeff(sery, y, n):
%p A363393 coefx := n -> seq(n! * coeff(polx(n), x, n - k), k = 0..n):
%p A363393 for n from 0 to 9 do coefx(n) od;
%o A363393 (SageMath)
%o A363393 def B(n: int):
%o A363393     return bernoulli_polynomial(1, n)
%o A363393 def P(n: int):
%o A363393     return sum(binomial(n + 1, j) * B(j) * (4^j - 2^j) * x^(j - 1)
%o A363393            for j in range(n + 2)) / (n + 1)
%o A363393 for n in range(10): print(P(n).list())
%o A363393 (Python)
%o A363393 from functools import cache
%o A363393 @cache
%o A363393 def T(n: int, k: int) -> int:
%o A363393     if k == 0: return 1
%o A363393     if k % 2 == 0:  return 0
%o A363393     if k == n: return 1 - sum(T(n, j) for j in range(1, n, 2))
%o A363393     return (T(n - 1, k) * n) // (n - k)
%o A363393 for n in range(10): print([T(n, k) for k in range(n + 1)])
%Y A363393 Cf. A122045 (alternating row sums), A119880 (row sums), A214447 (central column), A155585 (main diagonal), A109573 (subdiagonal), A162660 (variant), A000364.
%Y A363393 Cf. A081658, A153641, A220901, A318254, A346838.
%K A363393 sign,tabl
%O A363393 0,5
%A A363393 _Peter Luschny_, Jun 04 2023
%E A363393 Simpler name by _Peter Luschny_, Nov 17 2024