login
BII-numbers of set-systems covering an initial interval of positive integers.
31

%I #10 Jun 21 2024 02:06:15

%S 0,1,3,4,5,6,7,11,12,13,14,15,18,19,20,21,22,23,26,27,28,29,30,31,33,

%T 35,36,37,38,39,41,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,

%U 60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78

%N BII-numbers of set-systems covering an initial interval of positive integers.

%C 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.

%H John Tyler Rascoe, <a href="/A326754/b326754.txt">Table of n, a(n) for n = 1..10000</a>

%e The sequence of all covering set-systems together with their BII-numbers begins:

%e 0: {}

%e 1: {{1}}

%e 3: {{1},{2}}

%e 4: {{1,2}}

%e 5: {{1},{1,2}}

%e 6: {{2},{1,2}}

%e 7: {{1},{2},{1,2}}

%e 11: {{1},{2},{3}}

%e 12: {{1,2},{3}}

%e 13: {{1},{1,2},{3}}

%e 14: {{2},{1,2},{3}}

%e 15: {{1},{2},{1,2},{3}}

%e 18: {{2},{1,3}}

%e 19: {{1},{2},{1,3}}

%e 20: {{1,2},{1,3}}

%e 21: {{1},{1,2},{1,3}}

%e 22: {{2},{1,2},{1,3}}

%e 23: {{1},{2},{1,2},{1,3}}

%e 26: {{2},{3},{1,3}}

%e 27: {{1},{2},{3},{1,3}}

%e 28: {{1,2},{3},{1,3}}

%e 29: {{1},{1,2},{3},{1,3}}

%e 30: {{2},{1,2},{3},{1,3}}

%t bpe[n_]:=Join@@Position[Reverse[IntegerDigits[n,2]],1];

%t normQ[m_]:=Or[m=={},Union[m]==Range[Max[m]]];

%t Select[Range[0,100],normQ[Join@@bpe/@bpe[#]]&]

%o (Python)

%o from itertools import chain, count, islice

%o def bin_i(n): #binary indices

%o return([(i+1) for i, x in enumerate(bin(n)[2:][::-1]) if x =='1'])

%o def a_gen():

%o for n in count(0):

%o s = set(i for i in chain.from_iterable([bin_i(k) for k in bin_i(n)]))

%o y = len(s)

%o if sum(s) == (y*(y+1))//2:

%o yield n

%o A326754_list = list(islice(a_gen(), 100)) # _John Tyler Rascoe_, Jun 20 2024

%Y Cf. A000120, A003465, A006126, A048793, A070939, A293510, A326031, A326702.

%Y Other BII-numbers: A309314 (hyperforests), A326701 (set partitions), A326703 (chains), A326704 (antichains), A326749 (connected), A326750 (clutters), A326751 (blobs), A326752 (hypertrees).

%K nonn,base

%O 1,3

%A _Gus Wiseman_, Jul 23 2019