qat.tomo.core.process_tomography_data
- qat.tomo.core.process_tomography_data(method, prep_gates, meas_gates, G_tilde, G_tilde_err_sq, g_tilde, E_tilde, rho_tilde, nqbits, target_gates_spec=None, gate_list=None, enforce_CP=False, enforce_TP=False, meas_weight=0.5, verbose=False)
Process tomography data of a QPU.
Three tomography methods are supplied:
Linear inversion Quantum Process Tomography (‘lqpt’),
Maximum Likelihood Quantum Process Tomography (‘mlqpt’), and
Linear inversion Gateset Tomography (‘lgst’).
- Parameters
method (string) – type of tomography (lqpt|mlqpt|lgst)
prep_gates (list<list<pair<string, int>>>) – list of gate sequences for state preparation (\(>= d^2\)), with \(d = 2^{n_\mathrm{qbits}}\)
meas_gates (list<list<pair<string, int>>>) – list of gate sequences for measurement (\(>= d^2\))
G_tilde (list<np.array>) – \(\{ \tilde{G}^{(k)}\}_k\), with \(\tilde{G}^{(k)}_{i,j} = d\ll E|F_{i}'G_{k}F_{j}|\rho\gg\)
G_tilde_err_sq (list<np.array>) – \(\{(\Delta \tilde{G}^{(k)})^2 \}_k\)
g_tilde (np.array) – \(g\) with \(g_{ij} = d\ll E|F_{i}'F_{j}|\rho\gg\)
g_tilde_err_sq (np.array) – \(\Delta g^2\)
E_tilde (np.array) – \(\tilde{E}\) with \(\tilde{E}_{j}=d\ll E|F_{j}'|\rho\gg\)
E_tilde_err_sq (np.array) – \(\Delta \tilde{E}^2\)
rho_tilde (np.array) – \(\tilde{\rho}\) with \(\tilde{\rho}_{i}=d\ll E|F_{i}|\rho\gg\)
rho_tilde_err_sq (np.array) – \(\Delta \tilde{\rho}^2\)
nqbits (int) – arity of gates on which tomography is applied
target_gates_spec (GatesSpecification, optional) – ideal/target gates specification. Required for QPT methods.
gate_list (list<string>, optional) – list of gates to be tomographed. If None, make tomography of all gates in target_gates_spec
enforce_CP (bool) – whether to enforce complete-positive character. Implemented in ‘mlqpt’ (not yet implemented for GST methods)
enforce_TP (bool) – whether to enforce trace-preserving character (implemented by fixing some PTM elements in ‘mlqpt’, and by gauge-fixing in ‘lgst’)
meas_weight (float, optional) – relative weight of measurement part \(w\) when enforcing TP by gauge-fixing. Defaults to 0.5.
verbose (bool) – verbose output
- Returns
the output gates specification (with channels in QuantumChannelPTM form)
- Return type
Note
gate names in prep_gates, meas_gates, gate_list have to be consistent with those of the qpu and target_gates_spec
Note
This method is available as an application in Qaptiva Access.