¿Cuál es la complejidad de decidir si un circuito con bits de entrada y bits de salida calcula una permutación de ? en otras palabras, si cada cadena de bits en es una salida del circuito para alguna entrada? Parece un problema que ha sido estudiado, pero no puedo encontrar ninguna referencia. nn{0,1 } n {0,1 } n
27
Respuestas:
Dureza
Después de su comentario sobre la pregunta, llamaremos a un circuito donde cada bit de salida depende de a lo sumo k bits de entrada como un " circuito NC 0 k ". Usando este término, su problema es completo en caso de circuitos NC 0 5 . Es decir, el siguiente problema es coNP-complete.
Instancia : Un circuito booleano C con n bits de entrada y n bits de salida donde cada bit de salida depende de, como máximo, cinco bits de entrada.
Pregunta : ¿El mapeo de {0,1} n a sí mismo es calculado por C bijective?
Como comentó Kaveh, está claramente en coNP, incluso sin el límite en el número de bits de entrada de los que depende cada bit de salida. Para probar la dureza de coNP, reduciremos 3SAT al complemento del problema actual. La idea clave de la reducción es la misma que la utilizada en el artículo [Dur94] de Durand, que mencioné en un comentario sobre la pregunta, pero la reducción total es mucho más simple en nuestro caso.
Dada una fórmula 3CNF φ con n variables y m cláusulas, construimos un circuito booleano C con ( n + m bits de entrada) y ( n + m bits de salida) como sigue. Rotulamos los bits de entrada como x 1 , ..., x n , y 1 , ..., y m , y los bits de salida como x ′ 1 , ..., x ′ n , z 1 , ..., z m . Consideramos que los bits de entrada x1 , ..., x n especifica una asignación de verdad a las n variables en φ .
Tenga en cuenta que cada bit de salida depende de como máximo cinco bits de entrada. Omito la prueba de la corrección de la reducción, pero la idea clave (que tomé prestada de [Dur94]) es que si φ es satisfactoria y los bits de entrada x 1 , ..., x n se establecen en una asignación satisfactoria de φ , entonces los m bits de salida z 1 , ..., z m están obligados a tener la paridad par y, por lo tanto, el circuito no puede ser una permutación. Por otro lado, si los bits de entrada x 1 , ..., x n se configuran en una asignación no satisfactoria de φ , entonces los bits de salida z1 , ..., z m se puede establecer en cualquier cosa; debido a esto, si φ es insatisfactorio, entonces el circuito es una permutación.
Trazabilidad
En el lado manejable, su problema está en P en el caso de los circuitos NC 0 2 . Esto se muestra a continuación. En general, cada bit de salida en un circuito booleano para una permutación está equilibrado ; es decir, exactamente la mitad de las cadenas de entrada establecen el bit de salida en 1. Sin embargo, cada función booleana equilibrada de {0,1} 2 a {0,1} es afín ; es decir, una copia de un solo bit de entrada, el XOR de los dos bits de entrada o la negación de ellos. Por lo tanto, primero podemos verificar que cada bit de salida esté equilibrado, y luego verificar la biyectividad mediante la eliminación gaussiana.
No conozco la complejidad en el caso de los circuitos NC 0 3 o en el caso de los circuitos NC 0 4 .
Referencias
[Dur94] Bruno Durand. Inversión de autómatas celulares 2D: algunos resultados de complejidad. Informática teórica , 134 (2): 387–401, noviembre de 1994. DOI: 10.1016 / 0304-3975 (94) 90244-5 .
fuente