2009-11-03 5 views
1

J'ai un problème qui est une extension du problème 2-SAT. Dans le problème standard 2-SAT, nous pouvons trouver l'une des affectations de vérité qui dépend de l'ordre des sommets que nous choisissons. Je veux vérifier s'il existe une et une seule assignation de vérité (c'est-à-dire une seule combinaison) pour laquelle l'expression est satisfiable. Le nombre de littéraux peut être de 100000. Une manière consiste à trouver toutes les affectations de vérité possibles, puis de les comparer si elles sont distinctes. Mais le problème est pour chaque comparaison, je vais devoir comparer 100000 valeurs (non de littéraux). Y a-t-il un moyen efficace?2-Problème de fiabilité-Si une affectation de vérité unique existe ou non

Répondre

1

Feder (1994) describes an algorithm for efficiently listing all solutions to a given 2-satisfiability instance. Il y a également des citations dans l'article pour les algorithmes pour compter le nombre d'affectations, mais vous avez seulement besoin d'essayer de répertorier deux affectations, ce qui peut être plus efficace.

+0

Merci beaucoup. Pouvez-vous me fournir le lien pour le document en pdf? – avd

+0

En voici une pour l'un des documents de comptage. http://www.cse.psu.edu/~kasivisw/2sat.pdf Le site Web de Tomas Feder ne contient pas de lien vers le document de 1994. –

+0

Juste un commentaire: le papier que je vous ai envoyé est pour un algorithme de temps exponentiel. Je suppose alors que vous voulez utiliser l'algorithme de Feder, qui semble être un temps polynomial. Vous pouvez l'acheter ici pour 34 $, ou vous pouvez trouver une copie de Algorithmica à votre bibliothèque de recherche locale. http://www.springerlink.com/content/j582276p06276l12/ –