Is this proof that every strictly increasing $f\colon\mathbb{R\to R}$ is injective flawed?

I wouldn't say the proof is very well written, but it is logically correct. The definition of an increasing function is $$\hbox{if}\quad x_1<x_2\quad\hbox{then}\quad f(x_1)<f(x_2)\ .$$ As you point out, the converse of an implication is not logically equivalent to the original implication. So we cannot assume without proof that the converse is true.

However, this proof uses not the converse but the contrapositive, $$\hbox{if}\quad f(x_1)\not<f(x_2)\quad\hbox{then}\quad x_1\not<x_2\ ,$$ which is equivalent to the definition and is therefore automatically true. Thus:

  • assume $f(x_1)=f(x_2)$;
  • then $f(x_1)\not<f(x_2)$;
  • so $x_1\not<x_2$;
  • so $x_1\ge x_2$

and so on. Alternatively, you could view it as a proof by contradiction: let $f(x_1)=f(x_2)$; suppose $x_1<x_2$; since $f$ is increasing, we have $f(x_1)<f(x_2)$; but this is not true; so $x_1\ge x_2$.

Comment. In this case you can use the definition of an increasing function to show that the converse of the definition actually is true (try it). However as far as I can see it doesn't help you with the current problem.


$P\implies Q$ implies (and classically is equivalent to) $\neg Q \implies \neg P$. The latter formula is called the contrapositive of the former. So from $x < y \implies f(x)<f(y)$ we get $\neg(f(x)<f(y))\implies\neg(x<y)$. That is, $f(x)\geq f(y)\implies x\geq y$.

In this case, we have the assumption $f(x_1)=f(x_2)$. This implies $\neg(f(x_1)<f(x_2))$, i.e. $f(x_1)\geq f(x_2)$. We can thus use the contrapositive to infer $\neg(x_1<x_2)$ or $x_1\geq x_2$. Now swap $x_1$ and $x_2$ and use the same argument and we get $x_2\geq x_1$. Thus $x_2=x_1$.