Нумерація підмножини


10

Зафіксуйте k≥5 . Для будь-якого досить великого ми хочемо позначити всі підмножини розміру точно додатними цілими числами від . Ми хотіли б, щоб ця маркування відповідала такій властивості: є безліч цілих чисел, st{ 1 .. n } n / k { 1 ... T }n{1..n}n/k{1...T}S

  1. Якщо підмножин розміру не перетинаються (тобто об'єднання цих множин утворюють все безліч ), то сума їх міток в .n / k { 1 .. n } Skn/k{1..n}S
  2. В іншому випадку, сума їх мітки не в .S

Чи існує та маркування, st ?T ⋅ | S | = O ( 1,99 п )k≥5T⋅|S|=O(1.99n)

Наприклад, для будь-якого ми можемо позначити підмножини наступним чином. , кожен підмножина має біт у своїй кількості: перший біт дорівнює 1, якщо підмножина містить 1 , другий біт дорівнює 1, якщо підмножина містить 2 і т. Д. Це легко зрозуміти, що S містить лише один елемент 2 ^ n-1 . Але тут T \ cdot | S | = \ Theta (2 ^ n) . Чи можемо ми зробити це краще?T = 2 n n 1kT=2nn11 2 S 2 n - 1 T ⋅ | S | = Θ ( 2 п )112S2n−1T⋅|S|=Θ(2n)


3
Чому 5, а не 3?
— domotorp

@domotorp: Ви знаєте, як це зробити для менших k ?
— Олексій Головнєв

Це дасть конструктивний доказ для питання про мільйон доларів! Не так швидко! :)
— Tayfun Pay

@Geekster: Не могли б ви пояснити?
— Олексій Головнєв

3
Чи можна скласти T = O (1,99 ^ n)? Здається, питання підказує, що це можливо, але мені незрозуміло, як це зробити.
— Tsuyoshi Ito

Відповіді:


7

Часткова відповідь полягає в тому, що навіть для такого маркування не існує.k

Для набору неперервних підмножин (розміром , нехай позначає суму їх значень).S 1 , … , S t n / k f ( S 1 , … , S t )tS1,…,Stn/kf(S1,…,St)

Претензія: якщо і тоді .S 1 ∪ … ∪ S t ≠ S ′ 1 ∪ … ∪ S ′ t f ( S 1 , … , S t ) ≠ f ( S ′ 1 , … , S ′ t )t<kS1∪…∪St≠S1′∪…∪St′f(S1,…,St)≠f(S1′,…,St′)

Щоб зрозуміти, чому твердження вірно, виберіть набір такий, що але потім один з цих нових наборів перетинає один із , тому заборонено бути таким же, як . ⋃ k i = 1 S i = [ n ]St+1,…,Sk⋃i=1kSi=[n] f ( S 1 , ... , S k ) f ( S ' 1 , ... , S ' t , S t + 1 , ... , S k )Si′f(S1,…,Sk)f(S1′,…,St′,St+1,…,Sk)

Висновок: .T>(ntn/k)/t

Встановлення дає нижню межу .T ≥ 2 ( nt=k/2T≥2(nn/2)/k=Ω(2n/n)

Зауважимо, що для непарного виходить нижня межа порядку . Вже при маємо тому показник прагне до досить швидко.( nkk=5H((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
— Олексій Головнєв

4

Це не відповідь, а лише пояснення, чому для k = 2 такого маркування не може існувати (я впевнений, що Алекс це вже знав, тому це лише записування для інших читачів, як я ...)

Для k = 2 маємо . Це тому, що є підмножина розміру n / 2. Якщо будь-які два отримують однакову мітку, наприклад, A і B, то або сума мітки A і її доповнення не в S, або сума мітки B і доповнення A в S. Це означає, що (для великих n).(nT≥(nn/2)≥1.99nT≥(n(nn/2)T≥(nn/2)

Для більшого ка подібний аргумент показує, що всі мітки повинні бути різними, але це дає лише більш слабку експоненціальну нижню межу. Тож уже k = 3 здається невідомим.


Так дякую! Буде чудово, якщо хтось зможе дати будь-яку інтуїцію, чому немає такого маркування для більшого , або чому важко знайти таке маркування. k
— Олексій Головнєв
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.