|
|
A094577
|
|
Central Peirce numbers. Number of set partitions of {1,2,..,2n+1} in which n+1 is the smallest of its block.
|
|
13
|
|
|
1, 3, 27, 409, 9089, 272947, 10515147, 501178937, 28773452321, 1949230218691, 153281759047387, 13806215066685433, 1408621900803060705, 161278353358629226675, 20555596673435403499083, 2896227959507289559616217, 448371253145121338801335489
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
0,2
|
|
COMMENTS
|
Let P(n,k) be the number of set partitions of {1,2,..,n} in which k is the smallest of its block. These numbers were introduced by C. S. Peirce (see reference, page 48). If this triangle is displayed as in A123346 (or A011971) then a(n) = A011971(2n, n) are the central Pierce numbers. - Peter Luschny, Jan 18 2011
Named after the American philosopher, logician, mathematician and scientist Charles Sanders Peirce (1839-1914). - Amiram Eldar, Jun 11 2021
|
|
REFERENCES
|
Donald E. Knuth, The Art of Computer Programming, Vol. 4, Section 7.2.1.5.
|
|
LINKS
|
|
|
FORMULA
|
a(n) = Sum_{k=0..n} binomial(n,k)*Bell(2*n-k).
a(n) = Sum_{k=0..n} (-1)^k*binomial(n, k)*Bell(2*n-k+1).
a(n) = exp(-1)*Sum_{k>=0} (k(k+1))^n/k!. - Benoit Cloitre, Dec 30 2005
|
|
EXAMPLE
|
n = 1, S = {1, 2, 3}. k = n+1 = 2. Thus a(1) = card { 13|2, 1|23, 1|2|3 } = 3. - Peter Luschny, Jan 18 2011
|
|
MAPLE
|
seq(add(binomial(n, k)*(bell(n+k)), k=0..n), n=0..14); # Zerinvary Lajos, Dec 01 2006
# The objective of this implementation is efficiency.
# m -> [a(0), a(1), ..., a(m-1)] for m > 0.
local A, R, M, n, k, j;
M := m+m-1; A := array(1..M);
j := 1; R := 1; A[1] := 1;
for n from 2 to M do
A[n] := A[1];
for k from n by -1 to 2 do
A[k-1] := A[k-1] + A[k]
od;
if is(n, odd) then
j := j+1; R := R, A[j] fi
od;
[R] end:
|
|
MATHEMATICA
|
f[n_] := Sum[Binomial[n, k]*BellB[2 n - k], {k, 0, n}]; Array[f, 15, 0]
|
|
PROG
|
(Python)
# requires python 3.2 or higher. Otherwise use def'n of accumulate in python docs.
from itertools import accumulate
A094577_list, blist, b = [1], [1], 1
for n in range(2, 502):
....blist = list(accumulate([b]+blist))
....b = blist[-1]
....blist = list(accumulate([b]+blist))
....b = blist[-1]
|
|
CROSSREFS
|
|
|
KEYWORD
|
nonn
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|