Avons-nous des circuits uniformes non triviaux?


13

Étant donné un algorithme fonctionnant au temps , nous pouvons le convertir en une famille de circuits uniformes "triviaux" pour le même problème de taille au plus t ( n ) log t ( n ) .t(n)t(n)logt(n)

D'un autre côté, il se pourrait que nous ayons des circuits uniformes beaucoup plus petits pour ce problème, même si est un temps de fonctionnement optimal. Les circuits peuvent prendre plus de temps que t ( n ) à générer, mais ils sont petits.t(n)t(n)

Mais savons-nous réellement comment construire de telles choses? Je pense que la question initiale à poser est

(1) Avons-nous des exemples constructifs de circuits uniformes non triviaux, c'est -à- dire des circuits uniformes dont la taille est inférieure au temps de fonctionnement le plus connu de tout algorithme pour le même problème?

Maintenant, je crois que si un problème est dans , alors nous avons un algorithme à temps exponentiel pour trouver des circuits optimaux en utilisant une recherche exhaustive: Étant donné n , nous notons les réponses sur les 2 n entrées (prenant le temps ( 2 n ) t ( n ) ); puis nous énumérons tous les circuits sur n entrées de taille croissante jusqu'à ce que l'on trouve un qui donne toutes les bonnes réponses. La recherche se termine à la taille de la conversion triviale, t ( n ) logDTIME(t(n))n2n(2n)t(n)n , ou la table de vérité de la fonction, 2 n si les sorties sont { 0 , 1 } . (Edit: Thomas souligne que la limite est O ( 2 n / n ) en raison de Shannon / Lupanov.)t(n)logt(n)2n{0,1}O(2n/n)

Nous avons donc un «oui» insatisfaisant à la question (1): prenons une langue qui est difficile à tout moment au-dessus de , mais qui reste décidable; la procédure ci-dessus génère une table de vérité de taille 2 n .2n2n

Nous devons donc affiner la question (1). Je pense que les deux cas les plus intéressants sont

(2) Avons-nous des exemples constructifs de circuits uniformes non triviaux de taille polynomiale ? (Même s'ils sont générés par des algorithmes très lents.)

(3) Avons-nous des exemples constructifs de circuits uniformes non triviaux générables en temps polynomial et de taille polynomiale?

C'est peut-être trop demander. Que diriez-vous d'une question plus simple: savons-nous même qu'une telle chose est possible? Peut-être n'existe-t-il pas de circuits uniformes non triviaux?

(4) La déclaration suivante est-elle connue comme fausse pour tout ? (Edit: o ( 2 n / n ) , merci Thomas.) "Si un langage L a des circuits uniformes de taille O ( s ( n ) ) , alors il a aussi des algorithmes fonctionnant dans le temps ˜ O ( s ( n ) )s(n)=o(2n)o(2n/n)LO(s(n))O~(s(n)) . " (Dans l'affirmative, qu'en est-il lorsque "uniforme" est remplacé par "uniforme polynomial-temporel", "uniforme de l'espace de journalisation", etc.?)

Enfin, si les questions ci-dessus sont trop difficiles,

(5) Avons-nous des constructions de familles uniformes de circuits qui ne sont pas simplement des conversions d'algorithmes en circuits (ou écrire la table de vérité)?

Postscript. Un expert que j'ai interrogé à ce sujet a mentionné "On Medium-Uniformity and Circuit Lower Bounds" ( pdf ), Santhanam et Williams 2013, qui est peut-être le travail le plus étroitement lié, mais il prouve les limites inférieures (que les circuits pouvant être générés par le temps poly ne sont pas trop puissant). Je serais intéressé par tout autre travail connexe!


1,2,3,4: Fonction identité. 5. ce que vous entendez par "être une conversion d'algorithmes en circuits" n'est pas clair pour moi, nous pouvons toujours convertir un circuit uniforme en une machine de Turing (avec une petite surcharge).
Kaveh

@Kaveh, re # 5: Bon point, mais je pense que je pense à quelqu'un qui écrit une construction explicite de circuits uniformes, qui ne ressemble pas à "convertir cette MT en circuit". De plus, je pense que la conversion que vous mentionnez ne signifie pas vraiment que le circuit "ressemble" à un algorithme. Par exemple, disons que nous avons un circuit de taille qui prend n 3 fois pour générer. Nous pouvons le transformer en un temps n 3 TM, ok, mais il ne ressemble pas beaucoup au circuit, et la conversion naïve de ce TM en circuit est maintenant de taille ~ n 3 . J'espère que cela montre pourquoi la question m'intéresse. nn3n3n3
usul

1
@Kaveh: Comment la fonction d'identité répond-elle 1-4?
Joshua Grochow

@Joshua, nous pouvons décrire directement un circuit uniforme de taille (fil) O (n), ce qui est meilleur que la conversion de la machine de Turing pour identité en circuit.
Kaveh

Ce que je veux dire, c'est qu'il y a des petits détails importants dont nous devons nous préoccuper pour répondre à la question. Autre exemple: BPP est en P / poly et la conversion est calculable. Si la génération du circuit est effectuée par un algorithme efficace, la combiner avec la valeur du circuit donnera une TM efficace. Conceptuellement, le circuit et le TM calculent le même algorithme. Le fait que la taille et le temps ne correspondent pas exactement est normal, ils sont définis pour différents modèles de calcul et nous savons qu'ils ne correspondent pas. On peut dire que le temps correspond plus à la profondeur qu'à la taille.
Kaveh

Réponses:


8

Voici les réponses à vos deux dernières questions.

(5) Les réseaux de tri sont des circuits uniformes qui trient aussi rapidement que les meilleurs algorithmes RAM, mais ne sont certainement pas uniquement des conversions d'algorithmes RAM (par exemple, quicksort). [ AKS83 , G14 ]

s(n)=(1+ε)2n/n avec ε>0, mais pour une raison stupide: chaque fonction est calculée par un circuit de taille (1+o(1))2n/n. ( Shannon l'a prouvé jusqu'à une constante et Lupanov a obtenu la constante optimale.) D'après le théorème de la hiérarchie temporelle, il existe une fonctionF avec une complexité temporelle uniforme entre Ω(3n) et O(n3n). Cela donne un contre-exemple:F a des circuits de taille O(2n/n)(qui je pense sont calculables dans2poly(n) temps) mais n'est pas calculable en O~(2n/n)temps. Vous devriez probablement demanders(n)=o(2n/n).

C'est une question intéressante; J'espère que quelqu'un pourra répondre (1) - (3).


Thanks, you're right, I intuitively wanted to rule out this "upper-bounding" case but didn't know the right asymptotic. I've edited the question to include that case.
usul
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.