Verification (qiskit.ignis.verification)¶

Quantum Volume¶

 qv_circuits(qubit_lists[, ntrials, qr, cr, seed]) Return a list of square quantum volume circuits (depth=width) QVFitter([backend_result, …]) Class for fitters for quantum volume.

Randomized Benchmarking¶

Randomization benchmarking (RB) is a well-known technique to measure average gate performance by running sequences of random Clifford gates that should return the qubits to the initial state. Qiskit Ignis has tools to generate one- and two-qubit gate Clifford RB sequences simultaneously, as well as performing interleaved RB, purity RB and RB on the non-Clifford CNOT-Dihedral group.

 randomized_benchmarking_seq([nseeds, …]) Generate generic randomized benchmarking (RB) sequences. RBFitter(backend_result, cliff_lengths[, …]) Class for fitters for randomized benchmarking. InterleavedRBFitter(original_result, …[, …]) Class for fitters for interleaved RB, derived from RBFitterBase class. PurityRBFitter(purity_result, npurity, …) Class for fitter for purity RB. CNOTDihedralRBFitter(cnotdihedral_Z_result, …) Class for fitters for non-Clifford CNOT-Dihedral RB. CNOTDihedral(data[, validate]) CNOT-dihedral Object Class. count_gates(qobj, basis, qubits) Take a compiled qobj and output the number of gates in each circuit. gates_per_clifford(transpiled_circuits_list, …) Take a list of transpiled QuantumCircuit and use these to calculate the number of gates per Clifford. calculate_1q_epg(gate_per_cliff, epc_1q, qubit) Convert error per Clifford (EPC) into error per gates (EPGs) of single qubit basis gates. calculate_2q_epg(gate_per_cliff, epc_2q, …) Convert error per Clifford (EPC) into error per gate (EPG) of two qubit cx gates. calculate_1q_epc(gate_per_cliff, epg_1q, qubit) Convert error per gate (EPG) into error per Clifford (EPC) of single qubit basis gates. calculate_2q_epc(gate_per_cliff, epg_2q, …) Convert error per gate (EPG) into error per Clifford (EPC) of two qubit cx gates. coherence_limit([nQ, T1_list, T2_list, gatelen]) The error per gate (1-average_gate_fidelity) given by the T1,T2 limit. twoQ_clifford_error(ngates, gate_qubit, gate_err) The two qubit Clifford gate error given measured errors in the primitive gates used to construct the Clifford (see arxiv:1712.06550).

Tomography¶

 state_tomography_circuits(circuit, …[, …]) Return a list of quantum state tomography circuits. process_tomography_circuits(circuit, …[, …]) Return a list of quantum process tomography circuits. Return a list of quantum gate set tomography (GST) circuits. basis Quantum tomography basis StateTomographyFitter(result, circuits[, …]) Maximum-Likelihood estimation state tomography fitter. ProcessTomographyFitter(result, circuits[, …]) Maximum-Likelihood estimation process tomography fitter. GatesetTomographyFitter(result, circuits[, …]) Initialize gateset tomography fitter with experimental data. TomographyFitter(result, circuits[, …]) Base maximum-likelihood estimate tomography fitter class marginal_counts(counts[, meas_qubits, pad_zeros]) Compute marginal counts from a counts dictionary. combine_counts(counts1, counts2) Combine two counts dictionaries. expectation_counts(counts) Converts count dict to an expectation counts dict. count_keys(num_qubits) Return ordered count keys.

Entanglement¶

 BConfig(backend[, indicator]) This class is used to create a GHZ circuit with parallellized CNOT gates to increase fidelity get_ghz_simple(n[, measure, full_measurement]) Creates a linear GHZ state with the option of measurement get_ghz_mqc(n, delta[, full_measurement]) This function creates an MQC circuit with n qubits, where the middle phase rotation around the z axis is by delta get_ghz_mqc_para(n[, full_measurement]) This function creates an MQC circuit with n qubits, where the middle phase rotation around the z axis is parameterized get_ghz_po(n, delta) This function creates an Parity Oscillation circuit with n qubits, where the middle superposition rotation around the x and y axes is by delta This function creates a Parity Oscillation circuit with n qubits, where the middle superposition rotation around ordered_list_generator(counts_dictionary, qn) For parity oscillations; just arranges dictionary of counts in bitwise binary order to compute dot products more easily Generates n tensored pauli z matrix upon input of qubit number composite_pauli_z_expvalue(counts_dictionary, qn) Generates expectation value of n tensored pauli matrix upon input of qubit number and composite pauli matrix Plotter(label) Various plots of the ground state in MQC and PO experiments Get fidelity given rho :type rho: float :param rho: The density matrix

Topological Codes¶

 RepetitionCode(d[, T]) Implementation of a distance d repetition code, implemented over T syndrome measurement rounds. GraphDecoder(code[, S]) Class to construct the graph corresponding to the possible syndromes of a quantum error correction code, and then run suitable decoders. lookuptable_decoding(training_results, …) Calculates the logical error probability using postselection decoding. postselection_decoding(results) Calculates the logical error probability using postselection decoding.

Accreditation¶

 AccreditationCircuits(target_circ[, …]) This class generates accreditation circuits from a target. Class for fitters for accreditation QOTP(circ, num[, two_qubit_gate, …]) Performs a QOTP (or random compilation) on a generic circuit. QOTPCorrectCounts(qotp_counts, qotp_postp) Corrects a dictionary of results, shifting the qotp