Conjunto más pequeño no incluido en una colección de conjuntos

14

Dada como entrada un número entero n y un conjunto S de conjuntos de elementos de {1,...,n} , ¿cuál es la complejidad de encontrar un conjunto T de elementos de {1,...,n} tal que T tiene una cardinalidad mínima y T se incluye en ninguno de los conjuntos de S ?

a3nm
fuente
ambas respuestas hasta ahora mencionan los conjuntos de golpes. tenga en cuenta que los conjuntos de golpes también aparecen en hipergrafías, llamadas transversales , y conversión de CNF DNF de fórmulas booleanas monótonas.
vzn

Respuestas:

16

Sea , y sea F = { S 1 , S 2 , ... , S m } 2 [ n ] sea ​​la familia del conjunto de entrada. A menos que haya entendido mal la formulación de su problema, queremos encontrar un conjunto de tamaño mínimo T [ n ] tal que T S i para todo i = 1 , 2[n]={1,2,,n}F={S1,S2,,Sm}2[n]T[n]TSi .i=1,2,,m

Para responder a su pregunta, tenga en cuenta que si y solo si T ( [ n ] S i ) . Es decir, T tiene que intersecar el complemento de cada S i . Pero esto significa que su problema es, esencialmente, equivalente al problema del juego de golpes (considere golpear el juego con la entrada G = { [ n ] S i : i = 1 , 2 , ... , m } ):TSiT([n]Si)TSiG={[n]Si : i=1,2,,m}

Golpeando a Set. Dada una familia de conjuntos y un entero k , ¿existe un conjunto T [ n ] con | T | k y T S para todos S F ?F2[n]kT[n]|T|kTSSF

Se sabe que el conjunto de golpes es NP-completo y no se puede resolver, en términos generales, más rápido que en el tiempo menos que falle la hipótesis del tiempo exponencial fuerte.O(2n)

Janne H. Korhonen
fuente
Ah, pensé en golpear el set, pero no había visto la reducción. ¡Gracias!
a3nm
11

El problema es equivalente al Problema de la cubierta del conjunto / Problema del conjunto de golpes:

Dada una familia de subconjuntos de { 1 , ... , n } , encontrar un conjunto T { 1 , ... , n } de tamaño mínimo posible que se cruza cada conjunto en la familia F .F{1,,n}T{1,,n}F

Su problema es equivalente al problema del conjunto de golpes, ya que no se encuentra en ningún conjunto en S si y solo si se cruza con cada conjunto en F = { ˉ A : A S } . (Entonces, para resolver una instancia del problema del conjunto de golpes, es suficiente resolver la instancia de su problema con S = { ˉ A : A F } .)TSF={A¯:AS}S={A¯:AF}

El problema del conjunto de golpes es NP-hard [Karp '72]. Hay un algoritmo de aproximación para ello y una dureza correspondiente del resultado de aproximación [Lund, Yannakakis '94, Feige '98].O(logn)

Yury
fuente