I'm reading "A Friendly Introduction to Mathematical Logic - Christopher C. Leary" and there is an exercise (in page 36) saying "Show that if $t$ is variable-free, then $t$ is always substitutable for $x$ in $\phi$".
Substitutability defined in the book like this:
We say that $t$ is substitutable for $x$ in $\phi$ if
$\phi$ is atomic, or
$\phi :\equiv\neg\left(\alpha\right)$ and $t$ is substitutable for $x$ in $\alpha$, or
$\phi :\equiv \left(\alpha\vee\beta\right)$ and $t$ is substitutable for $x$ in both $\alpha$ and $\beta$, or
$\phi :\equiv \left(\forall y\right)\left(\alpha\right)$ and either
(a) $x$ is not free in $\phi$, or
(b) $y$ does not occur in $t$ and $t$ is substitutable for $x$ in $\alpha$.
I think the sentence we have to show is wrong. If we look at the sentence "$\phi :\equiv \left(\forall x\right)\left(2x<x\right)$" and if $t$ is $0$, then $t$ is variable-free but it is not substitutable for $x$ in $\phi$. Problem is that both 4.a and 4.b are correct, but one of them must be wrong.
Am I missing something?
It seems that the whole misunderstanding comes down to the meaning of the phrase "either ... or ...".
In mathematical writing, "either $P$ or $Q$" means the same thing as "$P$ or $Q$". In particular, it is true if both $P$ and $Q$ are true.
In your example, condition 4(a) is true, so $t$ is substitutable for $x$. Also, 4(b) is true, so that's another reason why $t$ is substitutable for $x$.