El principio 0-1 dice que si una red de clasificación funciona para todas las secuencias 0-1, entonces funciona para cualquier conjunto de números. ¿Hay una tal que si una red ordena cada secuencia 0-1 de S, entonces ordena cada secuencia 0-1 y el tamaño de S es polinomial en n ?
Por ejemplo, si consiste en todas las secuencias donde hay como máximo 2 carreras (intervalos) de 1, entonces ¿hay una red de clasificación N y una secuencia que no está ordenada por N si todos los miembros de S están ordenados por N?
Respuesta: Como se puede ver en la respuesta y en los comentarios, la respuesta es que para cada cadena sin clasificar hay una red de clasificación que clasifica todas las demás cadenas. Una prueba simple de esto es lo siguiente. Deje que la cadena sea tal que s i = 0 para siempre y . Como no está ordenado, después de ordenar debería ser . Compare con cada para la cual . Luego compare cada par modo ques k = 1 s s k 0 k i s i = 1 ( i , j ) i ≠ k j ≠ k s k s 1y muchas veces. Esto deja toda la cadena ordenada, excepto posiblemente por , que no está ordenada por , y por ciertas otras cadenas que tienen más 's que s . Ahora compare s k para i = n downto 1 excepto el lugar donde s k debería ir en s . Esto ordenará todo menos s .
Actualización: Me pregunto qué sucede si restringimos la profundidad de la red a .
fuente
Respuestas:
Parece que no. Ian Parberry hace referencia a un artículo de Chung y Ravikumar, donde supuestamente dan una construcción recursiva de una red de clasificación que ordena cada cadena de bits pero uno, y además deducir que el problema de la verificación de una red de clasificación es - N P completo. No puedo encontrar el documento original de inmediato, pero ciertamente coincide con (mi) intuición.co NP
Editar para agregar: en realidad, es muy fácil encontrar una red que pierda exactamente una cadena. La cadena que se perderá será . Ahora solo desea un circuito que clasifique los últimos n - 1 bits, luego clasifique los primeros n - 1 bits. Este circuito clasificará cualquier cosa con al menos dos 1 s, obviamente clasificará la cadena de todo cero y clasificará cualquier cadena que comience con 0 .(1,0,…,0) n−1 n−1 1 0
fuente