Наименьший набор не входит в набор наборов


14

Принимая во внимание в качестве входных данных целое число и множество S наборов элементов { 1 , . , , , П } , что является сложность нахождения множество Т элементов { 1 , . , , , n } такой, что T имеет минимальную мощность и T не входит ни в один из множеств S ?nS{1,...,n}T{1,...,n}TTS


оба ответа до сих пор упоминают наборы ударов. обратите внимание , что поражающие наборы также показывают в гиперграфах, называется трансверсалъ и CNF преобразование DNF монотонных булевых формул. ↔
— vzn

Ответы:


16

Пусть , и пусть F = { S 1 , S 2 , … , S m } ⊆ 2 [ n ] - семейство входных множеств. Если я не понял вашу формулировку проблемы, мы хотим найти множество минимальных размеров T ⊆ [ n ], такое, что T ⊈ S i для всех i = 1 , 2[n]={1,2,…,n}F={S1,S2,…,Sm}⊆2[n]T⊆[n]T⊈Si .i=1,2,…,m

Чтобы ответить на ваш вопрос, обратите внимание, что тогда и только тогда, когда T ∩ ( [ n ] ∖ S i ) ≠ ∅ . То есть T должен пересекать дополнение каждого S i . Но это означает, что ваша задача, по сути, эквивалентна проблеме набора множеств (рассмотрим набор множеств с входом G = { [ n ] ∖ S i : i = 1 , 2 , … , m } ):T⊈SiT∩([n]∖Si)≠∅TSiграммзнак равно{[N]∖Sя : язнак равно1,2,...,м}

Удар Set. Для заданного семейства и целого числа k существует ли множество T ⊆ [ n ] с | T | ≤ k и T ∩ S ≠ ∅ для всех S ∈ F ?F⊆2[N]КT⊆[N]|T|≤КT∩S≠∅S∈F

Ударная совокупность, как известно, является NP-полной и не может быть, в общем-то, решена быстрее, чем за время если гипотеза сильного экспоненциального времени не удастся.О(2N)


Ах, я думал о том, чтобы поразить сет, но я не видел сокращения. Благодарность!
— a3nm

11

Эта проблема эквивалентна проблеме «Задать крышку» / «Задать проблему с набором»:

Для семейства подмножеств { 1 , ... , п } , найдется множество T ⊂ { 1 , ... , п } минимального возможного размера , который пересекает каждый набор в семье F .F{1,...,N}T⊂{1,...,N}F

Ваша задача эквивалентна задаче об ударе по множеству, поскольку не лежит ни в одном множестве в S тогда и только тогда, когда она пересекает каждое множество в F = { ˉ A : A ∈ S } . (Таким образом, чтобы решить экземпляр задачи о множестве ударов, достаточно решить экземпляр вашей задачи с помощью S = { ˉ A : A ∈ F } .)TSFзнак равно{A¯:A∈S}Sзнак равно{A¯:A∈F}

Задача «Удар по набору» NP-сложна [Карп 72]. Для этого существует алгоритм аппроксимации и соответствующий результат приближения твердости [Lund, Yannakakis '94, Feige '98].О(журнал⁡N)

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.