Curieux de connaître les preuves de complétude NP assistées par ordinateur

22

Dans l'article "LA COMPLEXITÉ DES PROBLÈMES DE SATISFACABILITÉ" de Thomas J. Schaefer, l'auteur a mentionné que

This raises the intriguing possibility of computer-assisted NP-completeness proofs. Once the researcher has established the basic framework for simulating conjunctions of clauses, the relational complexity could be explored with the help of a computer. The computer would be instructed to randomly generate various input configurations and test whether the defined relation was non-affine, non-bijunctive, etc.

Bien sûr, c'est une limitation:

The fruitfulness of such an approach remains to be proved: the enumeration of the elements of a relation on lO or 15 variables is Surely not a light computational task.

Je suis curieux que

  1. Existe-t-il des recherches complémentaires pour développer cette idée de "preuves de complétude NP assistées par ordinateur"? Quel est l'état de l'art (peut être spécifique à ou )? Étant donné que Schaefer a proposé l'idée d'une preuve de complétude NP "assistée par ordinateur" (au moins pour les réductions de ), cela signifie-t-il qu'il existe des principes / structures généraux sous-jacents à ces réductions (pour ceux de ou )? Si c'est vrai, que sont-ils? 3 partitions SAT 3SAT 3 partitions3SAT3-Partition
    SAT3SAT3-Partition
  2. Quelqu'un a-t-il de l'expérience pour prouver l'exhaustivité de NP avec un assistant informatique? Ou peut-on inventer un exemple artificiel?
hengxin
la source
3
Ce n'est pas la même chose d'une preuve "assistée par ordinateur", mais j'ai utilisé un solveur SAT pour vérifier le bon comportement des gadgets utilisés dans les réductions pour prouver l'exhaustivité NP des jeux suivants: Puzzle binaire, Tentes, Rolling cube puzzle sans cellules libres, net; les deux derniers sont des gadgets assez compliqués.
Marzio De Biasi
1
il s'agit d'un document de 1978 qui est désormais prémonitoire à cet égard s'il est interprété de façon large plutôt qu'étroite. il y a beaucoup d'analyse empirique des problèmes complets de SAT et NP. la recherche sur les points de transition peut être considérée comme une manifestation importante de cette idée. il y a également eu une percée récente sur le problème de divergence d'Erdos par rapport au SAT. un autre domaine émergent est la recherche de petits réseaux de tri encodés en SAT. un autre exemple, la conversion de problèmes difficiles en SAT comme l'affacturage et l'étude d'instances. Je n'ai vu personne écrire un grand sondage sur tout cela. peut essayer de marteler une partie de cela dans une réponse.
vzn
1
@MarzioDeBiasi Voulez-vous partager votre expérience à cet égard (l'utilisation d'un solveur SAT pour vérifier les gadgets est également très appréciée)? Merci.
hengxin
@vzn Cela semble très intéressant et passionnant. Dans l'attente de votre réponse. Merci d'avance. Vous pouvez l'interpréter largement comme vous le souhaitez et n'hésitez pas à modifier le message pour le rendre plus attrayant pour les bonnes réponses.
hengxin
1
Il y a un beau papier de Trevisan et al. qui construit des gadgets optimaux en utilisant LP: theory.stanford.edu/~trevisan/pubs/gadgetfull.ps
Diego de Estrada

Réponses:

22

Quant à la question 2, il existe au moins deux exemples de preuves de conformité qui impliquent un assistant informatique.NP

Erickson et Ruskey ont fourni une preuve assistée par ordinateur que Domino Tatami Covering est NP-complete. Ils ont donné une réduction de temps polynomiale du 3-SAT plan à la couverture de tatami domino. Un solveur SAT (Minisat) a été utilisé pour automatiser la découverte des gadgets dans la réduction. Aucune autre preuve de complétude n'est connue pour cela.NP

Ruepp et Holzer ont prouvé que le puzzle au crayon Kakuro est complet. Certaines parties de la preuve de conformité ont été générées automatiquement à l'aide d'un solveur SAT (là encore Minisat).N PNPNP

Mohammad Al-Turkistany
la source
1
Au moins en partie similaire est «la triangulation de poids minimum est NP-difficile» par Mulzer et Rote. Un ordinateur a été utilisé pour établir l'exactitude des gadgets (mais peut-être que les gadgets ont été trouvés "à la main").
Juho
15

Dans cet article, j'ai montré que si pour certains il y a un graphique avec un degré maximum et une force chromatique strictement supérieure à , alors il est -complet pour décider si la force chromatique du bord est au plus . De tels graphes étaient connus pour et j'ai fait une recherche informatique pour trouver un graphe vertex approprié pour .k k Θ p 2 k k > 3 12 k = 3k3kkΘ2pkk>312k=3

La complexité de la force chromatique et de la force chromatique des bords. Complexité informatique, 14 (4): 308-340, 2006

Daniel Marx
la source
13

Du commentaire ci-dessus:

J'ai utilisé la bibliothèque Choco Java pour la programmation par contraintes pour vérifier le bon comportement des gadgets utilisés pour prouver l'exhaustivité NP des puzzles suivants: Puzzle binaire, Tentes, Puzzle à cubes roulants sans cellules libres, Net. Je n'ai pas encore eu le temps de les publier, mais les projets de documents sont disponibles sur mon blog.

01n×n

(A) une porte logique (AND + OR) et des liens, si nous voulons utiliser PLANAR SAT comme problème de NPC source; ou

(B) un nœud de degré 3 dans lequel exactement 1 entrée et 1 sortie peuvent être activées en même temps, si nous voulons utiliser le CYCLE HAMILTONIEN sur les graphiques en grille comme problème de PNJ source (notez que dans ce cas, il doit y avoir un autre condition qui force un "chemin connecté").

Dans les deux cas, nous utilisons une configuration initiale qui fixe les limites des gadgets (pour interdire les interactions indésirables) et nous autorisons l'interaction entre deux gadgets adjacents uniquement via un élément central (ou groupe d'éléments). La configuration d'un tel élément central devrait représenter une valeur logique dans le cas (A) ou une traversée dans le cas (B).

Par exemple, pour modéliser un ET:

***C***   *=fixed elements (initial config. of the puzzle)
*xxxxx*   x=internal logic (some elements can be fixed,
AxxxxxB     other must be completed/traversed)
*xxxxx*   A,B,C=elements shared with adjacent gadgets
*******

À ce stade, pour vérifier le gadget à l'aide d'un solveur SAT (il est préférable d'utiliser un CPL), il suffit de mettre en œuvre les règles du puzzle, puis de vérifier la satisfiabilité lorsque A, B, C prennent toutes les combinaisons possibles de valeurs; et voir s'ils sont compatibles avec le comportement souhaité. Par exemple, dans le cas ET, dans toutes les configurations de gadget valides (satisfaisables) dans lesquelles C est vrai (C représente la valeur logique vraie), A et B doivent être vrais.

Si les gadgets sont très compliqués (par exemple dans le puzzle Rolling cube), je pense que c'est le seul moyen de s'assurer qu'ils fonctionnent correctement (et que la preuve NPC est correcte).

Marzio De Biasi
la source
11

J'ai fait cette chose - preuve de complétude NP assistée par ordinateur - dans ma thèse de baccalauréat!

La mauvaise partie - c'est en russe et n'a pas été traduit en anglais. http://is.ifmo.ru/diploma-theses/_dvorkin_bachelor.pdf

J'ai travaillé avec des portes logiques dans des problèmes 2D. Le plan est le suivant:

  • Concevez manuellement à quoi ressemble un «fil» dans votre problème.
  • Utilisez une recherche très intelligente et optimisée (en fait une programmation dynamique sur des ensembles de profils) pour concevoir automatiquement toutes les portes logiques nécessaires.
  • PROFIT!

Le code est d'ailleurs disponible: https://code.google.com/p/metadynamic-programming/

De cette façon, avec un travail manuel uniquement pour concevoir le fil et coder les règles du problème 2D spécifique, j'ai pu prouver que NP était complet:

  • Dragueur de mines
  • Zone de couverture avec dominos horizontaux et triminos verticaux
  • kk4k[4,6]
Mikhail Dvorkin
la source
2
Même si vous ne prévoyez pas de publier un article sur la génération automatique de gadgets, il peut être utile d'écrire un bref résumé de votre thèse en anglais et d'inclure le fichier dans votre référentiel de code.
András Salamon
-4

l'intervenant a indiqué qu'il est d'accord avec une interprétation plus large de la déclaration Schaefer dans une réponse. par coïncidence, j'ai collecté des liens pour un blog sur un sujet proche et j'en rédigerai ici.

l'énoncé original (sec 7 p225) est clair dans ses intentions comme illustré avec un exemple d'une réduction complète de NP de 2 colorables parfaits thm 7.1 en utilisant la "dichotomie thm" 2.1.

F(x)

F(x)x

en prenant un large point de vue, ces idées générales peuvent être vues comme ayant grandi et ont été explorées dans de nombreux domaines de recherche depuis ces réflexions / "idées de semences" de 1978 menant à de vastes branches et programmes de recherche, toujours en cours, dont aucun n'existait sous presque aucune forme au moment de la rédaction du papier Schaefers. 1 st une idée générale est une analyse empirique des propriétés de complétude NP par exemple des générateurs / solveurs / analyseurs .

  • le plus grand domaine de recherche engendré ici concerne les instances SAT aléatoires et l'examen des performances du solveur SAT sur celles-ci, ce qui a conduit à la découverte du point de transition au milieu des années 1990, plus tard démontré qu'il a des liens profonds avec la physique statistique et un aspect apparemment omniprésent / intrinsèque / fondamental / caractéristique de tous les problèmes NP complets. il y a de très nombreux articles dans ce domaine et maintenant quelques livres. voir par exemple Information, physique et calcul Mezard / Montanari

  • Décomposition des problèmes de satisfiabilité ou Utilisation de graphiques pour mieux comprendre les problèmes de satisfiabilité , Herwig 2006 (83pp). il s'agit d'une approche quelque peu nouvelle par rapport à d'autres recherches publiées qui examine la structure du graphe à clauses variables des instances SAT générées et analyse leur structure / métriques pour trouver des corrélations avec la dureté.

  • on peut prendre des problèmes conjecturés et les coder en tant qu'instances SAT puis examiner leur structure ou exécuter des solveurs SAT sur eux et observer le comportement dynamique des solveurs SAT. il n'est pas facile de savoir quand cela a été fait pour la première fois, mais un cas précoce concerne l'affacturage, probablement au milieu des années 1990 environ, et ces cas se sont présentés dans les concours de solveurs DIMACS SAT. malheureusement, ces résultats de recherche n'étaient pas nécessairement considérés séparément à l'époque. il y a des allusions dans quelques articles SAT.

    voir par exemple Satisfy This: An Tentative to Solving Prime Factorization using Satisfiability Solvers par Stefan Schoenmackers, Anna Cavender et aussi cs.se question de réduction du problème de factorisation des nombres entiers au problème NP complet & (il existe d'autres questions d'échange de pile CS liées / dispersées (T) sur cette).

2 e une autre idée / graine générale moderne inhérente à la déclaration Schaefers ancienne est d' attaquer dur problèmes algorithmiques ou mathématiques en général en les convertissant aux instances SAT et en utilisant impromptu (mais l' état de l'art) solveurs SAT (c. La résolution de SAT peut être considérée globalement comme l'un des premiers cas en logique / mathématique d' un théorème automatisé par ordinateur prouvant que les solutions de formule SAT sont comme des "théorèmes", bien qu'il soit vrai que le point de vue moderne sur ce point a peut-être quelque peu changé) et il y a quelques récents notables succès sur ce front.

  • le problème de divergence Erdos lié aux limites lors de marches aléatoires est très difficile et les progrès ont été limités avec des approches analytiques, et une approche empirique nouvelle / sans précédent avec SAT a récemment été adoptée pour obtenir des résultats clés sur un problème ouvert connexe, célébré par beaucoup comme un une véritable percée. une attaque SAT sur la conjecture de divergence Erdos Konev, Lisitsa

  • la recherche sur les réseaux de tri optimaux remonte à des décennies et il existe des problèmes naturels ouverts sur des tailles minimales de réseaux pour trier un nombre donné d'éléments. au cours des dernières années, des progrès importants ont été accomplis récemment pour les convertir en instances SAT et exécuter des solveurs standard sur ces instances. Nouvelles limites sur les réseaux de tri optimaux Ehlers, Müller, cite également d'autres travaux récents.

vzn
la source