¿Se ha completado el problema de "Bits discriminadores de Fewest"?


14

Ese es un nombre que he inventado para este problema. No lo he visto descrito en ninguna parte antes. Todavía no he podido encontrar una prueba de integridad de NP ni un algoritmo de tiempo polinómico para este problema. No es un problema de tarea, está relacionado con un problema que he encontrado en mi trabajo.

POCOS PUNTOS DISCRIMINADORES

INSTANCIA: Un conjunto T que contiene vectores de bits, donde cada vector de bits tiene exactamente N bits de longitud. Cada elemento de T es único, como cabría esperar de un conjunto de matemáticas. Un entero K <N.

PREGUNTA: ¿Existe un conjunto B de a lo sumo K posiciones de bits (es decir, enteros en el rango [0, N-1]) de modo que cuando eliminamos todos los bits excepto los de B de cada vector en T, los vectores más cortos restantes son todos sigue siendo único?

Ejemplo 1: para la instancia N = 5, T = {00010, 11010, 01101, 00011}, K = 2, la respuesta es sí, porque podemos seleccionar las posiciones de bit B = {0,3}. Usando la convención de que la posición de bit 0 es la más a la derecha, y los números de posición de bit aumentan de derecha a izquierda, eliminando todas las posiciones de bit excepto las de B de los vectores en T deja T '= {00, 10, 11, 01}, y esos son todos únicos.

Ejemplo 2: N = 5, T = {00000, 00001, 00010, 00100}, K = 2. La respuesta es no, porque no importa qué posiciones de dos bits seleccionamos, ninguno de los vectores de 2 bits será igual a 11, por lo que al menos dos de los vectores de 2 bits serán iguales entre sí.

Por supuesto, podemos resolver este problema enumerando todos los subconjuntos (N elija K) con el tamaño K de las posiciones de N bits, y determinando cuáles satisfacen la condición de la pregunta. Sin embargo, eso es exponencial en el tamaño de entrada.


1
Relacionado: teorema de Bondy .
Aryabhata

Respuestas:


18

Este problema es NP-completo. Una prueba basada en la reducción de 3-SAT es la siguiente:

Considere una instancia de 3-SAT con variables y m cláusulas. Construiremos 2 n + 2 m vectores de bits ("filas") de longitud 2 n + log 2 ( n + m ) , de modo que el número más pequeño de bits discriminantes sea n + log 2 ( n + m ) si la instancia original de 3-SAT es satisfactoria.nm2n+2m2n+log2(n+m)n+log2(n+m)

Los primeros bits de corresponderán a los literales { x 1 , ¬ x 1 , x 2 , ¬ x 2 , . . . , x n , ¬ x n } . Con respecto a estos bits, las primeras filas de 2 m vendrán en pares, la primera de las cuales tendrá un 1 para cada literal incluido en la cláusula correspondiente, y la segunda consistirá completamente en 0 's. Los 2 n restantes2n{x1,¬x1,x2,¬x2,...,xn,¬xn}2m102nlas filas también vendrán en pares, el primero de los cuales tendrá 's para el literal correspondiente y su negación, y el segundo consistirá completamente en 0 ' s. Finalmente, los últimos log 2 ( n + m ) bits se usarán para "firmar" cada par de filas con su índice, de 0 a n + m - 1 , escrito en binario.10log2(n+m)0n+m1

n+mlog2(n+m)n+log2(n+m)xi¬xiin+log2(n+m)2n+2mxi¬xiin


¡Gracias! Inteligente y fácil de ver que conserva respuestas afirmativas (OK, tuve que pensar en ello durante al menos 20 minutos antes de que pudiera decir eso.)
andy_fingerhut

14

Aunque ya se proporciona una prueba de integridad de NP , podría valer la pena señalar que este problema es equivalente a un problema de NP completo conocido llamado problema de conjunto de prueba mínimo ([SP6] en Garey y Johnson , también llamado colección de prueba mínima problema ): simplemente intercambie el papel de los conjuntos y el papel de las posiciones.


2
ah Excelente punto.
Suresh Venkat

@ Tsuyoshi Ito: el problema de recolección de prueba mínima es NP-completo. Tengo curiosidad sobre el conjunto de prueba mínimo máximo , ¿cuál es la complejidad? Quiero decir, ¿cuál es la mayor cardinalidad de cualquier colección mínima de pruebas?
Peng Zhang
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.