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.

A326701 BII-numbers of set partitions.

Original entry on oeis.org

0, 1, 2, 3, 4, 8, 9, 10, 11, 12, 16, 18, 32, 33, 64, 128, 129, 130, 131, 132, 136, 137, 138, 139, 140, 144, 146, 160, 161, 192, 256, 258, 264, 266, 288, 512, 513, 520, 521, 528, 1024, 1032, 2048, 2049, 2050, 2051, 2052, 4096, 4098, 8192, 8193, 16384, 32768, 32769
Offset: 1

Views

Author

Gus Wiseman, Jul 21 2019

Keywords

Comments

A binary index of n is any position of a 1 in its reversed binary expansion. We define the set-system with BII-number n to be obtained by taking the binary indices of each binary index of n. For example, 18 has reversed binary expansion (0,1,0,0,1), and since the binary indices of 2 and 5 are {2} and {1,3} respectively, and {{2},{1,3}} is a set partition, it follows that 18 belongs to the sequence.

Examples

			The sequence of all set partitions together with their BII numbers begins:
    0: {}
    1: {{1}}
    2: {{2}}
    3: {{1},{2}}
    4: {{1,2}}
    8: {{3}}
    9: {{1},{3}}
   10: {{2},{3}}
   11: {{1},{2},{3}}
   12: {{1,2},{3}}
   16: {{1,3}}
   18: {{2},{1,3}}
   32: {{2,3}}
   33: {{1},{2,3}}
   64: {{1,2,3}}
  128: {{4}}
  129: {{1},{4}}
  130: {{2},{4}}
  131: {{1},{2},{4}}
  132: {{1,2},{4}}
  136: {{3},{4}}
		

Crossrefs

MM-numbers of set partitions are A302521.
BII-numbers of chains of nonempty sets are A326703.
BII-numbers of antichains of nonempty sets are A326704.

Programs

  • Mathematica
    bpe[n_]:=Join@@Position[Reverse[IntegerDigits[n,2]],1];
    Select[Range[0,1000],UnsameQ@@Join@@bpe/@bpe[#]&]
  • Python
    from itertools import chain, count, combinations, islice
    from sympy.utilities.iterables import multiset_partitions
    def a_gen():
        yield 0
        for n in count(1):
            t = []
            for i in chain.from_iterable(combinations(range(1,n+1),r) for r in range(n+1)):
                if n in i:
                    for j in multiset_partitions(i):
                        t.append(sum(2**(sum(2**(m-1) for m in k)-1) for k in j))
            yield from sorted(t)
    A326701_list = list(islice(a_gen(), 100)) # John Tyler Rascoe, May 24 2024