#### SEMI-DECIDABILITY

Definition: The proof algorithm |- is complete if whenever KB |= A then KB |- A in finite time.

Here |= means logical entailment, which is a semantic notion, while |- means provability, which is a syntactic, i.e. algorithmic notion.  Completeness says that if A is true, then it can be proved eventually.

Given KB and A, it may be the case that KB |= A is not true and also KB |= ~A is also not true.  Completeness says nothing about this case, where neither A nor ~A is entailed by KB, that is KB leaves the truth value of A unsettled.

Definition: The proof algorithm |- is refutation-complete if whenever KB |= A then KB union { ~A} |- false eventually, in finite time.

Theorem: Resolution is refutation-complete.

This theorem says that if KB entails A, then resolution will demonstrate this fact eventually.  Again, nothing is said about the case where neither A nor ~A is entailed by KB.

Definition: The entailment relation |= is semi-decidable if a complete proof algorithm exists for it, while it is decidable if a proof algorithm exists that is complete and also always terminates in finite time.

Gödel's completeness theorem: First-order logic entailment |= is semi-decidable.
Gödel's incompleteness theorem: First-order logic entailment |= is not decidable.

Corollary: If A is not entailed by KB then resolution applied to KB union {~A} may fail to terminate.

Definition: A control strategy for resolution is complete if its use preserves refutation-completeness, i.e. if false can be proved, it can be proved while respecting the strategy.

Copyright (c) by Charles Elkan, 2001.