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.

Showing 1-4 of 4 results.

A382345 Square array A(n,k), n>=0, k>=0, read by antidiagonals downwards, where n unlabeled objects are distributed into k containers of two kinds. Containers may be left empty.

Original entry on oeis.org

1, 2, 0, 3, 2, 0, 4, 4, 2, 0, 5, 6, 7, 2, 0, 6, 8, 12, 8, 2, 0, 7, 10, 17, 18, 11, 2, 0, 8, 12, 22, 28, 26, 12, 2, 0, 9, 14, 27, 38, 46, 34, 15, 2, 0, 10, 16, 32, 48, 66, 64, 46, 16, 2, 0, 11, 18, 37, 58, 86, 100, 94, 56, 19, 2, 0, 12, 20, 42, 68, 106, 136, 152, 124, 70, 20, 2, 0
Offset: 0

Views

Author

Peter Dolland, Mar 29 2025

Keywords

Examples

			Array starts:
 0 : [1, 2,  3,   4,   5,   6,   7,    8,    9,   10,   11]
 1 : [0, 2,  4,   6,   8,  10,  12,   14,   16,   18,   20]
 2 : [0, 2,  7,  12,  17,  22,  27,   32,   37,   42,   47]
 3 : [0, 2,  8,  18,  28,  38,  48,   58,   68,   78,   88]
 4 : [0, 2, 11,  26,  46,  66,  86,  106,  126,  146,  166]
 5 : [0, 2, 12,  34,  64, 100, 136,  172,  208,  244,  280]
 6 : [0, 2, 15,  46,  94, 152, 217,  282,  347,  412,  477]
 7 : [0, 2, 16,  56, 124, 214, 316,  426,  536,  646,  756]
 8 : [0, 2, 19,  70, 167, 302, 464,  640,  825, 1010, 1195]
 9 : [0, 2, 20,  84, 212, 406, 648,  922, 1212, 1512, 1812]
10 : [0, 2, 23, 100, 271, 542, 899, 1314, 1766, 2236, 2717]
...
		

Crossrefs

Antidiagonal sums give A000712.
Alternating antidiagonal sums give A073252.
Without empty containers: A381895.
Cf. A382342.

Programs

  • Maple
    b:= proc(n, i) option remember; expand(`if`(n=0, 1, `if`(i<1, 0,
          add(x^j*b(n-i*j, min(n-i*j, i-1))*(j+1), j=0..n/i))))
        end:
    A:= (n, k)-> coeff(b(n+k$2), x, k):
    seq(seq(A(n, d-n), n=0..d), d=0..11);  # Alois P. Heinz, Mar 29 2025
  • Mathematica
    b[n_, i_] := b[n, i] = Expand[If[n == 0, 1, If[i < 1, 0,
       Sum[x^j*b[n - i*j, Min[n - i*j, i - 1]]*(j + 1), {j, 0, n/i}]]]];
    A[n_, k_] := Coefficient[b[n + k, n + k], x, k];
    Table[Table[A[n, d - n], {n, 0, d}], {d, 0, 11}] // Flatten (* Jean-François Alcover, Apr 07 2025, after Alois P. Heinz *)
  • Python
    from sympy.utilities.iterables import partitions
    def a_row(n, length=11) -> list[int]:
        if n == 0 : return list(range(1, length + 1))
        t = [0] * length
        for p in partitions(n):
            fact = 1
            s = 0
            for k in p :
                s += p[k]
                fact *= p[k] + 1
            if s > 0 :
                t[s] += fact
        for i in range(1, length - 1):
            t[i+1] += t[i] * 2 - t[i-1]
        return t
    for n in range(11): print(a_row(n))

Formula

A(0,k) = k + 1.
A(1,k) = 2*k.
A(2,k+1) = 2 + 5 * k.
A(n,1) = 2.
A(n,k) = Sum_{i=0..k} (k + 1 - i) * A382342(n,i) for k <= n.
A(n,n+k) = A(n,n) + k * A000712(n).
A(n,k) = A382342(n,k) + 2 * A(n,k-1) - A(n,k-2) for 2 <= k <= n.
A(n,k) = A382342(n+k,k). - Alois P. Heinz, Mar 31 2025

A382343 Triangle read by rows: T(n, k) is the number of partitions of n into k parts where 0 <= k <= n, and each part is one of 3 kinds.

Original entry on oeis.org

1, 0, 3, 0, 3, 6, 0, 3, 9, 10, 0, 3, 15, 18, 15, 0, 3, 18, 36, 30, 21, 0, 3, 24, 55, 66, 45, 28, 0, 3, 27, 81, 114, 105, 63, 36, 0, 3, 33, 108, 189, 195, 153, 84, 45, 0, 3, 36, 145, 276, 348, 298, 210, 108, 55, 0, 3, 42, 180, 405, 552, 558, 423, 276, 135, 66
Offset: 0

Views

Author

Peter Dolland, Mar 27 2025

Keywords

Examples

			Triangle starts:
 0 : [1]
 1 : [0, 3]
 2 : [0, 3,  6]
 3 : [0, 3,  9,  10]
 4 : [0, 3, 15,  18,  15]
 5 : [0, 3, 18,  36,  30,  21]
 6 : [0, 3, 24,  55,  66,  45,  28]
 7 : [0, 3, 27,  81, 114, 105,  63,  36]
 8 : [0, 3, 33, 108, 189, 195, 153,  84,  45]
 9 : [0, 3, 36, 145, 276, 348, 298, 210, 108,  55]
10 : [0, 3, 42, 180, 405, 552, 558, 423, 276, 135, 66]
...
		

Crossrefs

Main diagonal gives A000217(n+1).
Row sums give A000716.
Cf. A008284 (1-kind), A382342 (2-kind).

Programs

  • Maple
    b:= proc(n, i) option remember; expand(`if`(n=0, 1, `if`(i<1, 0,
          add(x^j*b(n-i*j, min(n-i*j, i-1))*(j+2)*(j+1)/2, j=0..n/i))))
        end:
    T:= (n, k)-> coeff(b(n$2), x, k):
    seq(seq(T(n, k), k=0..n), n=0..10);  # Alois P. Heinz, Mar 27 2025
  • Mathematica
    b[n_, i_] := b[n, i] = Expand[If[n == 0, 1, If[i < 1, 0, Sum[x^j*b[n-i*j, Min[n-i*j, i-1]]*(j+2)*(j+1)/2, {j, 0, n/i}]]]];
    T[n_, k_] := Coefficient[b[n, n], x, k];
    Table[Table[T[n, k], {k, 0, n}], {n, 0, 10}] // Flatten (* Jean-François Alcover, Jul 30 2025, after Alois P. Heinz *)
  • Python
    from sympy import binomial
    from sympy.utilities.iterables import partitions
    kinds = 3 - 1   # the number of part kinds - 1
    def t_row( n):
        if n == 0 : return [1]
        t = list( [0] * n)
        for p in partitions( n):
            fact = 1
            s = 0
            for k in p :
                s += p[k]
                fact *= binomial( kinds + p[k], kinds)
            if s > 0 :
                t[s - 1] += fact
        return [0] + t

Formula

T(n,n) = binomial(n + 2, 2) = A000217(n + 1).
T(n,1) = 3 for n >= 1.
T(n,k) = A382025(n,k) - A382025(n,k-1) for 1 <= k <= n.
Sum_{k=0..n} (-1)^k * T(n,k) = A022598(n). - Alois P. Heinz, Mar 27 2025

A383351 Triangle read by rows: T(n, k) is the number of partitions of a 2-colored set of n objects into k parts where 0 <= k <= n, and each part is one of 2 kinds.

Original entry on oeis.org

1, 0, 4, 0, 6, 10, 0, 8, 24, 20, 0, 10, 53, 60, 35, 0, 12, 88, 164, 120, 56, 0, 14, 144, 348, 370, 210, 84, 0, 16, 208, 672, 904, 700, 336, 120, 0, 18, 299, 1174, 1998, 1870, 1183, 504, 165, 0, 20, 400, 1952, 3952, 4524, 3360, 1848, 720, 220
Offset: 0

Views

Author

Peter Dolland, Apr 24 2025

Keywords

Examples

			Triangle starts:
 0 : [1]
 1 : [0,  4]
 2 : [0,  6,  10]
 3 : [0,  8,  24,   20]
 4 : [0, 10,  53,   60,   35]
 5 : [0, 12,  88,  164,  120,   56]
 6 : [0, 14, 144,  348,  370,  210,   84]
 7 : [0, 16, 208,  672,  904,  700,  336,  120]
 8 : [0, 18, 299, 1174, 1998, 1870, 1183,  504,  165]
 9 : [0, 20, 400, 1952, 3952, 4524, 3360, 1848,  720, 220]
10 : [0, 22, 534, 3052, 7394, 9834, 8652, 5488, 2724, 990, 286]
...
		

Crossrefs

Main diagonal gives A000292(n+1).
Partial row sums are A383352.
Cf. A382342 (1-colored), A382339 (1-kind), A008284 (1-colored, 1-kind).

Programs

  • Python
    from sympy import binomial
    from sympy.utilities.iterables import partitions
    def calc_w(k , m):
        s = 0
        for p in partitions(m, m=k+1):
            fact = 1
            j = k + 1
            for x in p :
                fact *= binomial(j, p[x]) * (x + 1) ** p[x]
                j -= p[x]
            s += fact
        return s
    def t_row(n):
        if n == 0 : return [1]
        t = list([0] * n)
        for p in partitions( n):
            fact = 1
            s = 0
            for k in p :
                s += p[k]
                fact *= calc_w(k, p[k])
            if s > 0 :
                t[s - 1] += fact
        return [0] + t

Formula

T(n,n) = binomial(n + 3, 3) = A000292(n + 1).
T(n,1) = 2*n + 2 for n >= 1.
T(n,k+1) = A383352(n,k+1) - A383352(n,k) for 0 <= k < n.

A382344 Triangle read by rows: T(n, k) is the number of partitions of n into k parts where 0 <= k <= n, and each part is one of 4 kinds.

Original entry on oeis.org

1, 0, 4, 0, 4, 10, 0, 4, 16, 20, 0, 4, 26, 40, 35, 0, 4, 32, 80, 80, 56, 0, 4, 42, 124, 180, 140, 84, 0, 4, 48, 184, 320, 340, 224, 120, 0, 4, 58, 248, 535, 660, 574, 336, 165, 0, 4, 64, 332, 800, 1200, 1184, 896, 480, 220, 0, 4, 74, 416, 1176, 1956, 2284, 1932, 1320, 660, 286
Offset: 0

Views

Author

Peter Dolland, Mar 28 2025

Keywords

Examples

			Triangle starts:
 0 : [1]
 1 : [0, 4]
 2 : [0, 4, 10]
 3 : [0, 4, 16,  20]
 4 : [0, 4, 26,  40,   35]
 5 : [0, 4, 32,  80,   80,   56]
 6 : [0, 4, 42, 124,  180,  140,   84]
 7 : [0, 4, 48, 184,  320,  340,  224,  120]
 8 : [0, 4, 58, 248,  535,  660,  574,  336,  165]
 9 : [0, 4, 64, 332,  800, 1200, 1184,  896,  480, 220]
10 : [0, 4, 74, 416, 1176, 1956, 2284, 1932, 1320, 660, 286]
...
		

Crossrefs

Main diagonal gives A000292(n+1).
Row sums give A023003.
Cf. A008284 (1-kind), A382342 (2-kind), A382343 (3-kind).

Programs

  • Maple
    b:= proc(n, i) option remember; expand(`if`(n=0, 1, `if`(i<1, 0,
          add(x^j*b(n-i*j, min(n-i*j, i-1))*binomial(j+3, 3), j=0..n/i))))
        end:
    T:= (n, k)-> coeff(b(n$2), x, k):
    seq(seq(T(n, k), k=0..n), n=0..10);  # Alois P. Heinz, Mar 28 2025
  • Mathematica
    b[n_, i_] := b[n, i] = Expand[If[n == 0, 1, If[i < 1, 0, Sum[x^j*b[n-i*j, Min[n-i*j, i-1]]*Binomial[j+3, 3], {j, 0, n/i}]]]];
    T[n_, k_] := Coefficient[b[n, n], x, k];
    Table[Table[T[n, k], {k, 0, n}], {n, 0, 10}] // Flatten (* Jean-François Alcover, Aug 07 2025, after Alois P. Heinz *)
  • Python
    from sympy import binomial
    from sympy.utilities.iterables import partitions
    kinds = 4 - 1   # the number of part kinds - 1
    def t_row( n):
        if n == 0 : return [1]
        t = list( [0] * n)
        for p in partitions( n):
            fact = 1
            s = 0
            for k in p :
                s += p[k]
                fact *= binomial( kinds + p[k], kinds)
            if s > 0 :
                t[s - 1] += fact
        return [0] + t

Formula

T(n,n) = binomial(n + 3, 3) = A000292(n + 1).
T(n,1) = 4 for n >= 1.
T(n,k) = A382041(n,k) - A382041(n,k-1) for 1 <= k <= n.
Sum_{k=0..n} (-1)^k * T(n,k) = A022599(n). - Alois P. Heinz, Mar 28 2025
Showing 1-4 of 4 results.