Quantum gate synsthesis and compiling

To run a program on any computing platform, it is necessary to decompose its higher-level logical operations into more elementary ones, and eventually translate those into the native instruction set of the platform at hand. This process is called “compiling”. Already for classical computers, this is a non-trivial task: The performance of the compiled program depends not only on the optimizations done by the compiler, but also on the available instructions and how well they are implemented on the hardware level.

Conversely, give a set of interactions of a quantum device, one can use them to build more useful instructions, i.e., synthesize quantum gates.

For an example of quantum gate synthesis and compiling with non-local fixed Ising-type interactions see https://arxiv.org/abs/2206.06387.