98 lines
16 KiB
Plaintext
98 lines
16 KiB
Plaintext
---
|
||
title: verification
|
||
description: API reference for qiskit.ignis.verification
|
||
in_page_toc_min_heading_level: 2
|
||
python_api_type: module
|
||
python_api_name: qiskit.ignis.verification
|
||
---
|
||
|
||
<span id="module-qiskit.ignis.verification" />
|
||
|
||
<span id="qiskit-ignis-verification" />
|
||
|
||
# Verification
|
||
|
||
<span id="module-qiskit.ignis.verification" />
|
||
|
||
`qiskit.ignis.verification`
|
||
|
||
## Quantum Volume
|
||
|
||
| | |
|
||
| -------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------- |
|
||
| [`qv_circuits`](qiskit.ignis.verification.qv_circuits "qiskit.ignis.verification.qv_circuits")(qubit\_lists\[, ntrials, qr, cr, seed]) | Return a list of square quantum volume circuits (depth=width) |
|
||
| [`QVFitter`](qiskit.ignis.verification.QVFitter "qiskit.ignis.verification.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`](qiskit.ignis.verification.randomized_benchmarking_seq "qiskit.ignis.verification.randomized_benchmarking_seq")(\[nseeds, …]) | Generate generic randomized benchmarking (RB) sequences. |
|
||
| [`RBFitter`](qiskit.ignis.verification.RBFitter "qiskit.ignis.verification.RBFitter")(backend\_result, cliff\_lengths\[, …]) | Class for fitters for randomized benchmarking. |
|
||
| [`InterleavedRBFitter`](qiskit.ignis.verification.InterleavedRBFitter "qiskit.ignis.verification.InterleavedRBFitter")(original\_result, …\[, …]) | Class for fitters for interleaved RB, derived from RBFitterBase class. |
|
||
| [`PurityRBFitter`](qiskit.ignis.verification.PurityRBFitter "qiskit.ignis.verification.PurityRBFitter")(purity\_result, npurity, …) | Class for fitter for purity RB. |
|
||
| [`CNOTDihedralRBFitter`](qiskit.ignis.verification.CNOTDihedralRBFitter "qiskit.ignis.verification.CNOTDihedralRBFitter")(cnotdihedral\_Z\_result, …) | Class for fitters for non-Clifford CNOT-Dihedral RB. |
|
||
| [`count_gates`](qiskit.ignis.verification.count_gates "qiskit.ignis.verification.count_gates")(qobj, basis, qubits) | Take a compiled qobj and output the number of gates in each circuit. |
|
||
| [`gates_per_clifford`](qiskit.ignis.verification.gates_per_clifford "qiskit.ignis.verification.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`](qiskit.ignis.verification.calculate_1q_epg "qiskit.ignis.verification.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`](qiskit.ignis.verification.calculate_2q_epg "qiskit.ignis.verification.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`](qiskit.ignis.verification.calculate_1q_epc "qiskit.ignis.verification.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`](qiskit.ignis.verification.calculate_2q_epc "qiskit.ignis.verification.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`](qiskit.ignis.verification.coherence_limit "qiskit.ignis.verification.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`](qiskit.ignis.verification.twoQ_clifford_error "qiskit.ignis.verification.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`](qiskit.ignis.verification.state_tomography_circuits "qiskit.ignis.verification.state_tomography_circuits")(circuit, …\[, …]) | Return a list of quantum state tomography circuits. |
|
||
| [`process_tomography_circuits`](qiskit.ignis.verification.process_tomography_circuits "qiskit.ignis.verification.process_tomography_circuits")(circuit, …\[, …]) | Return a list of quantum process tomography circuits. |
|
||
| [`gateset_tomography_circuits`](qiskit.ignis.verification.gateset_tomography_circuits "qiskit.ignis.verification.gateset_tomography_circuits")(\[…]) | Return a list of quantum gate set tomography (GST) circuits. |
|
||
| [`basis`](qiskit.ignis.verification.basis#module-qiskit.ignis.verification.basis "qiskit.ignis.verification.basis") | Quantum tomography basis |
|
||
| [`StateTomographyFitter`](qiskit.ignis.verification.StateTomographyFitter "qiskit.ignis.verification.StateTomographyFitter")(result, circuits\[, …]) | Maximum-Likelihood estimation state tomography fitter. |
|
||
| [`ProcessTomographyFitter`](qiskit.ignis.verification.ProcessTomographyFitter "qiskit.ignis.verification.ProcessTomographyFitter")(result, circuits\[, …]) | Maximum-Likelihood estimation process tomography fitter. |
|
||
| [`GatesetTomographyFitter`](qiskit.ignis.verification.GatesetTomographyFitter "qiskit.ignis.verification.GatesetTomographyFitter")(result, circuits\[, …]) | Initialize gateset tomography fitter with experimental data. |
|
||
| [`TomographyFitter`](qiskit.ignis.verification.TomographyFitter "qiskit.ignis.verification.TomographyFitter")(result, circuits\[, …]) | Base maximum-likelihood estimate tomography fitter class |
|
||
| [`marginal_counts`](qiskit.ignis.verification.marginal_counts "qiskit.ignis.verification.marginal_counts")(counts\[, meas\_qubits, pad\_zeros]) | Compute marginal counts from a counts dictionary. |
|
||
| [`combine_counts`](qiskit.ignis.verification.combine_counts "qiskit.ignis.verification.combine_counts")(counts1, counts2) | Combine two counts dictionaries. |
|
||
| [`expectation_counts`](qiskit.ignis.verification.expectation_counts "qiskit.ignis.verification.expectation_counts")(counts) | Converts count dict to an expectation counts dict. |
|
||
| [`count_keys`](qiskit.ignis.verification.count_keys "qiskit.ignis.verification.count_keys")(num\_qubits) | Return ordered count keys. |
|
||
|
||
## Entanglement
|
||
|
||
| | |
|
||
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
|
||
| [`BConfig`](qiskit.ignis.verification.BConfig "qiskit.ignis.verification.BConfig")(backend\[, indicator]) | This class is used to create a GHZ circuit with parallellized CNOT gates to increase fidelity |
|
||
| [`get_ghz_simple`](qiskit.ignis.verification.get_ghz_simple "qiskit.ignis.verification.get_ghz_simple")(n\[, measure, full\_measurement]) | Creates a linear GHZ state with the option of measurement |
|
||
| [`get_ghz_mqc`](qiskit.ignis.verification.get_ghz_mqc "qiskit.ignis.verification.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`](qiskit.ignis.verification.get_ghz_mqc_para "qiskit.ignis.verification.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`](qiskit.ignis.verification.get_ghz_po "qiskit.ignis.verification.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 |
|
||
| [`get_ghz_po_para`](qiskit.ignis.verification.get_ghz_po_para "qiskit.ignis.verification.get_ghz_po_para")(n) | This function creates a Parity Oscillation circuit with n qubits, where the middle superposition rotation around |
|
||
| [`ordered_list_generator`](qiskit.ignis.verification.ordered_list_generator "qiskit.ignis.verification.ordered_list_generator")(counts\_dictionary, qn) | For parity oscillations; just arranges dictionary of counts in bitwise binary order to compute dot products more easily |
|
||
| [`composite_pauli_z`](qiskit.ignis.verification.composite_pauli_z "qiskit.ignis.verification.composite_pauli_z")(qn) | Generates n tensored pauli z matrix upon input of qubit number |
|
||
| [`composite_pauli_z_expvalue`](qiskit.ignis.verification.composite_pauli_z_expvalue "qiskit.ignis.verification.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`](qiskit.ignis.verification.Plotter "qiskit.ignis.verification.Plotter")(label) | Various plots of the ground state in MQC and PO experiments |
|
||
| [`rho_to_fidelity`](qiskit.ignis.verification.rho_to_fidelity "qiskit.ignis.verification.rho_to_fidelity")(rho) | Get fidelity given rho :type rho: `float` :param rho: The density matrix |
|
||
|
||
## Topological Codes
|
||
|
||
| | |
|
||
| ----------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
|
||
| [`RepetitionCode`](qiskit.ignis.verification.RepetitionCode "qiskit.ignis.verification.RepetitionCode")(d\[, T, xbasis, resets, delay]) | Implementation of a distance d repetition code, implemented over T syndrome measurement rounds. |
|
||
| [`GraphDecoder`](qiskit.ignis.verification.GraphDecoder "qiskit.ignis.verification.GraphDecoder")(code\[, S, brute]) | Class to construct the graph corresponding to the possible syndromes of a quantum error correction code, and then run suitable decoders. |
|
||
| [`lookuptable_decoding`](qiskit.ignis.verification.lookuptable_decoding "qiskit.ignis.verification.lookuptable_decoding")(training\_results, …) | Calculates the logical error probability using postselection decoding. |
|
||
| [`postselection_decoding`](qiskit.ignis.verification.postselection_decoding "qiskit.ignis.verification.postselection_decoding")(results) | Calculates the logical error probability using postselection decoding. |
|
||
|
||
## Accreditation
|
||
|
||
| | |
|
||
| ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------- |
|
||
| [`AccreditationCircuits`](qiskit.ignis.verification.AccreditationCircuits "qiskit.ignis.verification.AccreditationCircuits")(target\_circ\[, …]) | This class generates accreditation circuits from a target. |
|
||
| [`AccreditationFitter`](qiskit.ignis.verification.AccreditationFitter "qiskit.ignis.verification.AccreditationFitter")() | Class for fitters for accreditation |
|
||
| [`QOTP`](qiskit.ignis.verification.QOTP "qiskit.ignis.verification.QOTP")(circ, num\[, two\_qubit\_gate, …]) | Performs a QOTP (or random compilation) on a generic circuit. |
|
||
| [`QOTPCorrectCounts`](qiskit.ignis.verification.QOTPCorrectCounts "qiskit.ignis.verification.QOTPCorrectCounts")(qotp\_counts, qotp\_postp) | Corrects a dictionary of results, shifting the qotp |
|
||
| [`QOTPCorrectString`](qiskit.ignis.verification.QOTPCorrectString "qiskit.ignis.verification.QOTPCorrectString")(qotp\_string, qotp\_postp) | Corrects a measurement string, shifting the qotp |
|
||
|