Definition. Simulation of computability models [math-QAL6]

Higher-Order Computability

Let CC and DD be computability models with types indexed by T,UT, U respectively. A simulation γ\gamma of CC in DD (denotes C▹DC \triangleright D) consists of

  1. a mapping associating each type τ∈T\tau \in T a representing type γτ∈U\gamma \tau \in U;
  2. for each τ∈T\tau \in T, a relation ⊩τγ\Vdash^\gamma_\tau between elements of D(γτ)D(\gamma \tau) and those of C(τ)C(\tau).

subject to the following conditions

  1. For each τ∈T\tau \in T and each a∈C(τ)a \in C(\tau), there is some a′∈D(γτ)a' \in D(\gamma\tau) such that a′⊩τγaa' \Vdash^\gamma_\tau a.
  2. Every operation f∈C[σ,τ]f \in C[\sigma, \tau] is tracked by some f′∈D[γσ,γτ]f' \in D[\gamma\sigma, \gamma\tau], i.e. if f(a)f(a) is defined and a′⊩τγaa' \Vdash^\gamma_\tau a, then f′(a′)f'(a') is defined and f′(a′)⊩τγf(a)f'(a') \Vdash^\gamma_\tau f(a).

Example T1T_1 and T2T_2 [local-0]

See models of Turing machine.

By definition of T2T_2, a simulation T2▹T1T_2 \triangleright T_1 is given. If n∈Nn \in \N and mm is a memory state, we take

m⊩nm \Vdash n

iff mm represents nn in the sense we have defined. Every operation in T2T_2 is tracked by one in T1T_1.

We cannot have a simulation T1▹T2T_1 \triangleright T_2, because there are uncountably many memory states. But there is a simulation for variant of T1T_1, by restricting T1T_1's memory states to those with a designated blank symbol in all but finitely many cells. Such memory states can be coded as natural numbers, and the action of any Turing machine may then be emulated by a partial computable function N⇀N\N \rightharpoonup \N. We thus obtain a simulation T1fin▹T2T_1^\text{fin} \triangleright T_2.