Peut-on compter en profondeur


19

Peut-on calculer une porte de seuil à bits par des circuits de taille polynomiale (fan-in illimité) de profondeur lg nn ? Alternativement, pouvons-nous compter le nombre de 1 dans les bits d'entrée en utilisant ces circuits?lg⁡nlg⁡lg⁡n

Est ?TC0⊆AltTime(O(lg⁡nlg⁡lg⁡n),O(lg⁡n))


Notez que . La question est donc essentiellement de savoir si nous pouvons enregistrer un facteur lg lg n dans la profondeur des circuits lors du calcul des portes de seuil.TC0⊆NC1=ALogTime=AltTime(O(lg⁡n),O(lg⁡n))lg⁡lg⁡n


Éditer:

Comme Kristoffer l'a écrit dans sa réponse, nous pouvons économiser un facteur . Mais pouvons-nous économiser un peu plus? Peut-on remplacer O ( lg nlg⁡lg⁡naveco(lgnO(lg⁡nlg⁡lg⁡n)?o(lg⁡nlg⁡lg⁡n)

Il me semble que l'astuce de force brute en couches ne fonctionne pas pour enregistrer même (plus généralement n'importe quelle fonction dans lg lg n + ω ( 1 ) ).2lg⁡lg⁡nlg⁡lg⁡n+ω(1)


3
J'ai modifié ma réponse pour inclure également la dernière modification.
— Kristoffer Arnsfelt Hansen

Réponses:


22

Considérons un circuit fanin 2 de profondeur O ( log n ) . Divisez les couches de C en blocs O ( log n / log log n ) chacune des couches log log n consécutives. Nous souhaitons maintenant remplacer chaque bloc par un circuit de profondeur 2. A savoir, chaque porte de la dernière couche d'un bloc dépend d'au plus 2 log log n = log nCO(log⁡n)CO(log⁡n/log⁡log⁡n)log⁡log⁡n2log⁡log⁡n=log⁡nportes de la dernière couche dans le bloc ci-dessous. On peut ainsi remplacer chaque porte de la dernière couche par un DNF de taille polynomiale dont les entrées sont les portes de la dernière couche du bloc ci-dessous. Faire cela pour toutes les portes dans les dernières couches pour tous les blocs et les connecter devrait donner le circuit souhaité.

Permettez-moi de noter que c'est essentiellement le meilleur que l'on puisse obtenir: le lemme de commutation permet des bornes inférieures jusqu'à la profondeur .log⁡n/log⁡log⁡n


1
Merci Kristoffer. J'ai ajouté une question légèrement plus forte.
— Kaveh

2
Juste pour m'assurer d'avoir une vue d'ensemble correcte: jusqu'à la profondeur ces circuits ne peuvent pas calculer la parité, à cette profondeur ils deviennent soudainement capables de calculer N C 1 . lg⁡n/lg⁡lg⁡nNC1
— Kaveh

2
C'est vrai (jusqu'à des facteurs constants dans la profondeur).
— Kristoffer Arnsfelt Hansen
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.