1

Suppose we have an algorithm which, given a set of axioms $A$ and a sentence $P$ can prove if $A \implies P$. Would such algorithm be able to prove any possible theorem implied by these axioms? Is Gödel's theorem on incompletness relevant here?

EDIT: Seems the question got a bit misunderstood. I'm only interested in getting answers (tautology/unprovable/contradiction) on some particular theorems (sentences) given by the input, not a list of all possible sentences (which would be infinite in size, unless we reject equivalent sentences). (I am a CS student and a newbie to predicate logic/general low-level math).

  • 2
    There is no such algorithm that is guaranteed to terminate on every input. But there is an algorithm which, if $P$ is a theorem, will eventually provide a proof. – André Nicolas Jul 28 '16 at 00:35
  • Enumerating every theorem isn't so hard. Deciding if something is a theorem is hard. – Milo Brandt Jul 28 '16 at 00:40
  • 1
    For some axiom systems $A$, there is such an algorithm. Then your condition says that the algorithm can identify all theorems of $A$. You implicitly assume that the axioms of $A$ are given by a finite list, since you are using $\implies$. That condition can be weakened. – André Nicolas Jul 28 '16 at 01:45
  • Editted the question. – Logarytm Całkowy Jul 28 '16 at 05:56
  • Then you need to learn logic. There is simply no way you can hope to understand things about provability if you don't even know first-order logic. See http://math.stackexchange.com/a/1684208/21820 for some free online resources. Right now your question really makes no sense. As I said in my answer your first sentence is false. – user21820 Jul 28 '16 at 06:20
  • And listing in computability theory just means outputting them one by one. It does not need to finish. – user21820 Jul 28 '16 at 06:21
  • You need to clarify what you mean when you say an algorithm "proves" something. An algorithm takes in input and gives an output. There are various ways you might interpret this as telling you something about proofs, but it is unclear what you have in mind. – Eric Wofsey Jul 28 '16 at 06:30

1 Answers1

0

The problem is that your assumption is false, when $A$ is simply PA (due to Godel's incompleteness theorem) and so you can deduce everything. In particular, your hypothetical algorithm will both halt and not halt.

On the other hand, you don't need your hypothetical algorithm at all, if all you want is to list out all theorems provable from $A$. Simply go through all proofs in length-lexicographic order and check if it is correct, and output the proven theorem (if not already output before).

However, if you want you can consider an oracle (not an algorithm) that decides whether $A \vdash φ$ given any decider (deciding algorithm) for $A$ and sentence $φ$. Then you can ask the question of whether you can use the oracle to do things. For one, you can use it to solve the halting problem.

user21820
  • 57,693
  • 9
  • 98
  • 256
  • My answer assumes that $A$ is given as a decider for the axioms (a program that decides whether a sentence is an axiom or not). Even if you restrict $A$ to be a finite set, the assumption is still false because Robinson's arithmetic Q has finitely many axioms but is strong enough for Godel's incompleteness theorem to apply. – user21820 Jul 28 '16 at 06:24