User:CircuitCraft/Emulation Theorem

Theorem
Let $M = \struct {S, \vdash}$ and $M' = \struct {S', \vdash'}$ be abstract machines.

Let there exist a mapping $\phi: S \to S'$.

Suppose that, for any $s, s' \in S$ such that $s \vdash s'$:
 * $\map \phi {s'}$ is reachable from $\map \phi s$ in $M'$

Then for any $a, b \in S$ such that $b$ is reachable from $a$ in $M$:
 * $\map \phi b$ is reachable from $\map \phi a$ in $M'$

Proof
By definition of reachable, there is a finite sequence:
 * $a = s_0 \vdash s_1 \vdash \dotso \vdash s_n = b$

By hypothesis, $\map \phi {s_i}$ is reachable from $\map \phi {s_{i - 1} }$ for every $1 \le i \le n$.

Therefore, by definition of reachable, there is a finite sequence:
 * $\map \phi {s_{i - 1} } = t_{i,0} \vdash' t_{i,1} \vdash' \dotso \vdash' t_{i,m_i} = \map \phi {s_i}$

Thus, the following finite sequence holds:
 * $\map \phi a = t_{1,0} \vdash' t_{1,1} \vdash' \dotso \vdash' t_{1,m_1} = t_{2,0} \vdash' \dotso \vdash' t_{n - 1,m_{n - 1} } = t_{n,0} \vdash' \dotso \vdash' t_{n,m_n} = \map \phi b$

Hence the result.