Complexité du circuit de la fonction majoritaire

13

Soit la fonction majoritaire, c'est-à-dire f ( x ) = 1 si et seulement si n i = 1 x i > n / 2 . Je me demandais s'il y avait une preuve simple du fait suivant (par «simple», je veux dire ne pas compter sur la méthode probabiliste comme Valiant 84 ou sur les réseaux de tri; fournissant de préférence une construction explicite et directe du circuit):f:{0,1}n{0,1}f(x)=1i=1nxi>n/2

peut être calculé par une famille de circuits de O ( log ( n ) )fO(log(n)) profondeur , de taille poly (n), où les portes se composent de portes NON, de portes OU à 2 entrées et de portes ET à 2 entrées.

matthon
la source
6
Cela pourrait être intéressant: Igor Sergeev, Limites supérieures pour la taille de la formule de la fonction majoritaire ; ici aussi , il annonce des limites supérieures légèrement meilleures. Cependant, si vous posez des questions sur les circuits (pas sur les formules ), alors, comme Igor me l'a rappelé, chaque fonction booléenne symétrique (pas seulement la majorité) a un circuit de profondeur et de taille O ( n ) : calculez simplement la somme de 1 s, et réaliser une fonction booléenne de log 2 n variables. Pour la majorité, cette dernière fonction est une comparaison avec nO(logn)O(n)1log2n . n/2
Stasys
@Stasys, et calculer le nombre de uns revient essentiellement à trier les bits.
Kaveh

Réponses:

9

La réponse de Kaveh fournit une réponse à la question telle que vous l'avez énoncée (et c'est la preuve habituelle pour montrer que est contenu dans N C 1 ). Mais je pensais que vous auriez pu en fait avoir l'intention de poser une question légèrement différente. À savoir pour un monotone de taille polynomiale expliciteTC0NC1 formule pour la majorité.

Puisque la majorité est monotone, nous savons qu'elle peut être calculée par une formule monotone. Il existe deux constructions connues de formules monotones de taille polynomiale, à savoir les deux que vous mentionnez, la construction probabiliste de Valiant et la construction via des réseaux de tri. Pour autant que je sache, nous n'avons pas de construction déterministe plus simple que celle fournie par les réseaux de tri.

Lié à cela est également le suivant. Il s'avère que la majorité peut être calculée par des formules qui se composent uniquement de portes (et pas de constantes!). La construction probabiliste de Valiant peut être adaptée pour donner de telles formules de profondeur O ( log ( n ) ) . Cependant, nous ne connaissons ici aucune construction déterministe. En particulier, les réseaux de tri ne conviennent pas pour cela (raison technique: ils fourniraient toutes les fonctions de seuil et seule la fonction majoritaire peut être calculée du tout par des portes M A J 3 ). Il y a cependant des progrès récents sur cette question donnée dans le documentMAJ3O(log(n))MAJ3 Protocoles multipartites efficaces via des formules de seuil de profondeur de journal par Cohen et al. Ici, ces formules sont construites sur la base d'hypothèses théoriques de complexité ou cryptographiques standard.

Kristoffer Arnsfelt Hansen
la source
9

Le calcul de la porte à seuil restreint ( ) consiste essentiellement à trier les bits d'entrée.ixik

Si vous pouvez trier les bits, il est facile de comparer le résultat à et de calculer le seuil restreint.k

En revanche, supposons que nous avons un circuit pour calculer le seuil restreint. Nous pouvons faire une recherche parallèle pour trouver le nombre de ceux dans l'entrée et sortir la liste triée.

NC1O(lgn)NC1O(lgn)

Notez qu'il est facile d'implémenter le seuil restreint en utilisant la majorité en ajoutant de nouvelles entrées 1 et 0 à la porte de la majorité.


AC0. That only shows that majority is in AC1 and NC2 since we have unbounded fan-in gates in the binary addition if we do it directly. However it can be done with a bit more work.

We have to use the trick called three-for-two to remain in depth O(lgn).

three-for-two binary addition:
given three binary numbers a,b,c we can compute two binary numbers x,y such that a+b+c=x+y.

Another method is to use signed digit representation of integers where addition can be done in depth O(1) and fan-in 2. (The idea is to use the flexibility that a number can be represented in more than one way to make sure that carries do not propagate).

See section 4 and exercise 4 in

Kaveh
la source
It seems to me both of these give deterministic sorting circuits of depth O(lgn) (and might also lead to a simpler deterministic sorting networks of depth O(lgn)).
Kaveh
7

The proof (due to Miller and Preparata, 1975) that any symmetric function can be computed by circuits over {AND,OR,NOT} in logarithmic depth can be found, e.g., in Complexity of Boolean Functions by Ingo Wegener (Theorem 4.1, page 76). The corresponding circuit has linear size. And since the depth is logarithmic it can be turned to a formula of polynomial size. The proof is elementary and gives an explicit construction. Basically, it shows how to compute the binary representation of the sum of n input bits in logarithmic depth (having this sum it is straightforward to compute majority).

An alternative proof is given by Brodal and Husfeldt: A Communication Complexity Proof that Symmetric Functions have Logarithmic Depth. Again, the proof is elementary and provides an explicit construction.

Alexander S. Kulikov
la source