  The theory of spin models intersects with condensed matter physics, complex
systems, graph theory, combinatorial optimization, computational complexity and
neural networks. Many ensuing applications rely on the fact that complicated
spin models can be transformed to simpler ones. What is the structure of such
transformations? Here, we provide a framework to study and construct emulations
between spin models. A spin model is a set of spin systems, and emulations are
efficiently computable simulations with arbitrary energy cut-off, where a
source spin system simulates a target system if, below the cut-off, the target
Hamiltonian is encoded in the source Hamiltonian. We prove that emulations
preserve important properties, as they induce reductions between computational
problems such as computing ground states, approximating partition functions and
approximate sampling from Boltzmann distributions. Emulations are modular (they
can be added, scaled and composed), and allow for universality, i.e. certain
spin models have maximal reach. We prove that a spin model is universal if and
only if it is scalable, closed and functional complete. Because the
characterization is constructive, it provides a step-by-step guide to construct
emulations. We prove that the 2d Ising model with fields is universal, for
which we also provide two new crossing gadgets. Finally, we show that
simulations can be computed by linear programs. While some ideas of this work
are contained in [1], we provide new definitions and theorems. This framework
provides a toolbox for applications involving emulations of spin models.
