Substitution Instance of Term is Term

Theorem
Let $\beta, \tau$ be terms of predicate logic.

Let $x \in \mathrm{VAR}$ be a variable.

Let $\beta \left({x \gets \tau}\right)$ be the substitution instance of $\beta$ substituting $\tau$ for $x$.

Then $\beta \left({x \gets \tau}\right)$ is a term.

Proof
Proceed by the Principle of Structural Induction on the definition of term, applied to $\beta$.

If $\beta = y$ for some variable $y$, then:


 * $\beta \left({x \gets \tau}\right) = \begin{cases} \tau &: \text{if $y = x$} \\ y &: \text{otherwise} \end{cases}$

In either case, $\beta \left({x \gets \tau}\right)$ is a term.

If $\beta = f \left({\tau_1, \ldots, \tau_n}\right)$ and the induction hypothesis holds for $\tau_1, \ldots, \tau_n$, then:


 * $\beta \left({x \gets \tau}\right) = f \left({ \tau_1 \left({x \gets \tau}\right), \ldots, \tau_n \left({x \gets \tau}\right) }\right)$

By the induction hypothesis, each $\tau_i \left({x \gets \tau}\right)$ is a term.

Hence so is $\beta \left({x \gets \tau}\right)$.

The result follows by the Principle of Structural Induction.