  Gate set tomography (GST) is a protocol for detailed, predictive
characterization of logic operations (gates) on quantum computing processors.
Early versions of GST emerged around 2012-13, and since then it has been
refined, demonstrated, and used in a large number of experiments. This paper
presents the foundations of GST in comprehensive detail. The most important
feature of GST, compared to older state and process tomography protocols, is
that it is calibration-free. GST does not rely on pre-calibrated state
preparations and measurements. Instead, it characterizes all the operations in
a gate set simultaneously and self-consistently, relative to each other. Long
sequence GST can estimate gates with very high precision and efficiency,
achieving Heisenberg scaling in regimes of practical interest. In this paper,
we cover GST's intellectual history, the techniques and experiments used to
achieve its intended purpose, data analysis, gauge freedom and fixing, error
bars, and the interpretation of gauge-fixed estimates of gate sets. Our focus
is fundamental mathematical aspects of GST, rather than implementation details,
but we touch on some of the foundational algorithmic tricks used in the pyGSTi
implementation.
