是否足以对一个排序网络的多项式0-1序列进行排序?


16

0-1原则表示,如果排序网络适用于所有0-1序列,则适用于任何数字集。是否有一个使得如果网络对S中的每个0-1序列进行排序,那么它对每个0-1的序列进行排序,并且的大小是多项式?小号ÑS{0,1}nSn

例如,如果由其中存在最多的所有序列的试验1级的的(时间间隔),则在那里分选网络N和,如果所有成员不被N有序序列由N有序?2 小号S2S

答案:从答案及其注释中可以看出,答案是,对于每个未排序的字符串,都有一个对其他所有字符串进行排序的排序网络。以下是对此的简单证明。令字符串使得永远且。由于未排序,因此排序后应该为。将与每个进行比较。然后比较每对,使得和s i = 0 i < k s k = 1 s s k 0 k i s i = 1 i j i k j ks=s1snsi=0i<ksk=1ssk0kisi=1(i,j)ikjk多次。这使整个字符串保持排序状态,可能是除外,而则未对排序,而某些其他字符串的大于。现在比较对 DOWNTO,除了住的地方应该走。这将对除所有内容进行排序。 s 1 s s k i = n 1 s k s ssks1sski=n1skss

更新:我想知道如果将网络深度限制为会发生什么。O(logn)


似乎必须将排序网络的大小限制为小于的大小。否则,网络不能仅检查输入是否为的元素之一,如果是,则正确地操作,否则操作不正确?SS
usul 2015年

@usul:我认为分拣网络无法检查此类事情。无论如何,使用大小为多项式的排序网络是很自然的。n
domotorp'3

Answers:


8

好像没有 伊恩·帕伯里提到由Chung和Ravikumar,纸张在那里他们理应给排序的网络,每一个排序位串,但之一,并进一步推断,验证排序网络的问题,是一个递归结构 - ñ P完成。我无法立即找到原始论文,但可以肯定的是它符合我的直觉。coNP

编辑添加:查找这样的网络实际上很容易错过一个字符串。字符串错过将是。现在,您只需要一个电路对后n - 1位进行排序,然后对前n - 1位进行排序。该电路将对至少两个1 s进行排序,显然将对全零字符串进行排序,并对将从0开始的任何字符串进行排序。(1,0,,0)n1n110


可以将答案中的示例排序网络进行概括,以便对于任何给定的字符串,您都可以构建对该字符串进行错误排序的排序网络吗?您展示了如何对一个特定的字符串执行此操作,但是其他字符串呢?
DW

您绝对可以对任何权重为n 1的字符串执行此操作,但是我怀疑是否有可能遗漏单个任意位字符串。1n1
安德鲁·金

7
好的,所以我看不到您的答案显示答案为“否”。答案第二段中的结构并不表示对原始问题的否定答案,因为多项式中只有许多权重为n 1的字符串。您答案中的所有工作似乎都是由Ian Parberry论文中的参考文献完成的,但是Parberry论文中的句子相当模糊,如果不阅读Chung等人的论文,我就不会知道我们如何得出结论问题是“否”。1n1
DW

8
进一步侦查:“ 强不确定性图灵减少-一种证明难处理性的技术 ”(Chung和Ravikumar)将其列为引理2.1:给定任何未排序的字符串,存在一个多项式大小的排序网络,该网络可以正确地对除x以外的所有字符串进行排序。为证明起见,它指的是“关于分类和相关问题的测试集的大小”(Chung和Ravikumar),但是我似乎找不到后者的副本。这确实意味着该问题的答案是“否”。xx
DW

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.