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.

A326947 BII-numbers of T_0 set-systems.

Original entry on oeis.org

0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 67, 69, 70, 71, 73, 74, 75, 77, 78
Offset: 1

Views

Author

Gus Wiseman, Aug 08 2019

Keywords

Comments

The dual of a set-system has, for each vertex, one block consisting of the indices (or positions) of the blocks containing that vertex. For example, the dual of {{1,2},{2,3}} is {{1},{1,2},{2}}. The T_0 condition means that the dual is strict (no repeated edges).
A binary index of n is any position of a 1 in its reversed binary expansion. The binary indices of n are row n of A048793. We define the set-system with BII-number n to be obtained by taking the binary indices of each binary index of n. Every finite set of finite nonempty sets has a different BII-number. 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, the BII-number of {{2},{1,3}} is 18. Elements of a set-system are sometimes called edges.

Examples

			The sequence of all T_0 set-systems together with their BII numbers begins:
   0: {}
   1: {{1}}
   2: {{2}}
   3: {{1},{2}}
   5: {{1},{1,2}}
   6: {{2},{1,2}}
   7: {{1},{2},{1,2}}
   8: {{3}}
   9: {{1},{3}}
  10: {{2},{3}}
  11: {{1},{2},{3}}
  13: {{1},{1,2},{3}}
  14: {{2},{1,2},{3}}
  15: {{1},{2},{1,2},{3}}
  17: {{1},{1,3}}
  19: {{1},{2},{1,3}}
  20: {{1,2},{1,3}}
  21: {{1},{1,2},{1,3}}
  22: {{2},{1,2},{1,3}}
  23: {{1},{2},{1,2},{1,3}}
		

Crossrefs

T_0 set-systems are counted by A326940, with unlabeled version A326946.

Programs

  • Mathematica
    bpe[n_]:=Join@@Position[Reverse[IntegerDigits[n,2]],1];
    dual[eds_]:=Table[First/@Position[eds,x],{x,Union@@eds}];
    TZQ[sys_]:=UnsameQ@@dual[sys];
    Select[Range[0,100],TZQ[bpe/@bpe[#]]&]
  • Python
    from itertools import count, chain, islice
    def bin_i(n): #binary indices
        return([(i+1) for i, x in enumerate(bin(n)[2:][::-1]) if x =='1'])
    def a_gen():
        for n in count(0):
            a,b,s = [bin_i(k) for k in bin_i(n)],[],set()
            for i in {i for i in chain.from_iterable(a)}:
                b.append([])
                for j in range(len(a)):
                    if i in a[j]:
                        b[-1].append(j)
                s.add(tuple(b[-1]))
            if len(s) == len(b):
                yield n
    A326947_list = list(islice(a_gen(), 100)) # John Tyler Rascoe, Jul 25 2024