Questo è un nome che ho inventato per questo problema. Non l'ho mai visto descritto da nessuna parte prima. Non sono stato ancora in grado di trovare una prova della completezza NP né un algoritmo temporale polinomiale per questo problema. Non è un problema di compiti a casa - è legato a un problema che ho riscontrato nel mio lavoro.
BIT PIÙ DISCRIMINANTI
ISTANZA: un insieme T contenente vettori di bit, in cui ogni vettore di bit è esattamente lungo N bit. Ogni elemento di T è unico, come ci si aspetterebbe da un set in matematica. Un numero intero K <N.
DOMANDA: Esiste un set B al massimo di posizioni di bit K (cioè numeri interi nell'intervallo [0, N-1]) in modo tale che quando rimuoviamo tutti i bit tranne quelli in B da ogni vettore in T, i rimanenti vettori più corti sono tutti ancora unico?
Esempio 1: per l'istanza N = 5, T = {00010, 11010, 01101, 00011}, K = 2, la risposta è sì, perché possiamo selezionare le posizioni dei bit B = {0,3}. Usando la convenzione che la posizione del bit 0 è la più a destra, e i numeri della posizione del bit aumentano da destra a sinistra, rimuovendo tutte le posizioni dei bit tranne quelle in B dai vettori in T lascia T '= {00, 10, 11, 01}, e quelli sono tutti unici.
Esempio 2: N = 5, T = {00000, 00001, 00010, 00100}, K = 2. La risposta è no, perché non importa quali posizioni a due bit selezioniamo, nessuno dei vettori a 2 bit sarà uguale a 11, quindi almeno due dei vettori a 2 bit saranno uguali tra loro.
Ovviamente possiamo risolvere questo problema elencando tutti i sottoinsiemi (N sceglie K) con dimensione K delle posizioni N bit e determinando quali soddisfano la condizione della domanda. Tuttavia, questo è esponenziale nella dimensione di input.