Dado como entrada um número inteiro e um conjunto de conjuntos de elementos de , qual é a complexidade de encontrar um conjunto de elementos de tal que tem cardinalidade mínima e está incluído em nenhum dos conjuntos de ?
Dado como entrada um número inteiro e um conjunto de conjuntos de elementos de , qual é a complexidade de encontrar um conjunto de elementos de tal que tem cardinalidade mínima e está incluído em nenhum dos conjuntos de ?
Respostas:
Seja e seja a entrada definir família. A menos que eu tenha entendido mal a formulação do seu problema, queremos encontrar um conjunto de tamanho mínimo tal que para todos .F = { S 1 , S 2 , ... , S m } ⊆ 2 [ n ] T ⊆ [ n ] T ⊈ S i i = 1 , 2 , ... , m
Para responder sua pergunta, observe que se e somente se . Ou seja, tem que cruzar o complemento de cada . Mas isso significa que seu problema é, essencialmente, equivalente ao problema do conjunto de ocorrências (considere acertar com a entrada ):
Batendo Set. Dada uma família de conjuntos e um número inteiro , existe um conjunto com e para todos os ?
Sabe-se que o conjunto de batidas é NP-completo e não pode ser, de maneira geral, resolvido mais rapidamente que no tempo , a menos que a Hipótese de Tempo Exponencial Forte falhe.
O problema é equivalente ao Problema na Tampa do Conjunto / Problema no Conjunto de Bater:
Dada uma família de subconjuntos de , encontre um conjunto de tamanho mínimo possível que cruze todos os conjuntos na família .
Seu problema é equivalente ao Problema do Conjunto de Acertos, pois não está em nenhum conjunto em se, e somente se, cruza todos os conjuntos em . (Portanto, para resolver uma instância do Problema do Conjunto de Acertos, basta resolver a instância do seu problema com .)
O problema do Hitting Set é NP-difícil [Karp '72]. Existe um algoritmo de aproximação para ele e uma dureza correspondente do resultado da aproximação [Lund, Yannakakis '94, Feige '98].