Because the quantum simulation principle is shared among many algorithms, one subroutine, which we term the quantum simulation kernel in this paper, appears frequently in quantum programs.
This kernel is to implement the operator (controlled-)\({\rm exp}({\rm i}Ht)\)  where \(H\)  is the Hamiltonian of the simulated system
and \(t \in \mathbb {R}\)  is system evolution time. Since it is hard in general to directly compile \({\rm exp}({\rm i}Ht)\)  into executable single- and two-qubit gates,
a compiler usually decomposes \(H\)  into the sum of local Hamiltonians [1]} (simulation of which can be easily compiled to basic gates) and then synthesize them one-by-one.
Consequently,
the quantum simulation kernel will be compiled to a very long gate sequence and constitute the vast majority of cost in post-compilation quantum programs.
