Induction proof: $S$ contains powers of 2 and predecessors implies $S={\bf N}$

Hint $\ $ If one views this as a sort of interval (or segment) induction, then it becomes obvious, namely $\Bbb N$ is the only unbounded initial segment of $\Bbb N.$ Below is the simple proof.

Lemma $\rm\ S\subset \mathbb N\:$ satisfies $\rm\:n+1\in S\:\!\Rightarrow n \in S\,\ $ iff $\rm\,\ S\:$ is an initial segment of $\:\mathbb N$

Proof $ $ (hint) $ $ If $\rm\:S\ne \mathbb N\:$ then $\rm\:S = [0,m)\:$ for the least $\rm\:m\not\in S,\:$ since by induction, nonmembership ascends from $\rm\:m\:$ by $\rm\:n\not\in S\:\Rightarrow\:n+1\not\in S\:$ (contrapositive of the hypothesis).

Corollary $ $ If, additionally, $\rm\:S\:$ is unbounded then $\rm\:S = \mathbb N$

In your case, $\rm\,S\,$ is an initial segment by your second hypothesis and the Lemma, and $\rm\: S\ne \{\ \}\:$ is unbounded via the hypothesis $\rm\:n\in \Bbb N\:\Rightarrow\:2^n\in S.$ Therefore, by the corollary, $\rm\, S = \Bbb N.$

Notice how abstracting the matter set-theoretically helps to make clearer the key structure.

See also this closely related question, where it is referred to as Cauchy's method of induction. Sometimes it is called back-and-forth induction. It occurs frequently in competition problems.


$$(1)\,\,2^1=2\in S\Longrightarrow 2-1=1\in S$$ $$(2)\,\,\text{Suppose }\,\,m\in S\,\,,\,\forall\, m<n$$ Let now $\,t\in\Bbb N\,$ be s.t. $\,2^{t-1}<n\leq 2^t\,$ : $$2^t\in S\Longrightarrow 2^t-1\in S\Longrightarrow 2^t-1-1=2^t-2\in S,...$$ After no more than $\,2^{t-1}\,$ steps as above, we'll reach $\,2^t-h=n\in S\,,\,0\leq h<2^{t-1}\,$ , and we're done.

Now brush this up a little and formalize.