Consequências práticas de

10

fundo

A complexidade do circuito é definida como o conjunto de famílias de circuitos (ou seja, sequências de circuitos, uma para cada tamanho de entrada) de profundidade limitada e tamanho polinomial construído usando a ventoinha ilimitada AND, OR e NOT.AC0

A função de paridade com entrada de bits é igual ao XOR dos bits na entrada.nn

Um dos primeiros circuitos inferiores comprovados em complexidade de circuitos é o seguinte:

[FSS81], [Ajt83]: .AC0


Questões:

Seja a classe de funções que podem ser calculadas usando circuitos eletrônicos de profundidade limitada e tamanho polinomial usando peças eletrônicas como transistores. (Inventei o nome , informe-me se souber um nome melhor para isso).EC0EC0

  1. Podemos calcular na prática usando circuitos ?EC0

  2. E quanto ao fan-in ilimitado E / OU? Podemos computá-los em ?EC0

  3. Faz têm quaisquer consequências práticas? É importante na prática?AC0AC0

  4. Por que importante para os cientistas da computação (teóricos)?AC0


Nota:

Este post contém perguntas interessantes, mas o OP parece se recusar a tornar o post mais legível e corrigir os conceitos errados por algum motivo, por isso estou repondo perguntas. (Seria mais fácil editar a postagem original, mas atualmente não há um acordo se for correto editar fortemente a postagem de outro usuário.)

Relacionado:

Kaveh
fonte
é a família de circuitos BOOLEAN como A C 0, mas de ventilador limitado. Não sei muito sobre a complexidade do circuito, então não sei dizer se eletrônico é igual a booleano. No entanto, eu sei pela arquitetura do computador que todos os portões podem ser implementados usando transistores. Como você tem uma fanin delimitada, acho que também possui um número limitado de transistores, portanto não está violando a profundidade delimitada e o tamanho polinomial. NC0AC0
chazisop
@chazisop: Todas as funções booleanas podem ser implementadas usando AND / OR / NOT, o ponto é se a implementação for da forma necessária, ou seja, polinomialmente muitas partes e profundidade limitada. Observe que pode ser definido alternativamente usando portas AND / OR 2 de ventilação, mas o número de alternâncias de portas no circuito deve ser limitado. (Eu poderia precisar para definir com mais cuidado o que queremos dizer com profundidade para um circuito eletrônico se não estiver já definido na literatura.)AC0
Kaveh
Pelo que me lembro do meu curso de graduação em arquitetura (leia-se: não muito), os circuitos reais no seu computador não são acíclicos - eles têm ciclos e estado de feedback e talvez sejam melhor modelados como autômatos finitos. Parece-me que, se houver uma desconexão entre os resultados sobre e os resultados que podem ser aplicados ao seu laptop, essa é a principal distinção, em vez de usar transistores para implementar seus portões AND. AC0
Aaron Roth
@ Aaron: Eu também não me lembro de muita coisa, mas acho que os loops eram principalmente para elementos de memória, como flip - flops e sistemas seqüenciais. Não acho difícil relacionar a complexidade do circuito aos circuitos lógicos / digitais , especialmente os sistemas combinatórios, a questão é como relacionar conceitos como profundidade e fan-in a circuitos eletrônicos feitos de transistores. Talvez eu deva perguntar sobre Physics.SE.
Kaveh
3
@ Tsuyoshi Ito: Obrigado. Eu estava apenas verificando na Wikipedia, parece que é possível implementar facilmente portas AND e OR ilimitadas usando o número linear de NMOS . A estrutura dos circuitos é simples e não muda com o número de entradas no portão. Por outro lado, o circuito XOR feito de transistores NMOS parece mais complicado, não sei se dimensiona bem com o aumento do fan-in.
Kaveh

Respostas:

10

Não sou engenheiro eletricista, mas busco patentes on-line sobre circuitos de comutação para portas de paridade e todas as propostas (encontrei patentes apenas até o final da década de 1970) discutem o problema de tamanho versus profundidade. Todas as três patentes analisadas propõem soluções de profundidade logarítmica, baseadas em portas fanin-2. Portanto, a resposta para sua primeira pergunta é possivelmente "não".

JJ Moyer: Circuito de comutação de verificação de paridade, patente dos Estados Unidos US3011073, 1961

AF Bulver et al .: realização do NAND Gate da função de paridade de entrada n, patente US3718904, 1973

PJ Baun, Jr .: Parity Circuits, Patente dos Estados Unidos US4251884, 1981

Hermann Gruber
fonte
Muito interessante mesmo.
Antonio E. Porreca
6

Johne, qual é o seu problema? Você está tentando discutir sobre coisas que ninguém jamais reivindicou. Ninguém disse que o limite inferior da paridade coloca algum limite fundamental para calcular o XOR com circuitos diferentes daqueles para os quais o teorema se aplica (ou seja, circuitos AC ^ 0). Não há suposições ocultas ou implicações veladas aqui. Em particular, todos sabemos, por exemplo, que é possível calcular o XOR com circuitos NAND de tamanho polinomial de profundidade logarítmica, mesmo com constante fan-in.

A citação de Shannon também é irrelevante. Não há indicação de que ele suspeite que os circuitos AND-OR de profundidade constante precisem ter tamanho exponencial para calcular a Paridade. É claro que ele deve ter adivinhado, já que é fácil conjeturar que isso deveria ser verdade depois de brincar com o problema por um tempo, mas e daí?

Você está perdendo completamente o ponto: provar limites mais baixos é extremamente difícil e precisamos começar em algum lugar, com os modelos mais simples. Esse foi essencialmente o primeiro limite do circuito, as técnicas levam a muitas idéias interessantes (incluindo outros campos, como a teoria da aprendizagem) e, embora o resultado seja plausível, a prova é perspicaz e nada trivial.

O fato de o resultado parecer intuitivo não o torna óbvio; se você pensa que é, forneça uma prova de que a paridade não está em AC ^ 0. Todo mundo sabe que P também não é igual a NP, mas ninguém está nem perto de ter uma prova.

Suas queixas em outros tópicos sobre portões NAND também não fazem sentido. Esse limite inferior se aplica igualmente a circuitos de profundidade constante construídos a partir de portas NAND, pois são basicamente os mesmos. Optar por declarar o resultado com AND, OR, NOT é apenas uma questão de conveniência. Portanto, essa pode ser uma aplicação do mundo real nos termos que você gosta: os circuitos de profundidade constante da paridade de computação das portas NAND requerem tamanho exponencial. Isso dá uma limitação prática, mesmo que isso não seja a coisa mais importante. Ele diz que pequenos circuitos XOR para um grande número de entradas n devem ter profundidade crescendo com n ou portas diferentes de NAND. Por que você não está satisfeito com isso?

Sua afirmação de que a profundidade do circuito não é um problema no mundo real também é muito enganadora, pois a profundidade está diretamente relacionada ao tempo e à frequência máxima com que o relógio pode operar.

A propósito, a comunidade de CS estava bem ciente da teoria do circuito booleano de EE e se baseou nela, ao contrário do que você afirma.

david
fonte
2
obrigado pela resposta, mas grande parte da sua resposta são comentários direcionados a johne e não às minhas perguntas. Entendo que você provavelmente postou isso como uma resposta porque não pode comentar, mas não quero que essa pergunta se transforme em uma discussão entre vocês dois. Por favor, mova a parte da sua resposta que é direcionada a ele para a pergunta relacionada postado por ele? (ou para a meta discussão ) Agradecemos antecipadamente.
Kaveh
1

1.6223.822

s=abcin

Um bom lugar para encontrar portas XOR / XNOR compactas e de alta velocidade é nos somadores completos e nos circuitos de Hamming ECC (que normalmente estão no caminho crítico).

Além disso, a questão da profundidade do circuito normalmente não é uma preocupação na lógica síncrona VLSI. A única profundidade de qualquer consequência é o caminho crítico, que define o período máximo do relógio. A grande maioria da lógica combinatória propaga seus resultados em uma fração do tempo para o caminho crítico. Caminhos críticos tendem a ocorrer com alguma lógica combinatória que precisa passar por várias áreas espalhadas por um chip.

nO(1)

AT2=Ω(n2)

Isto é do Blog da complexidade da computação:

Isso levanta a questão: algumas pessoas no mundo real real realmente querem construir polisizadores de circuitos AND-OR-NOT de profundidade constante e ilimitada para o PARITY, e esse resultado diz a eles por que não podem?

2n/n

λ(3)=8

XYZ=X(YZ+YZ)+X(YZ+YZ)

μ(3)

X1X2Xn

4(n1)

johne
fonte
Tahnks johne pela resposta, mas agora estou com pouco tempo, mas lerei sua resposta com mais cuidado e examinarei os artigos aos quais você vinculou quando encontro algum tempo livre. Estive conversando com alguns amigos do departamento de EE e aprendi algumas coisas interessantes que vou postar.
Kaveh