dimensione del circuito più piccola utilizzando porte XOR


15

Supponiamo di avere un insieme di n variabili booleane x_1, ..., x_n e un insieme di funzioni m y_1 ... y_m dove ogni y_i è lo XOR di un sottoinsieme (dato) di queste variabili. L'obiettivo è calcolare il numero minimo di operazioni XOR che è necessario eseguire per calcolare tutte queste funzioni y_1 ... y_m.

Si noti che il risultato di un'operazione XOR, ad esempio x_1 XOR x_2 potrebbe essere utilizzato nel calcolo di più y_j ma viene conteggiato come uno. Inoltre, tieni presente che potrebbe essere utile calcolare XOR di una raccolta molto più ampia di x_i (più grande di qualsiasi funzione y_i, ad es. Calcolare XOR di tutti gli x_i) al fine di calcolare y_i in modo più efficiente,

Equivalentemente, supponiamo di avere una matrice binaria A, un vettore X e l'obiettivo è calcolare il vettore Y in modo tale che AX = Y abbia tutte le operazioni eseguite in GF (2) usando il numero minimo di operazioni.

Anche quando ogni riga di A ha esattamente k una (diciamo k = 3) è interessante. Qualcuno sa sulla complessità (durezza di approssimazione) per questa domanda?

Mohammad Salavatiopur

Risposte:


18

Questo è NP-difficile. Vedi: Joan Boyar, Philip Matthews, René Peralta. Tecniche di minimizzazione della logica con applicazioni alla crittografia. http://link.springer.com/article/10.1007/s00145-012-9124-7

La riduzione è da Vertex Cover ed è molto bella.

Dato un grafico con m = | E | , definisci una matrice m × ( n + 1 ) A come: A [ i , j ] = 1 se j < n + 1 e ( i , j ) E , e A [ i , n({1,,n},E)m=|E|m×(n+1)UNUN[io,j]=1j<n+1(io,j)E . In altre parole, dato n + 1 variabili x 1 , ... , x n + 1 vogliamo calcolare il m lineari forme x i + x j + x n + 1 per tutti ( i , j ) E .UN[io,n+1]=1n+1X1,...,Xn+1mXio+Xj+Xn+1(io,j)E

Un piccolo pensiero mostra che esiste un circuito XOR per con porte di fan-in due che calcolano la trasformazione lineare A con solo porte m + k , dove k è la copertura ottimale del vertice per il grafico. (Primo calcolare x i ' + x n + 1 per tutti i ' nella copertura dei vertici, utilizzando k operazioni. Le forme lineari sono poi tutti calcolabili in m operazioni più.) Si scopre che questo è anche un circuito dimensione minima!UNUNm+KKXio'+Xn+1io'Km

La prova che la riduzione è corretta non è così bella. Mi piacerebbe vedere una breve prova che questa riduzione è corretta.


Grazie Ryan. Documento davvero rilevante. Ho pensato se il problema potesse essere difficile quanto la copertura dei vertici negli ipergrafi almeno per il caso in cui non si debbano generare somme XOR più grandi (ciò che viene definito senza cancellazione in questo documento penso).
Mohammad R. Salavatipour,

3
Per il caso privo di annullamento, la durezza NP è rilevata in Garey-Johnson con il nome un po 'oscuro "Ensemble Computation" (Problema PO9, in A11.1). La riduzione è effettivamente uguale a quella descritta da Ryan, vedere la Sezione 3.2.2 in GJ.
Janne H. Korhonen,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.