É o suficiente para classificar polinomialmente muitas seqüências 0-1 para uma rede de classificação?

16

O princípio 0-1 diz que, se uma rede de classificação funciona para todas as seqüências 0-1, funciona para qualquer conjunto de números. Existe um tal que se uma rede classifica cada sequência 0-1 de S, ela classifica cada sequência 0-1 e o tamanho de S é polinomial em n ?S{0 0,1 1}nSn

Por exemplo, se consiste em todas as seqüências em que existem no máximo 2 execuções (intervalos) de 1, existe uma rede de classificação N e uma sequência que não é ordenada por N se todos os membros de S são ordenados por N?S2S

Resposta: Como pode ser visto na resposta e nos comentários, a resposta é que, para cada string não classificada, existe uma rede de classificação que classifica todas as outras string. Uma prova simples para isso é o seguinte. Deixe a corda ser tal que é i = 0 para sempre i < k e s k = 1 . Como s não é classificado, após a classificação, s k deve ser 0 . Compare k com cada i para o qual s i =s=s1 1...snsEu=0 0Eu<ksk=1ssk0ki . Em seguida, comparar cada par ( i , j ) de tal forma que i k e j k muitas vezes. Isso deixa a string inteira classificada, exceto possivelmente para s k , que não é classificada para s , e para certas outras strings que possuem mais 1 's que s . Agora compare s k para i = n downto 1 exceto para o lugar onde s k deve ir no s . Isso vai classificar tudo, menos s .si=1(i,j)ikjksks1sski=n1skss

Atualização: Gostaria de saber o que acontece se restringirmos a profundidade da rede a .O(logn)

domotorp
fonte
Parece que isso seja possível é preciso restringir o tamanho da rede de triagem a ser menores do que o tamanho de . Caso contrário, a rede não poderia apenas verificar se a entrada é um dos elementos de S e agir corretamente se sim? Caso contrário, agir incorretamente? SS
usul
@usul: Eu não acho que uma rede de classificação possa verificar isso. De qualquer forma, é natural trabalhar com redes de classificação cujo tamanho é polinomial em . n
Domotorp #

Respostas:

8

Parece que não. Ian parberry faz referência a um artigo por Chung e Ravikumar, onde eles supostamente dar uma construção recursiva de uma rede de triagem que classifica cada bitstring mas um, e ainda deduzir que o problema de verificação de uma rede de triagem é - N P completa. Não consigo encontrar o documento original imediatamente, mas certamente corresponde à (minha) intuição.coNP

Editar para adicionar: na verdade, é muito fácil encontrar uma rede que perca exatamente uma string. A sequência a ser perdida será . Agora você só quer um circuito que classifique os últimos n - 1 bits e depois classifique os primeiros n - 1 bits. Este circuito irá classificar qualquer coisa com pelo menos dois 1 s, irá, obviamente, tipo todo-zero, corda, e irá classificar qualquer cadeia que começa com 0 .(1,0,,0)n1n-1 11 10 0

Andrew D. King
fonte
O exemplo de rede de classificação em sua resposta pode ser generalizado, para que, para qualquer cadeia de caracteres, você possa construir uma rede de classificação que classifique incorretamente essa cadeia? Você mostra como fazer isso para uma sequência específica, mas e outras seqüências?
DW
Definitivamente, você pode fazer isso para qualquer sequência de peso ou n - 1 , mas duvido que seja possível perder uma única sequência de bits arbitrária. 1 1n-1 1
Andrew D. Rei
7
OK, então não estou vendo como sua resposta mostra que a resposta é "Não". A construção no segundo parágrafo da sua resposta não implica uma resposta negativa à pergunta original, pois existem apenas polinomialmente muitas seqüências de peso ou n - 1 . Parece que todo o trabalho em sua resposta está sendo realizado pela referência no artigo de Ian Parberry, mas essa frase no artigo de Parberry é bastante vaga e sem ler o artigo de Chung et al. Não estou vendo como podemos concluir que a resposta para a pergunta é "não". 1 1n-1 1
DW
8
Mais detalhes: " Forte redução não determinística de Turing - uma técnica para provar a intratabilidade " (Chung & Ravikumar) lista o seguinte como Lema 2.1: dada qualquer string não classificada , existe uma rede de classificação de tamanho polinomial que classifica todas as strings corretamente, exceto x . Para a prova, refere-se a "Sobre o tamanho dos conjuntos de testes para classificação e problemas relacionados" (Chung & Ravikumar), mas não consigo encontrar uma cópia deste último artigo. Isso de fato implica que a resposta a essa pergunta é "Não". xx
DW
6
Papel por Chung & Ravikumar
Kristoffer Arnsfelt Hansen