1

I'm new to mathematical logic and I'm recently confused by some concepts about first-order logic validity and satisfiability, here are some of my problems:

I learned that validity and also unsatisfiability is semi-decidability, does that mean one can use method like resolution reasoning and eventually get a 'yes' once the statement is actually valid not matter how long it will take, but may get nothing (the mothod does not stop) if the statement is not valid?

I learned that satisfiability is undecidable and even not semi-decidable, because once it is it will lead to that the whole problem is decidable, I can understand it from this perspective but does that mean satisfiability is harder than validity? If it is so then it confuses me a lot, cause I think to prove satisfiability one just needs to find a model and an explanation but to prove validity one needs to check all models and explanations, which seems to me that satisfiability is easier than validity.

Is there something wrong about my understanding? Thanks!

2 Answers2

0

Validity: semi-decidable. By completeness of FOL, a formula is valid iff it is provable in predicate calculus.

Thus, we can start "producing" mechanically all the formally correct derivations and this procedure will list all valid formulas.

But for FOL we have no mechanical method for checking validity corresponding to truth-table method for propositional calculus, i.e. a tool that, when fed with a FOL formula whatever as input, after a finite number of steps it returns as output Yes or No.

Thus, validity is not decidable.

We know that a set is decidable iff the set and its complement are both semi-decidable.

Thus, the undecidability of validity implies that the complement of the set of valid formulas is not semi-decidable.


What about satisfiability? The first fact to note is that a formula $A$ is satisfiable iff $\lnot A$ is not valid.

This implies that also satisfiability is not decidable. If it were so, checking a formula $A$ for satisfiability we will have that, if the answer is No, that $\lnot A$ is valid, and if the answer is Yes, then $\lnot A$ is not valid.

0

Validity and satisfiability are either equally complicated or incomparably complicated, depending on how we compare complexities (i.e. many-one reductions or Turing reductions); basically, they're "dual" to each other, since $\varphi$ is valid iff $\neg\varphi$ is not satisfiable. Granted, in a sense semidecidability (or recursive enumerability, or computable enumerability) is more natural than "co-semidecidability" (or co-r.e.-ness, or co-c.e.-ness), but this doesn't really translate to a genuine "simpler than" comparison.

Now what about model checking? After all, a sentence is satisfiable iff it has a model, so shouldn't we be able to positively test for satisfiability by searching through all possible models? Well, this works for finite models. However, most models aren't finite: there are lots of sentences which are satisfiable but have no finite models. How are we supposed to search through all possible infinite models?

The fact that we're allowing infinite models as well as finite models makes both satisfiability and validity seem impossibly hard. This is where the highly nontrivial completeness theorem comes in, and I've written more about this here.

Incidentally, if we do restrict attention to finite models only, the situation reverses: satisfaction is semidecidable but not co-semidecidable, and validity is co-semidecidable but not semidecidable (see Trakhtenbrot's theorem). Finite model theory is a very different thing from infinite model theory!

Noah Schweber
  • 245,398
  • Thanks for your answer, it really helps a lot, but still if I may ask, is it right to say that decidable problem is easier than semi-decidable one, and semi-decidable one is easier than undecidable one? And which one (satisfiability and validity) is more difficult in finite model theory or if not restricted to finite model theory, or such a comparison does not make any sense? – Li Danyuan Apr 09 '21 at 13:33
  • Hi, I read your answer here. You wrote there ''telling whether every model of T satisfies φ can be easier than telling if a specific model of T satisfies φ', I think this is so counterintuitive and is exatly what I'm confused with. – Li Danyuan Apr 09 '21 at 14:22