[go: up one dir, main page]

login
A326703
BII-numbers of chains of nonempty sets.
20
0, 1, 2, 4, 5, 6, 8, 16, 17, 24, 32, 34, 40, 64, 65, 66, 68, 69, 70, 72, 80, 81, 88, 96, 98, 104, 128, 256, 257, 384, 512, 514, 640, 1024, 1025, 1026, 1028, 1029, 1030, 1152, 1280, 1281, 1408, 1536, 1538, 1664, 2048, 2056, 2176, 4096, 4097, 4104, 4112, 4113, 4120
OFFSET
1,3
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. 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, it follows that the BII-number of {{2},{1,3}} is 18.
Elements of a set-system are sometimes called edges. In a chain of sets, every edge is a subset or superset of every other edge.
LINKS
EXAMPLE
The sequence of all chains of nonempty sets together with their BII-numbers begins:
0: {}
1: {{1}}
2: {{2}}
4: {{1,2}}
5: {{1},{1,2}}
6: {{2},{1,2}}
8: {{3}}
16: {{1,3}}
17: {{1},{1,3}}
24: {{3},{1,3}}
32: {{2,3}}
34: {{2},{2,3}}
40: {{3},{2,3}}
64: {{1,2,3}}
65: {{1},{1,2,3}}
66: {{2},{1,2,3}}
68: {{1,2},{1,2,3}}
69: {{1},{1,2},{1,2,3}}
70: {{2},{1,2},{1,2,3}}
72: {{3},{1,2,3}}
80: {{1,3},{1,2,3}}
81: {{1},{1,3},{1,2,3}}
88: {{3},{1,3},{1,2,3}}
96: {{2,3},{1,2,3}}
98: {{2},{2,3},{1,2,3}}
MATHEMATICA
bpe[n_]:=Join@@Position[Reverse[IntegerDigits[n, 2]], 1];
stableQ[u_, Q_]:=!Apply[Or, Outer[#1=!=#2&&Q[#1, #2]&, u, u, 1], {0, 1}];
Select[Range[0, 100], stableQ[bpe/@bpe[#], !SubsetQ[#1, #2]&&!SubsetQ[#2, #1]&]&]
PROG
(Python)
from itertools import chain, count, combinations, islice
from sympy.combinatorics.subsets import ksubsets
def subsets(x):
for i in range(1, len(x)):
for j in ksubsets(x, i):
yield(list(j))
def a_gen(): #generator of terms
yield 0
for n in count(1):
t, v, j = [[]], [], 0
for i in chain.from_iterable(combinations(range(1, n+1), r) for r in range(n+1)):
if n in i:
t[j].append([list(i)])
while n:
t.append([])
for i in t[j]:
if len(i[-1]) > 1:
for k in list(subsets(i[-1])):
t[j+1].append(i.copy()+[k])
if len(t[j+1]) < 1:
break
j += 1
for j in chain.from_iterable(t):
v.append(sum(2**(sum(2**(m-1) for m in k)-1) for k in j))
yield from sorted(v)
A326703_list = list(islice(a_gen(), 55)) # John Tyler Rascoe, Jun 07 2024
CROSSREFS
Chains of nonempty sets are counted by A000629.
MM-numbers of chains of multisets are A318991.
BII-numbers of antichains of nonempty sets are A326704.
Sequence in context: A326905 A327061 A326913 * A244008 A104704 A169884
KEYWORD
nonn,base
AUTHOR
Gus Wiseman, Jul 21 2019
STATUS
approved