子集编号


10

修复。对于足够大的,我们想用正整数标记大小为的的所有子集。我们希望该标签满足以下属性:有一组整数,stk≥5n{1..n}n/k{1...T}S

  1. 如果大小为个子集不相交(即这些集合的并集形成所有集合),则它们的标签之和在。kn/k{1..n}S
  2. 否则,它们的标签之和不在。S

是否存在和标签st?k≥5T⋅|S|=O(1.99n)

例如,对于任何我们可以按以下方式标记子集。 ,每个子集具有在他们的比特数:第一比特等于且仅当子集包含,第二位等于且仅当子集包含等可以很容易地看到,仅包含一个元素。但是这里。我们可以做得更好吗?kT=2nn1112S2n−1T⋅|S|=Θ(2n)


3
为什么5而不是3?
— domotorp 2012年

@domotorp:您知道如何针对较小的吗?k
— Alex Golovnev

这将为百万美元的问题提供建设性的证明!没那么快!:)
— Tayfun Pay

@Geekster:能请你解释一下吗?
— Alex Golovnev

3
是否可以使T = O(1.99 ^ n)?这个问题似乎表明这是可能的,但是我不清楚如何做到这一点。
— 伊藤刚(Tsuyoshi Ito)

Answers:


7

部分答案是,即使是,也不存在这样的标记。k

对于一组不相交的子集(大小为,令表示它们的值之和)。S 1,… ,S t n / k f (S 1,… ,S t)tS1,…,Stn/kf(S1,…,St)

要求:如果且则。小号1 ∪ ... ∪ 小号吨 ≠ 小号' 1 ∪ ... ∪ 小号' 吨 ˚F (š 1,... ,小号吨)≠ ˚F (小号' 1,... ,小号' 吨)t<kS1∪…∪St≠S1′∪…∪St′f(S1,…,St)≠f(S1′,…,St′)

要了解该主张为何成立,请选择一个集合,使,然后再选择其中一个新集合与的一个相交,因此不允许与。 ⋃ ķ 我= 1 š 我 = [ Ñ ] 小号' 我 ˚F (小号1,... ,小号ķ)˚F (小号' 1,... ,小号' 吨,小号吨+ 1,… ,S k)St+1,…,Sk⋃i=1kSi=[n]Si′f(S1,…,Sk)f(S1′,…,St′,St+1,…,Sk)

结论:。T>(ntn/k)/t

设置给出的下限。Ť ≥ 2 ( Ñt=k/2T≥2(nn/2)/k=Ω(2n/n)

请注意,对于奇数一个阶的下界为。对于我们已有因此指数趋于迅速变为。( Ñkķ=5ħ((1-1/k)/2)=H(0.4)≈(nn(1−1/k)/2)≈2H((1−1/k)/2)n=2n(1−O(1/k2))k=51H((1−1/k)/2)=H(0.4)≈0.971

我想对于奇数也不存在任何解决方案,但是我不确定如何证明它。k


谢谢,非常漂亮的解决方案!但是我不确定是否可以将其推广为奇数。k
— Alex Golovnev

4

这不是一个答案,只是一个解释,为什么对于k = 2不会存在这样的标记(我相信这已经为Alex所了解,所以这只是像我这样的其他读者的文章……)

对于k = 2,我们有。这是因为存在个子集,大小为n / 2。如果任何两个获得相同的标签,例如A和B,则A的标签和其补码之和不在S中,或者B的标签和A的补码之和在S中。这意味着(对于大n)。(ÑT≥(nn/2)≥1.99nŤ≥(Ñ(nn/2)T≥(nn/2)

对于更大的ka,类似的论点表明所有标签都必须不同,但这仅给出了较弱的指数下界。因此,似乎k = 3似乎是未知的。


是的,谢谢!如果有人可以给出任何直觉,为什么对于更大的没有这样的标记,或者为什么很难找到这样的标记,那将是很好的。k
— 亚历克斯·戈洛夫涅夫
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.