Arguments pour / contre la conjecture de Kolmogorov sur la complexité du circuit de P

19

Selon un récit historique (non vérifié), Kolmogorov pensait que chaque langue dans a une complexité de circuit linéaire. (Voir la question précédente de la conjecture de Kolmogorov selon laquelle a des circuits de taille linéaire .) Notez que cela implique .PPPNP

La conjecture de Kolmogorov, cependant, est susceptible d'échouer. Par exemple, Ryan Williams écrit dans un article récent : "La conjecture serait surprenante, si elle est vraie. Pour les langues en nécessitant temps, il semble peu probable que la complexité de tels problèmes serait magiquement rétréci à la taille , simplement parce qu'un circuit différent peut être conçu pour chaque longueur d'entrée. "Pn100100O(n)

D'un autre côté, Andrey Kolmogorov (1903-1987) est largement reconnu comme l'un des principaux mathématiciens du XXe siècle. Il est assez difficile d'imaginer qu'il aurait proposé une conjecture complètement absurde. Par conséquent, pour mieux le comprendre, j'ai essayé de trouver des arguments qui pourraient réellement soutenir sa surprenante supposition. Voici ce que je pourrais imaginer:

Supposons . On peut alors choisir un langage L \ in \ mathsf {P} , tel que L ait une complexité super-linéaire à la fois dans le modèle uniforme et dans le modèle non uniforme. Il y a alors deux possibilités:PSIZE(lin) LLPL

  1. Il est un connu explicite algorithme (machine de Turing) qui accepte L . À partir de cela, nous pouvons construire une famille de fonctions explicite qui doit avoir une complexité de circuit superlinéaire. Cependant, cela peut être considéré comme improbable, car personne n'a été en mesure de trouver un tel exemple en plus de 60 ans d'intenses recherches sur les circuits.

  2. On ne connaît pas explicitement algorithme pour L . Par exemple, son existence est prouvée par des moyens non constructifs, comme l'Axiom of Choice. Ou, même si l'algorithme explicite existe, personne n'a pu le trouver. Étant donné, cependant, qu'il existe une infinité de langages qui peuvent jouer le rôle de L , il est encore peu probable qu'ils se comportent tous de cette manière peu amicale.

Mais alors, si nous rejetons les deux options comme improbables, la seule possibilité qui reste est qu'un tel L n'existe pas. Cela signifie PSIZE(lin) , qui est précisément la conjecture de Kolmogorov.

Question: Pouvez-vous penser à un autre argument pour / contre la conjecture de Kolmogorov?

Andras Farago
la source
2
Je me demande: avons-nous des candidats pour réfuter la conjecture de Kolmogorov? Bien sûr, on peut considérer tout problème qui a de manière prouvée une complexité super-linéaire. Peut-être que certains d'entre eux sont plus susceptibles de ne pas avoir de circuits de taille linéaire?
Bruno
2
avouons-le, personne n'a la moindre idée. (re Goldman citation sur hollywood: "personne ne sait rien.") la conjecture (non publiée) a peut-être été ouverte encore plus longtemps que P =? NP. cependant, une idée / un angle approximatif mérite d'être exploré: théorie de la compression et compressibilité. c'est essentiellement ce à quoi fait allusion williams et pourrait être au cœur de nombreuses séparations de classes de complexité. l'idée est qu'il existe des méthodes / algorithmes de base pour coder les données, et certains modèles sont intrinsèquement plus difficiles à compresser à l'aide de codages (arbitraires) . mais il semble également y avoir très peu de résultats dans ce domaine.
vzn
1
et btw, les nombreuses connexions de la complexité de Kolmogorov à la complexité de calcul, par exemple explorées par Fortnow, pourraient avoir un lien explicatif pour expliquer pourquoi les questions sont si difficiles à résoudre, car tant de questions liées à la complexité de Kolmogorov sont indécidables ...?
vzn
1
@Bruno: Je suppose que les problèmes complétés par seraient de bons candidats, par exemple la programmation linéaire ou le problème de valeur de circuit. Si alors ces problèmes ne peuvent pas être résolus même de manière non uniforme en poly-taille et en profondeur poly-logarithmique, donc il semble au moins raisonnable de deviner que de tels problèmes ne devraient pas être résolus soluble en taille linéaire (et en profondeur sans restriction) non plus. Le déterminant pourrait être un autre candidat raisonnable. Mais ce ne sont que des propositions - je n'ai pas de bonnes raisons de penser qu'elles ont une taille de circuit super-linéaire. PN CPPNC
Joshua Grochow

Réponses:

22

La note de bas de page de mon article que vous citez fait également référence à un "argument" heuristique, du moins ce que nous pensons être l'intuition de Kolmogorov - la résolution positive du treizième problème de Hilbert.

http://en.wikipedia.org/wiki/Hilbert's_thirenth_problem

En particulier, Kolmogorov et Arnold ont prouvé que toute fonction continue sur variables peut être exprimée comme une composition de "simples": addition de deux variables et fonctions continues sur une variable. Par conséquent, sur la "base" des fonctions continues à une variable et de l'addition à deux variables, chaque fonction continue sur variables a une "complexité de circuit" .O ( n 2 ) n O ( n 2 )nO(n2)nO(n2)

Il semble que Kolmogorov croyait qu'il existe un analogue discret, où "continu dans variables" devient "booléen dans variables et poly temps calculable", et où la "base" donnée ci-dessus devient des fonctions booléennes à deux variables.n ( n )nn(n)

Ryan Williams
la source
Il serait très intéressant que l'analogue discret auquel Kolmogorov croyait existe bel et bien. Vraisemblablement, les chercheurs ont essayé de le trouver, car cela pourrait conduire à une preuve de . Quel a été le principal obstacle rencontré? PNP
Andras Farago
3
Des barrages routiers? Je ne pense pas que quiconque ait trouvé la route :) Comme la plupart des gens croient que n'a pas de circuits de taille , pour chaque fixe , peu de gens ont probablement même cherché la route. O ( n k ) kPO(nk)k
Ryan Williams
11

La réponse de Stasys à la question précédente fournit une intuition potentiellement en faveur: /cstheory//a/22048/8243 . Je vais essayer de reformuler ici si je comprends bien. L'intuition clé est de voir un circuit comme, non pas un algorithme, mais un encodage d'un ensemble (l'ensemble qu'il accepte). Nous pouvons obtenir une limite supérieure sur la taille de l'encodage par le temps d'exécution de l'algorithme (c'est-à-dire traduire un time- TM en un circuit de taille- ), mais on ne sait pas quelle relation inverse devrait exister. Si une langue est dans , cela implique peut-être que l'appartenance est suffisamment "locale" pour être encodée de manière très concise.t PttP

Autrement dit, l'appartenance à est une déclaration sur le temps d'exécution d'un algorithme alors que les circuits linéaires sont (peut-être) une déclaration sur la taille de codage des ensembles de mots de longueur fixe. Les deux sont des déclarations sur la simplicité de la langue mais ils vivent dans des mondes peut-être très différents.P

Une autre intuition mentionnée par Stasys vient de la "chaîne indicatrice" d'une langue, qui formalisons comme la chaîne infinie où le bit est si la ème chaîne lexicographique est dans la langue et est sinon. Un TM (polytime) pour la langue est un oracle (rapide) pour la chaîne --- donné en binaire, produit le ème bit. Un circuit (de taille linéaire) pour les entrées de longueur est un oracle (concis) pour le préfixe longueur- de la chaîne. La conjecture devient "toute chaîne infinie qui a un oracle" rapide "a des oracles de préfixe" concis "."1 j 0 j j n 2 nj1j0jjn2n

Rien de ce qui précède n'explique pourquoi et" linear "pourraient être les bons paramètres respectifs pour l'énoncé; mais je pense qu'ils montrent qu'une intuition naturelle - que les circuits agissent comme des algorithmes, et que des algorithmes plus compliqués nécessitent circuits tout aussi complexes - peuvent être trompeurs.P"

usul
la source