Exercise 4.5.8* (Torture chambers)

Say that a set 𝒮 of positive integers has property M if no element of 𝒮 is a multiple of another. (a) Prove that there exists a subset 𝒮 of { 1 , 2 , 3 , , 2 n } containing n elements with property M but that no subset of n + 1 elements has property M . (b) Prove the same results for subsets 𝒮 of { 1 , 2 , 3 , , 2 n 1 } . (c) How many elements are there in the largest subset 𝒮 of { 1 , 3 , 5 , 7 , , 2 n 1 } having property M ?

Answers

Proof. Here n is a positive integer.

(a)
Existence of a subset 𝒮 having property M and containing n elements.

Consider the subset of [ [ 1 , 2 n ] ] defined by

𝒮 = [ [ n + 1 , 2 n ] ] .

Then 𝒮 contains n elements. Assume for the sake of contradiction that two distinct elements a , b satisfy a b , so that there is some integer k > 1 such that b = ka . Then a > n , and b 2 n , thus k = b a < 2 . But k 2 . This contradiction shows that 𝒮 has the property M .

Non-existence of a subset 𝒮 having property M and containing n + 1 elements.

Consider for every odd positive integer m the set

A m = { x [ [ 1 , 2 n ] ] k , x = m 2 k } ,

and the sequence ( A m ) m I , where

I = { m [ [ 1 , 2 n ] ] m 1 ( mod 2 ) } = { 1 , 3 , , 2 n 1 } .

Since every integer is in a unique way in the form x = m 2 k , where m is an odd positive integer, and k 0 an integer, then ( A m ) m I is a partition of [ [ 1 , 2 n ] ] , that is

m I A m = [ [ 1 , 2 n ] ] , m I , m I , m m A m A m = .

Suppose that 𝒮 [ [ 1 , 2 n ] ] contains n + 1 elements.

Since | I | = n , there are n classes A m in the partition, so by the pigeonhole principle, there are two distinct elements a < b in 𝒮 which are in the same A m for some odd integer m . Then

a = m 2 j , b = m 2 k , where  j < k ,

thus a b , a b , so 𝒮 has not the property M . This shows that no subset of [ [ 1 , 2 n ] ] with n + 1 elements has property M .

(b)
Let 𝒮 be a subset of { 1 , 2 , 3 , , 2 n 1 } . A fortiori, 𝒮 is a subset of [ [ 1 , 2 n ] ] . Therefore, by part (a), 𝒮 has at most n elements. Moreover 𝒮 0 = [ [ n , 2 n 1 ] ] = { n , n + 1 , n + 2 , , 2 n 1 }

has n elements and has the property M , so we obtain the same results for subsets 𝒮 of { 1 , 2 , 3 , , 2 n 1 } .

(c)
Consider now a subset 𝒮 of B = { 1 , 3 , 5 , , 2 n 1 } satisfying the property M . We define for every odd m such that m ± 1 ( mod 3 ) the subset B m = { x [ [ 1 , 2 n 1 ] ] k , x = m 3 k } ,

and the sequence ( B m ) m J , where

J = { m B m 0 ( mod 3 ) } = { 1 , 5 , 7 , 11 , }

is the set of m [ [ 1 , 2 n 1 ] ] such that m ± 1 ( mod 6 ) .

As in part (a), ( B m ) m J is a partition of B , with | J | classes.

Let 𝒮 a subset of B with | J | + 1 elements. Then there are two elements a , b in 𝒮 such that a < b are in a same class B m , thus a b , so 𝒮 has not the property M . This shows that every 𝒮 satisfying the property has at most | J | elements.

If remains to estimate | J | . Since

J = { m [ [ 1 , 2 n 1 ] ] m ± 1 ( mod 6 ) } = { 1 , 7 , , 6 k 5 } { 5 , 13 , , 6 l 1 } ,

where k is the larger integer such that 6 k 5 2 n 1 , so k = n + 2 3 , and l is the larger integer such that 6 l 1 2 n 1 , so l = n 3 . This gives

| J | = n 3 + n + 2 3 ,

or equivalently (see Problem 4.1.15)

| J | = n n + 1 3 .

Consider now the particular solution

𝒮 = { 2 n + 1 3 + 1 , 2 n + 1 3 + 3 , , 2 n 1 } .

Then 𝒮 has n n + 1 3 elements. Moreover 𝒮 has the property M : if two elements a < b in 𝒮 are such that a b , then b = aq , where q > 1 . Since a and b are odd, q 2 so q 3 . Moreover

q = b a 2 n 1 2 n + 1 3 + 1 ,

where

2 n 1 2 n + 1 3 + 1 < 3 n < 3 n + 1 3 + 2 n + 1 3 < n + 1 3 + 1 .

Since the last inequality is true by definition of the greatest integer function, the first is true, so q < 3 . This is a contradiction, because q 3 . This shows that 𝒮 has the property M , where this particular 𝒮 has | J | = n n + 1 3 elements.

In conclusion, there are

n n + 1 3

elements in the largest subset 𝒮 of { 1 , 3 , 5 , 7 , , 2 n 1 } having property M .

Numerical verification (with ipython):

from itertools import combinations

def sequence3(j, n):
    l = []
    intervalle = [2 * k + 1 for k in range(n)]
    for A in combinations(intervalle, j):
        test = True
        for (i,j) in combinations(A, 2):
                if j % i == 0:
                    test = False
        if test:
            l.append(A)
    return(l)

[max([j for j in range(1,n) if sequence3(j,n)]) for n in range(2, 15)]
          [1, 2, 3, 3, 4, 5, 5, 6, 7, 7, 8, 9, 9]

[n - ( (n + 1) // 3) for n in range(2, 15)]
          [1, 2, 3, 3, 4, 5, 5, 6, 7, 7, 8, 9, 9]

sequence3(8, 12)
           [(3, 5, 7, 11, 13, 17, 19, 23),
           (5, 7, 9, 11, 13, 17, 19, 23),
           (5, 9, 11, 13, 17, 19, 21, 23),
           (7, 9, 11, 13, 15, 17, 19, 23),
           (9, 11, 13, 15, 17, 19, 21, 23)]

sequence3(7, 11)
          [(3, 5, 7, 11, 13, 17, 19),
           (5, 7, 9, 11, 13, 17, 19),
           (5, 9, 11, 13, 17, 19, 21),
           (7, 9, 11, 13, 15, 17, 19),
           (9, 11, 13, 15, 17, 19, 21)]

 sequence3(7, 10)
           [(3, 5, 7, 11, 13, 17, 19),
           (5, 7, 9, 11, 13, 17, 19),
           (7, 9, 11, 13, 15, 17, 19)]

This is in conformity with our results.

User profile picture
2025-03-24 11:30
Comments