Czy wystarczy sortować wielomianowo wiele sekwencji 0-1 dla sieci sortującej?


16

Zasada 0-1 mówi, że jeśli sieć sortująca działa dla wszystkich sekwencji 0-1, to działa dla dowolnego zestawu liczb. Czy istnieje taki, że jeśli sieć sortuje każdą sekwencję 0-1 od S, to sortuje każdą sekwencję 0-1, a wielkość S jest wielomianowa w n ?S{0,1}nSn

Na przykład, jeśli S składa się ze wszystkich sekwencji, w których występują co najwyżej przebiegi (przedziały) 1, to czy istnieje sieć sortująca N i sekwencja, która nie jest uporządkowana przez N, jeśli wszyscy członkowie S są uporządkowani przez N?2S

Odpowiedź: Jak widać z odpowiedzi i komentarzy do niej, odpowiedź jest taka, że ​​dla każdego nieposortowanego ciągu istnieje sieć sortująca, która sortuje każdy inny ciąg. Prosty dowód na to jest następujący. Niech ciąg będzie taki, że s i = 0 na zawsze i < k i s k = 1 . Ponieważ s jest nieposortowane, po sortowaniu s k powinno wynosić 0 . Porównaj k z każdym i dla którego s i =s=s1snsi=0i<ksk=1ssk0ki . Następnie porównaj każdą parę ( i , jsi=1 tak, że i k i j k wiele razy. Pozostawia to cały ciąg posortowane, z wyjątkiem być może dla s k , która jest dla nieposortowanego s , a dla niektórych innych ciągów, które mają więcej 1 „s niż s . Teraz porównaj s k dla i = n downto 1, z wyjątkiem miejsca, w którym s k powinno iść w s . To posortuje wszystko oprócz s .(i,j)ikjksks1sski=n1skss

Aktualizacja: Zastanawiam się, co się stanie, jeśli ograniczymy głębokość sieci do .O(logn)


Wydaje się, że jest to możliwe, należy ograniczyć wielkość sieci sortowania być mniejszy niż rozmiar . W przeciwnym razie, czy sieć nie mogłaby po prostu sprawdzić, czy dane wejściowe są jednym z elementów S i działać poprawnie, jeśli tak, w przeciwnym razie działać nieprawidłowo? SS
usul

@usul: Nie sądzę, żeby sieć sortująca mogła sprawdzić coś takiego. W każdym razie naturalną rzeczą jest praca z sieciami sortującymi, których rozmiar jest wielomianowy w . n
domotorp

Odpowiedzi:


8

Wydaje się, że nie. Ian Parberry odnosi się do pracy przez Chung Ravikumar, gdzie podobno daje rekurencyjnego budowę sieci sortowania sortuje każdy łańcuch bitów, lecz jeden, i dalej wywnioskować, że problem sprawdzania sortowania sieci jest - N P zakończona. Nie mogę od razu znaleźć oryginalnego papieru, ale z pewnością pasuje on do (mojej) intuicji.coNP

Edytuj, aby dodać: W rzeczywistości bardzo łatwo jest znaleźć taką sieć, w której brakuje dokładnie jednego ciągu. Ciąg do pominięcia to . Teraz potrzebujesz obwodu, który sortuje ostatnie n - 1 bity, a następnie sortuje pierwsze n - 1 bity. Ten obwód posortuje wszystko z co najmniej dwoma 1 s, oczywiście posortuje ciąg zerowy i posortuje dowolny ciąg zaczynający się od 0 .(1,0,,0)n1n110


Czy przykładową sieć sortującą w odpowiedzi można uogólnić, tak aby dla dowolnego ciągu można było zbudować sieć sortującą, która źle sortuje ten ciąg? Pokazujesz, jak to zrobić dla jednego określonego ciągu, ale co z innymi ciągami?
DW

Z pewnością możesz to zrobić dla dowolnego ciągu o masie lub n - 1 , ale wątpię, czy można pominąć pojedynczy dowolny ciąg bitów. 1n1
Andrew D. King

7
OK, więc nie widzę, jak twoja odpowiedź pokazuje, że odpowiedź brzmi „nie”. Konstrukcja w drugim akapicie twojej odpowiedzi nie oznacza negatywnej odpowiedzi na pierwotne pytanie, ponieważ jest tylko wielomianowo wiele ciągów o masie lub n - 1 . Wydaje się, że cała praca w twojej odpowiedzi jest wykonywana przez odniesienie w pracy Iana Parberry, ale to zdanie w pracy Parberry jest raczej niejasne i bez przeczytania pracy Chunga i in. Nie widzę, jak możemy dojść do wniosku, że odpowiedź na pytanie brzmi „nie”. 1n1
DW

8
Bardziej utożsamianie: „ Silna niedeterministyczna redukcja Turinga - technika dowodzenia nietrwałości ” (Chung i Ravikumar) wymienia następujące elementy jako Lemma 2.1: biorąc pod uwagę dowolny nieposortowany ciąg , istnieje sieć sortująca o wielomianowym rozmiarze, która poprawnie sortuje wszystkie ciągi oprócz x . Jako dowód odnosi się do „O rozmiarze zestawów testowych do sortowania i powiązanych problemów” (Chung i Ravikumar), ale nie mogę znaleźć kopii tego ostatniego artykułu. Oznaczałoby to, że odpowiedź na to pytanie brzmi „nie”. xx
DW

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.