Unification vs solveur SAT

10

J'ai lu sur Wikipedia que l' unification est un processus de résolution du problème de satisfaction.

En même temps, je sais que de tels solveurs sont appelés "solveurs SAT" ou "solveurs SMT". Alors, sont-ils des noms différents pour la même chose?

Si vous dites qu'ils sont différents, veuillez signaler une faille dans mon traitement.

Val
la source
l'informatique se réfère souvent au "problème de satisfiabilité" mais c'est en fait un cas particulier du problème général [mentionné dans l'article de wikipedia sur l'unification] qui peut avoir des clauses plus complexes comme avec "il existe" et "pour tous" autres que simplement des variables booléennes. dans CS, la référence au "problème de satisfiabilité" peut être vraiment un raccourci pour le problème de satisfiabilité propositionnelle ou booléenne , abrégé SAT. le processus d'unification dans SAT est appelé résolution
vzn

Réponses:

12

Les solveurs SAT résolvent le problème de satisfaction booléenne . C'est "le problème de déterminer si les variables d'une formule booléenne donnée peuvent être affectées de manière à rendre la formule évaluée à VRAI".

une,b,c(unebc)(¬une¬bc)(une¬b¬c)(¬uneb¬c)une=trueb=truec=true

Les solveurs SMT résolvent un problème plus général, à savoir les théories de Modulo de Satisfiance . Il s'agit "d'un problème de décision pour les formules logiques en ce qui concerne les combinaisons de théories de fond exprimées en logique classique du premier ordre avec égalité". Ces théories pourraient inclure «la théorie des nombres réels, la théorie des nombres entiers et les théories de diverses structures de données telles que les listes, les tableaux, les vecteurs de bits, etc.».

X:jenty:jentF:jentjentF(X+2)F(y-1)X=(y-4)X=-2y=2F(0)=1F(1)=3

book(X,"Pêche",2010)book(D. ~ Smith,y,2010){XD. Smith,y"Pêche"}

Dave Clarke
la source
Tous les mots sont familiers dans la phrase "L'unification est probablement utilisée quelque part dans les solveurs SMT (et peut-être dans les solveurs SAT)" mais je ne la comprends pas. Vous trouvez également une telle définition de SMT qu'il est difficile de comprendre si SAT en est un cas particulier.
Val
SAT traite de la logique propositionnelle. La logique du premier ordre, sur laquelle SMT est basé, est plus générale.
Dave Clarke