Un théorème de dichotomie (grossier) indique que dans une certaine classe de problèmes, chaque problème est soit en P soit en NP-dur. Par exemple, le théorème de dichotomie de Schaefer concerne la classe de problèmes de la formeS A T (S). IciS est un ensemble de relations booléennes, et S A T (S) est le problème de décider de la satisfiabilité des propositions qui sont des conjonctions de relations S. Ceci est mieux expliqué par un exemple. Le problème 2SAT estS A T (S2) avec S2 composé des trois prédicats suivants:
( x , y) ↦ x ∨ y,( x , y) ↦ x ∨ ¬ y,( x , y) ↦ ¬ x ∨ ¬ y.
Autrement dit, chaque instance de 2SAT est une conjonction de clauses de l'une de ces trois formes, où vous pouvez remplacer toutes les variables que vous souhaitez
x , y. Comme autre exemple,
HORNSAT est
S A T (SH) où
SH est la collection infinie suivante:
x ↦ x ,x ↦ ¬ x ,( x , y) ↦ x ∨ ¬ y,( x , y) ↦ ¬ x ∨ ¬ y,( x , y,z) ↦ x ∨ ¬ y∨ ¬ z,( x , y, z) ↦ ¬ x ∨ ¬ y∨ ¬ z,( x , y, z, w ) ↦ x ∨ ¬ y∨ ¬ z∨ ¬ w ,( x , y, z, w ) ↦ ¬ x ∨ ¬ y∨ ¬ z∨ ¬ w , …
Le théorème de dichotomie de Schaefer indique que pour chaque
fini S, le problème
S A T (S)est soit en P soit NP-complet (c'est une
dichotomie car il n'y a que deux possibilités). Par exemple, 2SAT et
k-HORNSAT sont en P pour chaque
k, tandis que 3SAT est NP-complete. Cela est surprenant car si nous pensons que P
≠NP alors le théorème de Ladner montre qu'il y a des problèmes intermédiaires - des problèmes qui ne sont ni en P ni NP-complets. Le théorème de Schaefer montre que ces problèmes ne peuvent pas être de la forme
S A T (S).
Une version plus raffinée du théorème de Schaefer déclare que S A T (S) est soit en co-NLOGTIME, L-complet, NL-complet, ⊕L-complet, P-complet ou NP-complet. Au cours des dernières années, d'innombrables généralisations du théorème de Schaefer ont été prouvées ou conjecturées, y compris des résultats sur les solutions de comptage et l'approximation du nombre maximum de clauses satisfaisables, ainsi que des résultats sur des domaines non booléens. La conjecture principale est la conjecture de dichotomie de Feder-Vardi qui stipule que le théorème de Schaefer est valable pour les relations sur des domaines arbitraires de taille finie. Pour le statut du théorème original de Schaefer dans le cas oùSest infini, voir cette question .