login

Year-end appeal: Please make a donation to the OEIS Foundation to support ongoing development and maintenance of the OEIS. We are now in our 61st year, we have over 378,000 sequences, and we’ve reached 11,000 citations (which often say “discovered thanks to the OEIS”).

A209410
Number of subsets of {1,...,n} not containing {a,a+2,a+4} for any a.
3
1, 2, 4, 8, 16, 28, 49, 91, 169, 312, 576, 1056, 1936, 3564, 6561, 12069, 22201, 40826, 75076, 138096, 254016, 467208, 859329, 1580535, 2907025, 5346880, 9834496, 18088448, 33269824, 61192712, 112550881, 207013417, 380757169, 700321570, 1288092100
OFFSET
0,2
COMMENTS
Also, the number of bitstrings of length n not containing 10101,11101,10111 or 11111.
LINKS
FORMULA
a(n) = 2^n - A209409(n).
a(n) = t[floor(n/2)+2]*t[floor((n+1)/2)+2] where t(n) is the n-th tribonacci number.
a(n) = a(n-1) + 2*a(n-3) + 2*a(n-5) + 2*a(n-6) - a(n-8) - a(n-9).
G.f.: (1 + 1*x + 2*x^2 + 2*x^3 + 4*x^4 + 2*x^5 - 1*x^6 - 2*x^7 - x^8)/((-1 + x + x^2 + x^3)*(-1 - x^2 - x^4 + x^6)).
EXAMPLE
For n=5, subsets containing {a,a+2,a+4} occur only when a=1. There are 2^2 subsets including {1,3,5}, thus a(5) = 2^5 - 4 = 28.
MATHEMATICA
LinearRecurrence[{1, 0, 2, 0, 2, 2, 0, -1, -1}, {1, 2, 4, 8, 16, 28, 49, 91, 169}, 40]
PROG
(Python)
#Returns the actual list of valid subsets
def avoidscode(n, bitstring=(1, 0, 1, 0, 1)):
.patterns=list()
.for start in range (1, n-len(bitstring)+2):
..s=set()
..for i in range(len(bitstring)):
...if bitstring[i]:
....s.add(start+i)
..patterns.append(s)
.s=list()
.for i in range(sum(bitstring)):
..for smallset in comb(range(1, n+1), i):
...s.append(smallset)
.for i in range(sum(bitstring), n+1):
..for temptuple in comb(range(1, n+1), i):
...tempset=set(temptuple)
...for sub in patterns:
....if sub <= tempset:
.....status=False
.....break
...if status:
....s.append(tempset)
.return s
#Counts all such sets
def countavoidscode(n, bitstring=(1, 0, 1, 0, 1)):
.return len(avoidscode(n))
#From recurrence
def a(n, adict={0:1, 1:2, 2:4, 3:8, 4:16, 5:28, 6:49, 7:91, 8:169}):
.if n in adict:
..return adict[n]
.adict[n]=a(n-1) + 2*a(n-3) + 2*a(n-5) + 2*a(n-6) - a(n-8) - a(n-9)
.return adict[n]
(PARI) x='x+O('x^30); Vec((1+x+2*x^2+2*x^3+4*x^4+2*x^5-x^6-2*x^7-x^8)/( (-1+x+x^2+x^3)*(-1-x^2-x^4+x^6))) \\ G. C. Greubel, Jan 05 2018
(Magma) I:=[1, 2, 4, 8, 16, 28, 49, 91, 169]; [n le 9 select I[n] else Self(n-1)+2*Self(n-3)+2*Self(n-5)+2*Self(n-6)-Self(n-8)-Self(n-9): n in [1..30]]; // G. C. Greubel, Jan 05 2018
CROSSREFS
KEYWORD
nonn,easy
AUTHOR
David Nacin, Mar 08 2012
STATUS
approved