Circuitos aritméticos com apenas uma porta de limiar


21

Quando restrita a 00 - 11 entradas, cada { + , × }{+,×} -circuit F ( x 1 , ... , x n )F(x1,,xn) calcula uma função F : { 0 , 1 } nNF:{0,1}nN . Para obter uma função booleana , podemos apenas adicionar um gate limiar fanin-1 como o gate de saída. Na entrada a { 0 , 1 } na{0,1}n , o limite resultante { + ,× }{+,×} - ocircuitoentão gera 11 se F ( a ) tF(a)t , e gera 00 se F ( a ) t - 1F(a)t1 ; o limite t = t nt=tn pode ser qualquer número inteiro positivo, que pode depender de n,n mas não dos valores de entrada. O circuito resultante calcula algumafunção booleana(monótona) F : { 0 , 1 } n{ 0 ,1 }F:{0,1}n{0,1} .

Pergunta: Os limiares { + , × }{+,×} -circuitos podem ser eficientemente simulados por { , }{,} -circuitos?

Em "eficientemente", quero dizer "com no máximo um aumento polinomial de tamanho". A resposta é clara "sim" para o limiar t = 1t=1 : basta substituir ++ por , ×× por e remova a última porta do limiar. Ou seja, { , }{,} -circuitos são, de fato, limiar- 1 1 { + , × }{+,×} -circuitos. Mas e quanto aos limites maiores, digamos, t = 2t=2 ?

Pode-se definir análogos aritméticos # C#C da maioria das classes de circuitos booleanos CC , usando + em+ vez de OR, × em× vez de AND e 1 - x i em1xi vez de ˉ x ix¯i . Por exemplo, os circuitos # A C 0#AC0 são { + , × }{+,×} -circuitos de profundidade constante com fanin ilimitado ++ e ×× portas e entradas x ixi e 1 - x i1xi . Agrawal, Allender e Datta mostraram esse limite # A C 0#AC0 = T C 0TC0 . (Lembre-se de que A C 0 emAC0 si é um subconjunto adequado de T C 0TC0 ; tome, digamos, a função Maioria.) Em outras palavras, os circuitos de limiar de profundidade constante podem ser eficientemente simulados por profundidade constante { + , - , × }{+,,×} - circuitos, com apenas um portão de limiar único! Note, no entanto, que minha pergunta é sobre circuitos monótonos (sem menos " - " como portões e até mesmo 1 -x i como entradas). Um (último) portão de limiar também pode ser tão poderoso? Como não conheço essas coisas, qualquer sugestão relacionada é bem-vinda. 1xi

NB Há ainda outro resultado interessante devido ao Arnold Rosenbloom: { + , × } -circuitos com apenas uma função monotônica g : N 2{ 0 , 1 }, pois o gate de saída pode calcular cada função de fatia com O ( n ) gates. Uma função de fatia é uma função booleana monótona que, para alguns k fixos , gera 0 (resp. 1 ) em todas as entradas com menos (resp., Mais) que k{+,×}g:N2{0,1}O(n)k01kuns. Por outro lado, a contagem fácil mostra que a maioria das funções de fatia exige circuitos gerais { , , ¬ } de tamanho exponencial. Assim, uma porta de saída adicional "inocente" pode tornar onipotentes os circuitos monotônicos! Minha pergunta pergunta se isso também pode acontecer quando g : N{ 0 , 1 } é um gate limiar fanin- 1 . {,,¬}g:N{0,1}1


ATUALIZAÇÃO (adicionada em 11/03/2014 ): Emil Jeřábek mostrou (por meio de uma construção incrivelmente simples, veja a resposta abaixo) que a resposta é "sim", desde que t n c para uma constante c . Portanto, a questão permanece em aberto apenas para limites super polinomiais (em n ). tnccn

Geralmente, em aplicativos, apenas limiares grandes funcionam: geralmente precisamos de limiares no formato 2 n ϵ para ϵ > 0 . Por exemplo, se F : { 0 , 1 } nN conta o número de s - t caminhos do gráfico especificado pelo 0 - uma entrada, em seguida, para t = m m 2 com m n 1 / 3 , o threshold- t versão de F resolve2nϵϵ>0F:{0,1}nN st01t=mm2mn1/3tF a existência de um problema Hamiltoniano s - t path em gráficos m -vertex (ver, por exemplo, aqui ). stm

(Adicionado em 11.11.2014): Como Emil respondeu grande parte da minha pergunta, e como o caso de limites exponenciais não está à vista, agora aceito a resposta (muito legal) de Emil.



Espere ... tamanho exponencial? Eu acho que você pode implementar uma função de fatia no tamanho polinomial com portas booleanas, é apenas uma fórmula (que não pode reutilizar resultados intermediários mais de uma vez) que precisa ser tamanho exponencial.
Zsbán Ambrus 2/11

@ Zsbán Ambrus: Existem no máximo S a S circuitos de tamanho S , mas pelo menos 2 2 b n funções k- slice distintas já para k = n / 2 ; a, b constantes positivas. SaSS22bnkk=n/2
Stasys

O limiar 2 e, de maneira mais geral, os limites delimitados por 2 n c , podem ser eficientemente simulados fazendo o cálculo na semirreferência ( { 0 , , t } , min { x + y , t } , min { x y , t } ) . 2nc({0,,t},min{x+y,t},min{xy,t})
Emil Jeřábek apoia Monica

2
Você obtém , circuitos diretamente. Substitua cada nó c com t + 1 nós c 0 , ... , c t , onde c i calcula o booleana predicado c i . (Você não precisa de c 0 , pois calcula a constante 1 , mas simplifica a expressão abaixo.) Nesta representação, + e podem ser simulados por { , } circuitos do tamanho O ( t,ct+1c0,,ctcicic01+{,}2 ) : por exemplo, se c = um + b , então c i = j + k i ( um jb k ) . O(t2)c=a+b
Emil Jeřábek apoia Monica

11
@Emil Jeřábek: Muito bom! Eu agora adicionei uma observação sobre isso. Na verdade, talvez valha a pena colocar esse comentário como resposta: o caso do limiar polinomial também não ficou imediatamente claro (pelo menos para mim).
Stasys

Respostas:


16

The answer is “yes” if t=nO(1). More generally, a threshold {+,}-circuit of size s with threshold t can be simulated by a {,}-circuit of size O(t2s).

First, observe that it is enough to evaluate the circuit in {0,,t} with truncated addition and multiplication: in particular, if a,at, then a+b,a+bt, and either ab,abt as well, or ab=ab(=0).

With this in mind, we can simulate the circuit with a Boolean monotone circuit by replacing each node c with nodes c0,,ct, where ci is intended to compute the predicate ci. (We need c0 only for notational convenience, it computes the constant 1 function.) If c is a Boolean input variable x, we take c1=x, c2==ct=0. If c is an addition gate, say c=a+b, we implement it via ci=j,ktj+ki(ajbk).

Multiplication gates are handled in the same way.

This takes O(t3) gates per one gate of the original circuit. As a minor optimization, we can reduce it to O(t2) by putting ct=j+kt(ajbk),ci=ci+1j+k=i(ajbk),i<t,

so that each ajbk is used as an input of only one of the ci gates.
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.