3

Let $P(k)$ be a well formulated mathematical statement (in the FOL language of ZFC) involving $k\in \mathbb{N}$. Suppose I want to show that $P(k)$ holds for all $1\leq k \leq m$ for some fixed $m\in \mathbb{N}$.

One approach is to use induction. To do this I can define $A=\{ k \in \mathbb{N} :1\leq k \leq m \wedge P(k) \}$ and $B=\{ k \in \mathbb{N}: n> m \}$. I can then show that $A\cup B = \mathbb{N}$ by mathematical induction and obtain the result.

But another approach (e.g. Induction on finite subset of natural numbers) says that we don't need induction in this case. The idea being that if you can show that $P(1)$ holds and that $P(k)\implies P(k+1)$ holds for all $1\leq k <m$ then you can apply modus ponens a finite number of times to obtain the result.

I know that the first proof can be written in formal language but am not sure about the second approach. The problem seems to be the sentence "apply modus ponens a finite number of times to obtain the result" because it is not clear to me how this can be formalized in FOL.

Is the second approach really valid?

EDIT. In fact using the second approach I can prove the PMI itself:

Suppose $P(1)$ holds and that $P(k)\implies P(k+1)$ for all $k \in \mathbb{N}$. Assume there exist $m \in \mathbb{N}$ such that $P(m)$ does not hold. Applying modus ponens $m$ times I deduce that $P(m)$ holds, a contradiction. Hence $P(k)$ holds for all $k \in \mathbb{N}$.

Alphie
  • 4,740
  • It does seem to me that the most highly voted answer to the question you reference merely shows that you have a separate proof for each $k\leqslant m$ of $P(k)$. I think to get a (single) proof of $(\forall k)[k\leqslant m \to P(k)]$ you need the principle of induction. – ancient mathematician Jun 16 '20 at 11:31
  • If you know that $P(1)$ and $P(k)\implies P(k+1)$ for all $1 \leq k < m$ hold, then by applying modus ponens repeatedly you can obtain in a single proof that $P(1), P(2), \dots, P(m)$ also hold, and therefore $(\forall k)[k\leqslant m \to P(k)]$ follows. – Rick Jun 16 '20 at 15:22
  • @Rick But using this approach I can prove the PMI itself : Suppose $P(1)$ and $P(k) \implies P(k+1)$ for all $k$ but there exist $m$ such that $P(m)$ does not hold. Then applying modus ponens $m$ times yields $P(m)$, a contradiction. Hence $P(k)$ holds for all $k$. – Alphie Jun 16 '20 at 15:34
  • @Alphie Sure, but you are assuming something different in this case, namely that $P(k) \implies P(k+1)$ holds for all $k$ instead of for all $1 \leq k < m$; in particular, you cannot prove the PMI assuming that $P(1)$ and $P(k) \implies P(k+1)$ hold for all $1 \leq k < m$. – Rick Jun 16 '20 at 15:48
  • @Rick True, but isn't it problematic to be able to prove the PMI? After all induction is supposed to be a consequence of the axioms of ZFC, not something we should be able to prove inside the system. – Alphie Jun 16 '20 at 15:51
  • 2
    @Alphie As you just said, induction is a consequence of the axioms of $\sf ZFC$; in particular, this means that it is neither an axiom nor an inference rule, but just another theorem. – Rick Jun 16 '20 at 15:57
  • @Rick Ok but it's a theorem that requires the full power of the axiom of infinity. Not something I should be able to prove without any assumption. The elementary proof I gave using the second approach dosen't make any assumption. – Alphie Jun 16 '20 at 16:19
  • There is indeed a subtlety around that second proof! As written, what's really being argued is the provability, rather than truth, of the goal sentence; that is, the conclusion is "There is a proof of [thing]" rather than "[thing] is true." This may seem like a silly distinction, but it's actually quite important once we're paying attention to logical issues. For example, a consequence of Godel's incompleteness theorem is that the theory $\mathsf{ZFC}$ + "$\mathsf{ZFC}$ is inconsistent" proves that it proves everything (continued) – Noah Schweber Jun 17 '20 at 15:30
  • but doesn't actually prove everything (assuming $\mathsf{ZFC}$ is consistent in the first place)! Indeed, any theory which proves "Everything I prove is true" is ... inconsistent. :P See e.g. here for some discussion of this sort of weirdness. – Noah Schweber Jun 17 '20 at 15:30
  • 1
    @NoahSchweber I agree. When we argue about provability we do it in the metalanguage which is outside the formal logic of FOL. When we say apply modus ponens $n$ times the symbol $n$ is not an object of ZFC but a character of the metalanguage used to indicate what we intuitively understand to be a natural number. – Alphie Jun 17 '20 at 15:58
  • @NoahSchweber Hence would you agree that the second argument is not a formal proof but merely an informal argument in the metalanguage suggesting that there exist a formal proof in FOL? – Alphie Jun 17 '20 at 16:03
  • To formalise the proof in FOL, it would be sufficient to just write the modus ponens proofs out explicitly (in which case there would be $m$ of them). Then since the property $P$ is true for all of them, domain closure holds, and $P(k)$ if true for all $k$ in $m$. http://intrologic.stanford.edu/sections/section_11_02.html – user400188 Jun 18 '20 at 09:04

1 Answers1

1

In a finite domain of discourse (with say, $k$ objects), the notion of induction $(1)$, can be captured in the form of $(2)$, which is a lists finite set of implications, and a single base case, as premises.

$$p(1),\forall n.\big(p(n)\implies p(n+1)\big)\vdash \forall n. p(n)\tag{1}$$

$$p(x_1),\big(p(x_1)\implies p(x_2)\big),\dots,\big(p(x_{k-1})\implies p(x_k)\big)\vdash \forall x. p(x)\tag{2}$$

To show that $(2)$ is a valid rule of inference (in a finite language*), it is sufficient to construct a formal proof from its premises to its conclusion. This is done by applying modus ponens to each of the implications, then applying domain closure to get the desired result.

\begin{align} &1.&p(x_1)&~~~~\text{P}\\ &2.&p(x_1)\implies p(x_2)&~~~~\text{P}\\ &&\dots\\ &k.&p(x_{k-1})\implies p(x_{k})&~~~~\text{P}\\ &k+1.&p(x_2)&~~~~\text{Modus ponens } 1,k-1\\ &&\dots\\ &2k-1.&p(x_k)&~~~~\text{Modus ponens } 2k-3,2k-2\\ &2k.&\forall x.\big(p(x)\big)&~~~~\text{Domain closure } 1,k+1,\dots,2k-1 \end{align}


For instance, in a language with just $3$ objects, abby, bess, cody, we can write:

\begin{align} &1.&p(abby)&~~~~\text{P}\\ &2.&p(abby)\implies p(bess)&~~~~\text{P}\\ &3.&p(bess)\implies p(cody)&~~~~\text{P}\\ &4.&p(bess)&~~~~\text{Modus ponens } 1,2\\ &5.&p(cody)&~~~~\text{Modus ponens } 3,4\\ &6.&\forall x.\big(p(x)\big)&~~~~\text{Domain closure } 1,4,5 \end{align}


Edit: You can apply this same technique to a finite set, but you need to specify the set in question.

\begin{align} &0.&X=\{abby,bess,cody\}&~~~~\text{P}\\ &1.&p(abby)&~~~~\text{P}\\ &2.&p(abby)\implies p(bess)&~~~~\text{P}\\ &3.&p(bess)\implies p(cody)&~~~~\text{P}\\ &4.&p(bess)&~~~~\text{Modus ponens } 1,2\\ &5.&p(cody)&~~~~\text{Modus ponens } 3,4\\ &6.&\forall x\in X.\big(p(x)\big)&~~~~1,4,5 \end{align}

user400188
  • 1,936
  • OK but ZFC is not a finite language (e.g. axiom of infinity). – Alphie Jun 18 '20 at 13:07
  • You can apply the same technique to a finite set, you just need to specify at the start what the set consists of, and at the end that property $p$ applies to all $x$ in the set you are talking about. – user400188 Jun 18 '20 at 13:17