qiskit 1.0.0b1__cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- qiskit/VERSION.txt +1 -0
- qiskit/__init__.py +195 -0
- qiskit/_accelerate.abi3.so +0 -0
- qiskit/_qasm2.abi3.so +0 -0
- qiskit/assembler/__init__.py +47 -0
- qiskit/assembler/assemble_circuits.py +408 -0
- qiskit/assembler/assemble_schedules.py +372 -0
- qiskit/assembler/disassemble.py +318 -0
- qiskit/assembler/run_config.py +77 -0
- qiskit/circuit/__init__.py +425 -0
- qiskit/circuit/_classical_resource_map.py +144 -0
- qiskit/circuit/_utils.py +170 -0
- qiskit/circuit/add_control.py +274 -0
- qiskit/circuit/annotated_operation.py +188 -0
- qiskit/circuit/barrier.py +51 -0
- qiskit/circuit/bit.py +142 -0
- qiskit/circuit/classical/__init__.py +41 -0
- qiskit/circuit/classical/expr/__init__.py +218 -0
- qiskit/circuit/classical/expr/constructors.py +473 -0
- qiskit/circuit/classical/expr/expr.py +356 -0
- qiskit/circuit/classical/expr/visitors.py +280 -0
- qiskit/circuit/classical/types/__init__.py +108 -0
- qiskit/circuit/classical/types/ordering.py +222 -0
- qiskit/circuit/classical/types/types.py +117 -0
- qiskit/circuit/classicalfunction/__init__.py +131 -0
- qiskit/circuit/classicalfunction/boolean_expression.py +129 -0
- qiskit/circuit/classicalfunction/classical_element.py +54 -0
- qiskit/circuit/classicalfunction/classical_function_visitor.py +155 -0
- qiskit/circuit/classicalfunction/classicalfunction.py +173 -0
- qiskit/circuit/classicalfunction/exceptions.py +35 -0
- qiskit/circuit/classicalfunction/types.py +18 -0
- qiskit/circuit/classicalfunction/utils.py +91 -0
- qiskit/circuit/classicalregister.py +71 -0
- qiskit/circuit/commutation_checker.py +176 -0
- qiskit/circuit/controlflow/__init__.py +27 -0
- qiskit/circuit/controlflow/_builder_utils.py +199 -0
- qiskit/circuit/controlflow/break_loop.py +70 -0
- qiskit/circuit/controlflow/builder.py +651 -0
- qiskit/circuit/controlflow/continue_loop.py +72 -0
- qiskit/circuit/controlflow/control_flow.py +52 -0
- qiskit/circuit/controlflow/for_loop.py +232 -0
- qiskit/circuit/controlflow/if_else.py +517 -0
- qiskit/circuit/controlflow/switch_case.py +424 -0
- qiskit/circuit/controlflow/while_loop.py +177 -0
- qiskit/circuit/controlledgate.py +271 -0
- qiskit/circuit/delay.py +104 -0
- qiskit/circuit/duration.py +88 -0
- qiskit/circuit/equivalence.py +291 -0
- qiskit/circuit/equivalence_library.py +18 -0
- qiskit/circuit/exceptions.py +19 -0
- qiskit/circuit/gate.py +245 -0
- qiskit/circuit/instruction.py +655 -0
- qiskit/circuit/instructionset.py +191 -0
- qiskit/circuit/library/__init__.py +581 -0
- qiskit/circuit/library/arithmetic/__init__.py +27 -0
- qiskit/circuit/library/arithmetic/adders/__init__.py +17 -0
- qiskit/circuit/library/arithmetic/adders/adder.py +58 -0
- qiskit/circuit/library/arithmetic/adders/cdkm_ripple_carry_adder.py +159 -0
- qiskit/circuit/library/arithmetic/adders/draper_qft_adder.py +116 -0
- qiskit/circuit/library/arithmetic/adders/vbe_ripple_carry_adder.py +165 -0
- qiskit/circuit/library/arithmetic/exact_reciprocal.py +88 -0
- qiskit/circuit/library/arithmetic/functional_pauli_rotations.py +114 -0
- qiskit/circuit/library/arithmetic/integer_comparator.py +243 -0
- qiskit/circuit/library/arithmetic/linear_amplitude_function.py +196 -0
- qiskit/circuit/library/arithmetic/linear_pauli_rotations.py +189 -0
- qiskit/circuit/library/arithmetic/multipliers/__init__.py +16 -0
- qiskit/circuit/library/arithmetic/multipliers/hrs_cumulative_multiplier.py +138 -0
- qiskit/circuit/library/arithmetic/multipliers/multiplier.py +101 -0
- qiskit/circuit/library/arithmetic/multipliers/rg_qft_multiplier.py +101 -0
- qiskit/circuit/library/arithmetic/piecewise_chebyshev.py +353 -0
- qiskit/circuit/library/arithmetic/piecewise_linear_pauli_rotations.py +277 -0
- qiskit/circuit/library/arithmetic/piecewise_polynomial_pauli_rotations.py +317 -0
- qiskit/circuit/library/arithmetic/polynomial_pauli_rotations.py +335 -0
- qiskit/circuit/library/arithmetic/quadratic_form.py +197 -0
- qiskit/circuit/library/arithmetic/weighted_adder.py +337 -0
- qiskit/circuit/library/basis_change/__init__.py +15 -0
- qiskit/circuit/library/basis_change/qft.py +289 -0
- qiskit/circuit/library/blueprintcircuit.py +186 -0
- qiskit/circuit/library/boolean_logic/__init__.py +18 -0
- qiskit/circuit/library/boolean_logic/inner_product.py +78 -0
- qiskit/circuit/library/boolean_logic/quantum_and.py +97 -0
- qiskit/circuit/library/boolean_logic/quantum_or.py +98 -0
- qiskit/circuit/library/boolean_logic/quantum_xor.py +71 -0
- qiskit/circuit/library/data_preparation/__init__.py +47 -0
- qiskit/circuit/library/data_preparation/initializer.py +96 -0
- qiskit/circuit/library/data_preparation/pauli_feature_map.py +296 -0
- qiskit/circuit/library/data_preparation/state_preparation.py +526 -0
- qiskit/circuit/library/data_preparation/z_feature_map.py +104 -0
- qiskit/circuit/library/data_preparation/zz_feature_map.py +114 -0
- qiskit/circuit/library/evolved_operator_ansatz.py +245 -0
- qiskit/circuit/library/fourier_checking.py +97 -0
- qiskit/circuit/library/generalized_gates/__init__.py +30 -0
- qiskit/circuit/library/generalized_gates/diagonal.py +164 -0
- qiskit/circuit/library/generalized_gates/gms.py +121 -0
- qiskit/circuit/library/generalized_gates/gr.py +215 -0
- qiskit/circuit/library/generalized_gates/isometry.py +573 -0
- qiskit/circuit/library/generalized_gates/linear_function.py +302 -0
- qiskit/circuit/library/generalized_gates/mcg_up_to_diagonal.py +138 -0
- qiskit/circuit/library/generalized_gates/mcmt.py +254 -0
- qiskit/circuit/library/generalized_gates/pauli.py +85 -0
- qiskit/circuit/library/generalized_gates/permutation.py +190 -0
- qiskit/circuit/library/generalized_gates/rv.py +93 -0
- qiskit/circuit/library/generalized_gates/uc.py +304 -0
- qiskit/circuit/library/generalized_gates/uc_pauli_rot.py +164 -0
- qiskit/circuit/library/generalized_gates/ucrx.py +32 -0
- qiskit/circuit/library/generalized_gates/ucry.py +32 -0
- qiskit/circuit/library/generalized_gates/ucrz.py +32 -0
- qiskit/circuit/library/generalized_gates/unitary.py +198 -0
- qiskit/circuit/library/graph_state.py +86 -0
- qiskit/circuit/library/grover_operator.py +311 -0
- qiskit/circuit/library/hamiltonian_gate.py +146 -0
- qiskit/circuit/library/hidden_linear_function.py +98 -0
- qiskit/circuit/library/iqp.py +96 -0
- qiskit/circuit/library/n_local/__init__.py +31 -0
- qiskit/circuit/library/n_local/efficient_su2.py +162 -0
- qiskit/circuit/library/n_local/excitation_preserving.py +176 -0
- qiskit/circuit/library/n_local/n_local.py +1044 -0
- qiskit/circuit/library/n_local/pauli_two_design.py +131 -0
- qiskit/circuit/library/n_local/qaoa_ansatz.py +288 -0
- qiskit/circuit/library/n_local/real_amplitudes.py +189 -0
- qiskit/circuit/library/n_local/two_local.py +334 -0
- qiskit/circuit/library/overlap.py +111 -0
- qiskit/circuit/library/pauli_evolution.py +180 -0
- qiskit/circuit/library/phase_estimation.py +99 -0
- qiskit/circuit/library/phase_oracle.py +153 -0
- qiskit/circuit/library/quantum_volume.py +114 -0
- qiskit/circuit/library/standard_gates/__init__.py +116 -0
- qiskit/circuit/library/standard_gates/dcx.py +71 -0
- qiskit/circuit/library/standard_gates/ecr.py +114 -0
- qiskit/circuit/library/standard_gates/equivalence_library.py +1677 -0
- qiskit/circuit/library/standard_gates/global_phase.py +63 -0
- qiskit/circuit/library/standard_gates/h.py +224 -0
- qiskit/circuit/library/standard_gates/i.py +60 -0
- qiskit/circuit/library/standard_gates/iswap.py +129 -0
- qiskit/circuit/library/standard_gates/multi_control_rotation_gates.py +390 -0
- qiskit/circuit/library/standard_gates/p.py +364 -0
- qiskit/circuit/library/standard_gates/r.py +101 -0
- qiskit/circuit/library/standard_gates/rx.py +246 -0
- qiskit/circuit/library/standard_gates/rxx.py +128 -0
- qiskit/circuit/library/standard_gates/ry.py +241 -0
- qiskit/circuit/library/standard_gates/ryy.py +128 -0
- qiskit/circuit/library/standard_gates/rz.py +261 -0
- qiskit/circuit/library/standard_gates/rzx.py +174 -0
- qiskit/circuit/library/standard_gates/rzz.py +141 -0
- qiskit/circuit/library/standard_gates/s.py +303 -0
- qiskit/circuit/library/standard_gates/swap.py +246 -0
- qiskit/circuit/library/standard_gates/sx.py +268 -0
- qiskit/circuit/library/standard_gates/t.py +150 -0
- qiskit/circuit/library/standard_gates/u.py +338 -0
- qiskit/circuit/library/standard_gates/u1.py +383 -0
- qiskit/circuit/library/standard_gates/u2.py +132 -0
- qiskit/circuit/library/standard_gates/u3.py +358 -0
- qiskit/circuit/library/standard_gates/x.py +1370 -0
- qiskit/circuit/library/standard_gates/xx_minus_yy.py +179 -0
- qiskit/circuit/library/standard_gates/xx_plus_yy.py +180 -0
- qiskit/circuit/library/standard_gates/y.py +221 -0
- qiskit/circuit/library/standard_gates/z.py +294 -0
- qiskit/circuit/library/templates/__init__.py +92 -0
- qiskit/circuit/library/templates/clifford/__init__.py +33 -0
- qiskit/circuit/library/templates/clifford/clifford_2_1.py +33 -0
- qiskit/circuit/library/templates/clifford/clifford_2_2.py +34 -0
- qiskit/circuit/library/templates/clifford/clifford_2_3.py +32 -0
- qiskit/circuit/library/templates/clifford/clifford_2_4.py +33 -0
- qiskit/circuit/library/templates/clifford/clifford_3_1.py +34 -0
- qiskit/circuit/library/templates/clifford/clifford_4_1.py +37 -0
- qiskit/circuit/library/templates/clifford/clifford_4_2.py +36 -0
- qiskit/circuit/library/templates/clifford/clifford_4_3.py +37 -0
- qiskit/circuit/library/templates/clifford/clifford_4_4.py +36 -0
- qiskit/circuit/library/templates/clifford/clifford_5_1.py +39 -0
- qiskit/circuit/library/templates/clifford/clifford_6_1.py +39 -0
- qiskit/circuit/library/templates/clifford/clifford_6_2.py +39 -0
- qiskit/circuit/library/templates/clifford/clifford_6_3.py +39 -0
- qiskit/circuit/library/templates/clifford/clifford_6_4.py +37 -0
- qiskit/circuit/library/templates/clifford/clifford_6_5.py +39 -0
- qiskit/circuit/library/templates/clifford/clifford_8_1.py +41 -0
- qiskit/circuit/library/templates/clifford/clifford_8_2.py +41 -0
- qiskit/circuit/library/templates/clifford/clifford_8_3.py +40 -0
- qiskit/circuit/library/templates/nct/__init__.py +67 -0
- qiskit/circuit/library/templates/nct/template_nct_2a_1.py +32 -0
- qiskit/circuit/library/templates/nct/template_nct_2a_2.py +33 -0
- qiskit/circuit/library/templates/nct/template_nct_2a_3.py +35 -0
- qiskit/circuit/library/templates/nct/template_nct_4a_1.py +41 -0
- qiskit/circuit/library/templates/nct/template_nct_4a_2.py +39 -0
- qiskit/circuit/library/templates/nct/template_nct_4a_3.py +37 -0
- qiskit/circuit/library/templates/nct/template_nct_4b_1.py +39 -0
- qiskit/circuit/library/templates/nct/template_nct_4b_2.py +37 -0
- qiskit/circuit/library/templates/nct/template_nct_5a_1.py +38 -0
- qiskit/circuit/library/templates/nct/template_nct_5a_2.py +38 -0
- qiskit/circuit/library/templates/nct/template_nct_5a_3.py +38 -0
- qiskit/circuit/library/templates/nct/template_nct_5a_4.py +37 -0
- qiskit/circuit/library/templates/nct/template_nct_6a_1.py +38 -0
- qiskit/circuit/library/templates/nct/template_nct_6a_2.py +39 -0
- qiskit/circuit/library/templates/nct/template_nct_6a_3.py +39 -0
- qiskit/circuit/library/templates/nct/template_nct_6a_4.py +39 -0
- qiskit/circuit/library/templates/nct/template_nct_6b_1.py +39 -0
- qiskit/circuit/library/templates/nct/template_nct_6b_2.py +39 -0
- qiskit/circuit/library/templates/nct/template_nct_6c_1.py +39 -0
- qiskit/circuit/library/templates/nct/template_nct_7a_1.py +41 -0
- qiskit/circuit/library/templates/nct/template_nct_7b_1.py +41 -0
- qiskit/circuit/library/templates/nct/template_nct_7c_1.py +41 -0
- qiskit/circuit/library/templates/nct/template_nct_7d_1.py +41 -0
- qiskit/circuit/library/templates/nct/template_nct_7e_1.py +41 -0
- qiskit/circuit/library/templates/nct/template_nct_9a_1.py +43 -0
- qiskit/circuit/library/templates/nct/template_nct_9c_1.py +41 -0
- qiskit/circuit/library/templates/nct/template_nct_9c_10.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9c_11.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9c_12.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9c_2.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9c_3.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9c_4.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9c_5.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9c_6.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9c_7.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9c_8.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9c_9.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9d_1.py +41 -0
- qiskit/circuit/library/templates/nct/template_nct_9d_10.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9d_2.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9d_3.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9d_4.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9d_5.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9d_6.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9d_7.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9d_8.py +42 -0
- qiskit/circuit/library/templates/nct/template_nct_9d_9.py +42 -0
- qiskit/circuit/library/templates/rzx/__init__.py +25 -0
- qiskit/circuit/library/templates/rzx/rzx_cy.py +46 -0
- qiskit/circuit/library/templates/rzx/rzx_xz.py +53 -0
- qiskit/circuit/library/templates/rzx/rzx_yz.py +43 -0
- qiskit/circuit/library/templates/rzx/rzx_zz1.py +67 -0
- qiskit/circuit/library/templates/rzx/rzx_zz2.py +58 -0
- qiskit/circuit/library/templates/rzx/rzx_zz3.py +57 -0
- qiskit/circuit/measure.py +41 -0
- qiskit/circuit/operation.py +62 -0
- qiskit/circuit/parameter.py +160 -0
- qiskit/circuit/parameterexpression.py +515 -0
- qiskit/circuit/parametertable.py +263 -0
- qiskit/circuit/parametervector.py +114 -0
- qiskit/circuit/qpy_serialization.py +28 -0
- qiskit/circuit/quantumcircuit.py +6074 -0
- qiskit/circuit/quantumcircuitdata.py +138 -0
- qiskit/circuit/quantumregister.py +90 -0
- qiskit/circuit/random/__init__.py +15 -0
- qiskit/circuit/random/utils.py +209 -0
- qiskit/circuit/register.py +256 -0
- qiskit/circuit/reset.py +31 -0
- qiskit/circuit/singleton.py +604 -0
- qiskit/circuit/store.py +87 -0
- qiskit/circuit/tools/__init__.py +16 -0
- qiskit/circuit/tools/pi_check.py +190 -0
- qiskit/compiler/__init__.py +33 -0
- qiskit/compiler/assembler.py +597 -0
- qiskit/compiler/scheduler.py +107 -0
- qiskit/compiler/sequencer.py +69 -0
- qiskit/compiler/transpiler.py +613 -0
- qiskit/converters/__init__.py +59 -0
- qiskit/converters/circuit_to_dag.py +96 -0
- qiskit/converters/circuit_to_dagdependency.py +51 -0
- qiskit/converters/circuit_to_gate.py +109 -0
- qiskit/converters/circuit_to_instruction.py +131 -0
- qiskit/converters/dag_to_circuit.py +77 -0
- qiskit/converters/dag_to_dagdependency.py +55 -0
- qiskit/converters/dagdependency_to_circuit.py +42 -0
- qiskit/converters/dagdependency_to_dag.py +49 -0
- qiskit/dagcircuit/__init__.py +44 -0
- qiskit/dagcircuit/collect_blocks.py +386 -0
- qiskit/dagcircuit/dagcircuit.py +2105 -0
- qiskit/dagcircuit/dagdependency.py +626 -0
- qiskit/dagcircuit/dagdepnode.py +157 -0
- qiskit/dagcircuit/dagnode.py +322 -0
- qiskit/dagcircuit/exceptions.py +42 -0
- qiskit/exceptions.py +97 -0
- qiskit/execute_function.py +354 -0
- qiskit/extensions/__init__.py +70 -0
- qiskit/extensions/exceptions.py +31 -0
- qiskit/extensions/quantum_initializer/__init__.py +26 -0
- qiskit/extensions/quantum_initializer/squ.py +163 -0
- qiskit/extensions/simulator/__init__.py +15 -0
- qiskit/extensions/simulator/snapshot.py +70 -0
- qiskit/namespace.py +76 -0
- qiskit/passmanager/__init__.py +242 -0
- qiskit/passmanager/base_tasks.py +230 -0
- qiskit/passmanager/compilation_status.py +74 -0
- qiskit/passmanager/exceptions.py +19 -0
- qiskit/passmanager/flow_controllers.py +336 -0
- qiskit/passmanager/passmanager.py +317 -0
- qiskit/primitives/__init__.py +62 -0
- qiskit/primitives/backend_estimator.py +473 -0
- qiskit/primitives/backend_sampler.py +209 -0
- qiskit/primitives/base/__init__.py +20 -0
- qiskit/primitives/base/base_estimator.py +256 -0
- qiskit/primitives/base/base_primitive.py +74 -0
- qiskit/primitives/base/base_result.py +87 -0
- qiskit/primitives/base/base_sampler.py +202 -0
- qiskit/primitives/base/estimator_result.py +46 -0
- qiskit/primitives/base/sampler_result.py +45 -0
- qiskit/primitives/base/validation.py +231 -0
- qiskit/primitives/estimator.py +158 -0
- qiskit/primitives/primitive_job.py +73 -0
- qiskit/primitives/sampler.py +155 -0
- qiskit/primitives/utils.py +216 -0
- qiskit/providers/__init__.py +773 -0
- qiskit/providers/backend.py +653 -0
- qiskit/providers/backend_compat.py +347 -0
- qiskit/providers/basicaer/__init__.py +73 -0
- qiskit/providers/basicaer/basicaerjob.py +65 -0
- qiskit/providers/basicaer/basicaerprovider.py +127 -0
- qiskit/providers/basicaer/basicaertools.py +186 -0
- qiskit/providers/basicaer/exceptions.py +30 -0
- qiskit/providers/basicaer/qasm_simulator.py +678 -0
- qiskit/providers/basicaer/statevector_simulator.py +121 -0
- qiskit/providers/basicaer/unitary_simulator.py +395 -0
- qiskit/providers/exceptions.py +45 -0
- qiskit/providers/fake_provider/__init__.py +267 -0
- qiskit/providers/fake_provider/backends/__init__.py +110 -0
- qiskit/providers/fake_provider/backends/almaden/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/almaden/conf_almaden.json +1 -0
- qiskit/providers/fake_provider/backends/almaden/fake_almaden.py +58 -0
- qiskit/providers/fake_provider/backends/almaden/props_almaden.json +1 -0
- qiskit/providers/fake_provider/backends/armonk/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/armonk/conf_armonk.json +1 -0
- qiskit/providers/fake_provider/backends/armonk/defs_armonk.json +1 -0
- qiskit/providers/fake_provider/backends/armonk/fake_armonk.py +48 -0
- qiskit/providers/fake_provider/backends/armonk/props_armonk.json +1 -0
- qiskit/providers/fake_provider/backends/athens/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/athens/conf_athens.json +1 -0
- qiskit/providers/fake_provider/backends/athens/defs_athens.json +1 -0
- qiskit/providers/fake_provider/backends/athens/fake_athens.py +38 -0
- qiskit/providers/fake_provider/backends/athens/props_athens.json +1 -0
- qiskit/providers/fake_provider/backends/auckland/__init__.py +15 -0
- qiskit/providers/fake_provider/backends/auckland/conf_auckland.json +1 -0
- qiskit/providers/fake_provider/backends/auckland/defs_auckland.json +1 -0
- qiskit/providers/fake_provider/backends/auckland/fake_auckland.py +29 -0
- qiskit/providers/fake_provider/backends/auckland/props_auckland.json +1 -0
- qiskit/providers/fake_provider/backends/belem/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/belem/conf_belem.json +1 -0
- qiskit/providers/fake_provider/backends/belem/defs_belem.json +1 -0
- qiskit/providers/fake_provider/backends/belem/fake_belem.py +38 -0
- qiskit/providers/fake_provider/backends/belem/props_belem.json +1 -0
- qiskit/providers/fake_provider/backends/boeblingen/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/boeblingen/conf_boeblingen.json +1 -0
- qiskit/providers/fake_provider/backends/boeblingen/defs_boeblingen.json +1 -0
- qiskit/providers/fake_provider/backends/boeblingen/fake_boeblingen.py +60 -0
- qiskit/providers/fake_provider/backends/boeblingen/props_boeblingen.json +1 -0
- qiskit/providers/fake_provider/backends/bogota/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/bogota/conf_bogota.json +1 -0
- qiskit/providers/fake_provider/backends/bogota/defs_bogota.json +1 -0
- qiskit/providers/fake_provider/backends/bogota/fake_bogota.py +38 -0
- qiskit/providers/fake_provider/backends/bogota/props_bogota.json +1 -0
- qiskit/providers/fake_provider/backends/brooklyn/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/brooklyn/conf_brooklyn.json +1 -0
- qiskit/providers/fake_provider/backends/brooklyn/defs_brooklyn.json +1 -0
- qiskit/providers/fake_provider/backends/brooklyn/fake_brooklyn.py +38 -0
- qiskit/providers/fake_provider/backends/brooklyn/props_brooklyn.json +1 -0
- qiskit/providers/fake_provider/backends/burlington/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/burlington/conf_burlington.json +1 -0
- qiskit/providers/fake_provider/backends/burlington/fake_burlington.py +50 -0
- qiskit/providers/fake_provider/backends/burlington/props_burlington.json +1 -0
- qiskit/providers/fake_provider/backends/cairo/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/cairo/conf_cairo.json +1 -0
- qiskit/providers/fake_provider/backends/cairo/defs_cairo.json +1 -0
- qiskit/providers/fake_provider/backends/cairo/fake_cairo.py +38 -0
- qiskit/providers/fake_provider/backends/cairo/props_cairo.json +1 -0
- qiskit/providers/fake_provider/backends/cambridge/__init__.py +17 -0
- qiskit/providers/fake_provider/backends/cambridge/conf_cambridge.json +1 -0
- qiskit/providers/fake_provider/backends/cambridge/fake_cambridge.py +72 -0
- qiskit/providers/fake_provider/backends/cambridge/props_cambridge.json +1 -0
- qiskit/providers/fake_provider/backends/cambridge/props_cambridge_alt.json +1 -0
- qiskit/providers/fake_provider/backends/casablanca/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/casablanca/conf_casablanca.json +1 -0
- qiskit/providers/fake_provider/backends/casablanca/defs_casablanca.json +1 -0
- qiskit/providers/fake_provider/backends/casablanca/fake_casablanca.py +38 -0
- qiskit/providers/fake_provider/backends/casablanca/props_casablanca.json +1 -0
- qiskit/providers/fake_provider/backends/essex/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/essex/conf_essex.json +1 -0
- qiskit/providers/fake_provider/backends/essex/fake_essex.py +54 -0
- qiskit/providers/fake_provider/backends/essex/props_essex.json +1 -0
- qiskit/providers/fake_provider/backends/geneva/__init__.py +15 -0
- qiskit/providers/fake_provider/backends/geneva/conf_geneva.json +1 -0
- qiskit/providers/fake_provider/backends/geneva/defs_geneva.json +1 -0
- qiskit/providers/fake_provider/backends/geneva/fake_geneva.py +29 -0
- qiskit/providers/fake_provider/backends/geneva/props_geneva.json +1 -0
- qiskit/providers/fake_provider/backends/guadalupe/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/guadalupe/conf_guadalupe.json +1 -0
- qiskit/providers/fake_provider/backends/guadalupe/defs_guadalupe.json +1 -0
- qiskit/providers/fake_provider/backends/guadalupe/fake_guadalupe.py +39 -0
- qiskit/providers/fake_provider/backends/guadalupe/props_guadalupe.json +1 -0
- qiskit/providers/fake_provider/backends/hanoi/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/hanoi/conf_hanoi.json +1 -0
- qiskit/providers/fake_provider/backends/hanoi/defs_hanoi.json +1 -0
- qiskit/providers/fake_provider/backends/hanoi/fake_hanoi.py +38 -0
- qiskit/providers/fake_provider/backends/hanoi/props_hanoi.json +1 -0
- qiskit/providers/fake_provider/backends/jakarta/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/jakarta/conf_jakarta.json +1 -0
- qiskit/providers/fake_provider/backends/jakarta/defs_jakarta.json +1 -0
- qiskit/providers/fake_provider/backends/jakarta/fake_jakarta.py +38 -0
- qiskit/providers/fake_provider/backends/jakarta/props_jakarta.json +1 -0
- qiskit/providers/fake_provider/backends/johannesburg/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/johannesburg/conf_johannesburg.json +1 -0
- qiskit/providers/fake_provider/backends/johannesburg/fake_johannesburg.py +58 -0
- qiskit/providers/fake_provider/backends/johannesburg/props_johannesburg.json +1 -0
- qiskit/providers/fake_provider/backends/kolkata/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/kolkata/conf_kolkata.json +1 -0
- qiskit/providers/fake_provider/backends/kolkata/defs_kolkata.json +1 -0
- qiskit/providers/fake_provider/backends/kolkata/fake_kolkata.py +38 -0
- qiskit/providers/fake_provider/backends/kolkata/props_kolkata.json +1 -0
- qiskit/providers/fake_provider/backends/lagos/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/lagos/conf_lagos.json +1 -0
- qiskit/providers/fake_provider/backends/lagos/defs_lagos.json +1 -0
- qiskit/providers/fake_provider/backends/lagos/fake_lagos.py +38 -0
- qiskit/providers/fake_provider/backends/lagos/props_lagos.json +1 -0
- qiskit/providers/fake_provider/backends/lima/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/lima/conf_lima.json +1 -0
- qiskit/providers/fake_provider/backends/lima/defs_lima.json +1 -0
- qiskit/providers/fake_provider/backends/lima/fake_lima.py +38 -0
- qiskit/providers/fake_provider/backends/lima/props_lima.json +1 -0
- qiskit/providers/fake_provider/backends/london/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/london/conf_london.json +1 -0
- qiskit/providers/fake_provider/backends/london/fake_london.py +54 -0
- qiskit/providers/fake_provider/backends/london/props_london.json +1 -0
- qiskit/providers/fake_provider/backends/manhattan/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/manhattan/conf_manhattan.json +1 -0
- qiskit/providers/fake_provider/backends/manhattan/defs_manhattan.json +1 -0
- qiskit/providers/fake_provider/backends/manhattan/fake_manhattan.py +38 -0
- qiskit/providers/fake_provider/backends/manhattan/props_manhattan.json +1 -0
- qiskit/providers/fake_provider/backends/manila/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/manila/conf_manila.json +1 -0
- qiskit/providers/fake_provider/backends/manila/defs_manila.json +1 -0
- qiskit/providers/fake_provider/backends/manila/fake_manila.py +38 -0
- qiskit/providers/fake_provider/backends/manila/props_manila.json +1 -0
- qiskit/providers/fake_provider/backends/melbourne/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/melbourne/conf_melbourne.json +1 -0
- qiskit/providers/fake_provider/backends/melbourne/fake_melbourne.py +91 -0
- qiskit/providers/fake_provider/backends/melbourne/props_melbourne.json +1 -0
- qiskit/providers/fake_provider/backends/montreal/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/montreal/conf_montreal.json +1 -0
- qiskit/providers/fake_provider/backends/montreal/defs_montreal.json +1 -0
- qiskit/providers/fake_provider/backends/montreal/fake_montreal.py +38 -0
- qiskit/providers/fake_provider/backends/montreal/props_montreal.json +1 -0
- qiskit/providers/fake_provider/backends/mumbai/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/mumbai/conf_mumbai.json +1 -0
- qiskit/providers/fake_provider/backends/mumbai/defs_mumbai.json +1 -0
- qiskit/providers/fake_provider/backends/mumbai/fake_mumbai.py +38 -0
- qiskit/providers/fake_provider/backends/mumbai/props_mumbai.json +1 -0
- qiskit/providers/fake_provider/backends/nairobi/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/nairobi/conf_nairobi.json +1 -0
- qiskit/providers/fake_provider/backends/nairobi/defs_nairobi.json +1 -0
- qiskit/providers/fake_provider/backends/nairobi/fake_nairobi.py +38 -0
- qiskit/providers/fake_provider/backends/nairobi/props_nairobi.json +1 -0
- qiskit/providers/fake_provider/backends/oslo/__init__.py +15 -0
- qiskit/providers/fake_provider/backends/oslo/conf_oslo.json +1 -0
- qiskit/providers/fake_provider/backends/oslo/defs_oslo.json +1 -0
- qiskit/providers/fake_provider/backends/oslo/fake_oslo.py +29 -0
- qiskit/providers/fake_provider/backends/oslo/props_oslo.json +1 -0
- qiskit/providers/fake_provider/backends/ourense/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/ourense/conf_ourense.json +1 -0
- qiskit/providers/fake_provider/backends/ourense/fake_ourense.py +50 -0
- qiskit/providers/fake_provider/backends/ourense/props_ourense.json +1 -0
- qiskit/providers/fake_provider/backends/paris/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/paris/conf_paris.json +1 -0
- qiskit/providers/fake_provider/backends/paris/defs_paris.json +1 -0
- qiskit/providers/fake_provider/backends/paris/fake_paris.py +64 -0
- qiskit/providers/fake_provider/backends/paris/props_paris.json +1 -0
- qiskit/providers/fake_provider/backends/perth/__init__.py +15 -0
- qiskit/providers/fake_provider/backends/perth/conf_perth.json +1 -0
- qiskit/providers/fake_provider/backends/perth/defs_perth.json +1 -0
- qiskit/providers/fake_provider/backends/perth/fake_perth.py +29 -0
- qiskit/providers/fake_provider/backends/perth/props_perth.json +1 -0
- qiskit/providers/fake_provider/backends/poughkeepsie/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/poughkeepsie/conf_poughkeepsie.json +1 -0
- qiskit/providers/fake_provider/backends/poughkeepsie/defs_poughkeepsie.json +1 -0
- qiskit/providers/fake_provider/backends/poughkeepsie/fake_poughkeepsie.py +124 -0
- qiskit/providers/fake_provider/backends/poughkeepsie/props_poughkeepsie.json +1 -0
- qiskit/providers/fake_provider/backends/prague/__init__.py +15 -0
- qiskit/providers/fake_provider/backends/prague/conf_prague.json +1 -0
- qiskit/providers/fake_provider/backends/prague/fake_prague.py +28 -0
- qiskit/providers/fake_provider/backends/prague/props_prague.json +1 -0
- qiskit/providers/fake_provider/backends/quito/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/quito/conf_quito.json +1 -0
- qiskit/providers/fake_provider/backends/quito/defs_quito.json +1 -0
- qiskit/providers/fake_provider/backends/quito/fake_quito.py +38 -0
- qiskit/providers/fake_provider/backends/quito/props_quito.json +1 -0
- qiskit/providers/fake_provider/backends/rochester/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/rochester/conf_rochester.json +1 -0
- qiskit/providers/fake_provider/backends/rochester/fake_rochester.py +36 -0
- qiskit/providers/fake_provider/backends/rochester/props_rochester.json +1 -0
- qiskit/providers/fake_provider/backends/rome/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/rome/conf_rome.json +1 -0
- qiskit/providers/fake_provider/backends/rome/defs_rome.json +1 -0
- qiskit/providers/fake_provider/backends/rome/fake_rome.py +38 -0
- qiskit/providers/fake_provider/backends/rome/props_rome.json +1 -0
- qiskit/providers/fake_provider/backends/rueschlikon/__init__.py +15 -0
- qiskit/providers/fake_provider/backends/rueschlikon/fake_rueschlikon.py +74 -0
- qiskit/providers/fake_provider/backends/santiago/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/santiago/conf_santiago.json +1 -0
- qiskit/providers/fake_provider/backends/santiago/defs_santiago.json +1 -0
- qiskit/providers/fake_provider/backends/santiago/fake_santiago.py +38 -0
- qiskit/providers/fake_provider/backends/santiago/props_santiago.json +1 -0
- qiskit/providers/fake_provider/backends/sherbrooke/__init__.py +17 -0
- qiskit/providers/fake_provider/backends/sherbrooke/conf_sherbrooke.json +1 -0
- qiskit/providers/fake_provider/backends/sherbrooke/defs_sherbrooke.json +1 -0
- qiskit/providers/fake_provider/backends/sherbrooke/fake_sherbrooke.py +28 -0
- qiskit/providers/fake_provider/backends/sherbrooke/props_sherbrooke.json +1 -0
- qiskit/providers/fake_provider/backends/singapore/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/singapore/conf_singapore.json +1 -0
- qiskit/providers/fake_provider/backends/singapore/fake_singapore.py +58 -0
- qiskit/providers/fake_provider/backends/singapore/props_singapore.json +1 -0
- qiskit/providers/fake_provider/backends/sydney/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/sydney/conf_sydney.json +1 -0
- qiskit/providers/fake_provider/backends/sydney/defs_sydney.json +1 -0
- qiskit/providers/fake_provider/backends/sydney/fake_sydney.py +38 -0
- qiskit/providers/fake_provider/backends/sydney/props_sydney.json +1 -0
- qiskit/providers/fake_provider/backends/tenerife/__init__.py +15 -0
- qiskit/providers/fake_provider/backends/tenerife/fake_tenerife.py +64 -0
- qiskit/providers/fake_provider/backends/tenerife/props_tenerife.json +1 -0
- qiskit/providers/fake_provider/backends/tokyo/__init__.py +15 -0
- qiskit/providers/fake_provider/backends/tokyo/fake_tokyo.py +137 -0
- qiskit/providers/fake_provider/backends/tokyo/props_tokyo.json +1 -0
- qiskit/providers/fake_provider/backends/toronto/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/toronto/conf_toronto.json +1 -0
- qiskit/providers/fake_provider/backends/toronto/defs_toronto.json +1 -0
- qiskit/providers/fake_provider/backends/toronto/fake_toronto.py +38 -0
- qiskit/providers/fake_provider/backends/toronto/props_toronto.json +1 -0
- qiskit/providers/fake_provider/backends/valencia/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/valencia/conf_valencia.json +1 -0
- qiskit/providers/fake_provider/backends/valencia/defs_valencia.json +1 -0
- qiskit/providers/fake_provider/backends/valencia/fake_valencia.py +38 -0
- qiskit/providers/fake_provider/backends/valencia/props_valencia.json +1 -0
- qiskit/providers/fake_provider/backends/vigo/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/vigo/conf_vigo.json +1 -0
- qiskit/providers/fake_provider/backends/vigo/fake_vigo.py +50 -0
- qiskit/providers/fake_provider/backends/vigo/props_vigo.json +1 -0
- qiskit/providers/fake_provider/backends/washington/__init__.py +18 -0
- qiskit/providers/fake_provider/backends/washington/conf_washington.json +1 -0
- qiskit/providers/fake_provider/backends/washington/defs_washington.json +1 -0
- qiskit/providers/fake_provider/backends/washington/fake_washington.py +38 -0
- qiskit/providers/fake_provider/backends/washington/props_washington.json +1 -0
- qiskit/providers/fake_provider/backends/yorktown/__init__.py +16 -0
- qiskit/providers/fake_provider/backends/yorktown/conf_yorktown.json +1 -0
- qiskit/providers/fake_provider/backends/yorktown/fake_yorktown.py +54 -0
- qiskit/providers/fake_provider/backends/yorktown/props_yorktown.json +1 -0
- qiskit/providers/fake_provider/fake_1q.py +91 -0
- qiskit/providers/fake_provider/fake_backend.py +572 -0
- qiskit/providers/fake_provider/fake_backend_v2.py +217 -0
- qiskit/providers/fake_provider/fake_job.py +81 -0
- qiskit/providers/fake_provider/fake_mumbai_v2.py +637 -0
- qiskit/providers/fake_provider/fake_openpulse_2q.py +342 -0
- qiskit/providers/fake_provider/fake_openpulse_3q.py +332 -0
- qiskit/providers/fake_provider/fake_provider.py +214 -0
- qiskit/providers/fake_provider/fake_pulse_backend.py +43 -0
- qiskit/providers/fake_provider/fake_qasm_backend.py +72 -0
- qiskit/providers/fake_provider/fake_qasm_simulator.py +48 -0
- qiskit/providers/fake_provider/fake_qobj.py +44 -0
- qiskit/providers/fake_provider/utils/__init__.py +15 -0
- qiskit/providers/fake_provider/utils/backend_converter.py +150 -0
- qiskit/providers/fake_provider/utils/configurable_backend.py +360 -0
- qiskit/providers/fake_provider/utils/json_decoder.py +109 -0
- qiskit/providers/job.py +142 -0
- qiskit/providers/jobstatus.py +30 -0
- qiskit/providers/models/__init__.py +52 -0
- qiskit/providers/models/backendconfiguration.py +994 -0
- qiskit/providers/models/backendproperties.py +490 -0
- qiskit/providers/models/backendstatus.py +94 -0
- qiskit/providers/models/jobstatus.py +66 -0
- qiskit/providers/models/pulsedefaults.py +304 -0
- qiskit/providers/options.py +273 -0
- qiskit/providers/provider.py +79 -0
- qiskit/providers/providerutils.py +99 -0
- qiskit/pulse/__init__.py +170 -0
- qiskit/pulse/builder.py +2733 -0
- qiskit/pulse/calibration_entries.py +357 -0
- qiskit/pulse/channels.py +221 -0
- qiskit/pulse/configuration.py +244 -0
- qiskit/pulse/exceptions.py +43 -0
- qiskit/pulse/filters.py +302 -0
- qiskit/pulse/instruction_schedule_map.py +406 -0
- qiskit/pulse/instructions/__init__.py +69 -0
- qiskit/pulse/instructions/acquire.py +150 -0
- qiskit/pulse/instructions/call.py +176 -0
- qiskit/pulse/instructions/delay.py +69 -0
- qiskit/pulse/instructions/directives.py +145 -0
- qiskit/pulse/instructions/frequency.py +132 -0
- qiskit/pulse/instructions/instruction.py +266 -0
- qiskit/pulse/instructions/phase.py +149 -0
- qiskit/pulse/instructions/play.py +96 -0
- qiskit/pulse/instructions/reference.py +99 -0
- qiskit/pulse/instructions/snapshot.py +80 -0
- qiskit/pulse/library/__init__.py +99 -0
- qiskit/pulse/library/continuous.py +430 -0
- qiskit/pulse/library/parametric_pulses.py +629 -0
- qiskit/pulse/library/pulse.py +137 -0
- qiskit/pulse/library/samplers/__init__.py +15 -0
- qiskit/pulse/library/samplers/decorators.py +299 -0
- qiskit/pulse/library/samplers/strategies.py +71 -0
- qiskit/pulse/library/symbolic_pulses.py +1962 -0
- qiskit/pulse/library/waveform.py +134 -0
- qiskit/pulse/macros.py +256 -0
- qiskit/pulse/parameter_manager.py +432 -0
- qiskit/pulse/parser.py +314 -0
- qiskit/pulse/reference_manager.py +58 -0
- qiskit/pulse/schedule.py +2002 -0
- qiskit/pulse/transforms/__init__.py +106 -0
- qiskit/pulse/transforms/alignments.py +406 -0
- qiskit/pulse/transforms/base_transforms.py +71 -0
- qiskit/pulse/transforms/canonicalization.py +514 -0
- qiskit/pulse/transforms/dag.py +107 -0
- qiskit/pulse/utils.py +109 -0
- qiskit/qasm/libs/qelib1.inc +266 -0
- qiskit/qasm/libs/stdgates.inc +75 -0
- qiskit/qasm2/__init__.py +658 -0
- qiskit/qasm2/exceptions.py +27 -0
- qiskit/qasm2/export.py +374 -0
- qiskit/qasm2/parse.py +403 -0
- qiskit/qasm3/__init__.py +255 -0
- qiskit/qasm3/ast.py +606 -0
- qiskit/qasm3/exceptions.py +27 -0
- qiskit/qasm3/experimental.py +30 -0
- qiskit/qasm3/exporter.py +1079 -0
- qiskit/qasm3/printer.py +545 -0
- qiskit/qobj/__init__.py +75 -0
- qiskit/qobj/common.py +71 -0
- qiskit/qobj/converters/__init__.py +18 -0
- qiskit/qobj/converters/lo_config.py +168 -0
- qiskit/qobj/converters/pulse_instruction.py +1070 -0
- qiskit/qobj/pulse_qobj.py +655 -0
- qiskit/qobj/qasm_qobj.py +656 -0
- qiskit/qobj/utils.py +37 -0
- qiskit/qpy/__init__.py +1348 -0
- qiskit/qpy/binary_io/__init__.py +36 -0
- qiskit/qpy/binary_io/circuits.py +1212 -0
- qiskit/qpy/binary_io/schedules.py +619 -0
- qiskit/qpy/binary_io/value.py +549 -0
- qiskit/qpy/common.py +305 -0
- qiskit/qpy/exceptions.py +28 -0
- qiskit/qpy/formats.py +360 -0
- qiskit/qpy/interface.py +308 -0
- qiskit/qpy/type_keys.py +544 -0
- qiskit/quantum_info/__init__.py +173 -0
- qiskit/quantum_info/analysis/__init__.py +17 -0
- qiskit/quantum_info/analysis/average.py +47 -0
- qiskit/quantum_info/analysis/distance.py +101 -0
- qiskit/quantum_info/analysis/make_observable.py +43 -0
- qiskit/quantum_info/analysis/z2_symmetries.py +483 -0
- qiskit/quantum_info/operators/__init__.py +28 -0
- qiskit/quantum_info/operators/base_operator.py +145 -0
- qiskit/quantum_info/operators/channel/__init__.py +29 -0
- qiskit/quantum_info/operators/channel/chi.py +190 -0
- qiskit/quantum_info/operators/channel/choi.py +217 -0
- qiskit/quantum_info/operators/channel/kraus.py +336 -0
- qiskit/quantum_info/operators/channel/ptm.py +203 -0
- qiskit/quantum_info/operators/channel/quantum_channel.py +350 -0
- qiskit/quantum_info/operators/channel/stinespring.py +295 -0
- qiskit/quantum_info/operators/channel/superop.py +376 -0
- qiskit/quantum_info/operators/channel/transformations.py +467 -0
- qiskit/quantum_info/operators/custom_iterator.py +48 -0
- qiskit/quantum_info/operators/dihedral/__init__.py +18 -0
- qiskit/quantum_info/operators/dihedral/dihedral.py +508 -0
- qiskit/quantum_info/operators/dihedral/dihedral_circuits.py +218 -0
- qiskit/quantum_info/operators/dihedral/polynomial.py +313 -0
- qiskit/quantum_info/operators/dihedral/random.py +61 -0
- qiskit/quantum_info/operators/linear_op.py +25 -0
- qiskit/quantum_info/operators/measures.py +423 -0
- qiskit/quantum_info/operators/mixins/__init__.py +52 -0
- qiskit/quantum_info/operators/mixins/adjoint.py +52 -0
- qiskit/quantum_info/operators/mixins/group.py +171 -0
- qiskit/quantum_info/operators/mixins/linear.py +84 -0
- qiskit/quantum_info/operators/mixins/multiply.py +62 -0
- qiskit/quantum_info/operators/mixins/tolerances.py +72 -0
- qiskit/quantum_info/operators/op_shape.py +533 -0
- qiskit/quantum_info/operators/operator.py +778 -0
- qiskit/quantum_info/operators/predicates.py +170 -0
- qiskit/quantum_info/operators/random.py +154 -0
- qiskit/quantum_info/operators/scalar_op.py +253 -0
- qiskit/quantum_info/operators/symplectic/__init__.py +23 -0
- qiskit/quantum_info/operators/symplectic/base_pauli.py +720 -0
- qiskit/quantum_info/operators/symplectic/clifford.py +1022 -0
- qiskit/quantum_info/operators/symplectic/clifford_circuits.py +558 -0
- qiskit/quantum_info/operators/symplectic/pauli.py +699 -0
- qiskit/quantum_info/operators/symplectic/pauli_list.py +1209 -0
- qiskit/quantum_info/operators/symplectic/pauli_utils.py +40 -0
- qiskit/quantum_info/operators/symplectic/random.py +264 -0
- qiskit/quantum_info/operators/symplectic/sparse_pauli_op.py +1156 -0
- qiskit/quantum_info/operators/utils/__init__.py +20 -0
- qiskit/quantum_info/operators/utils/anti_commutator.py +36 -0
- qiskit/quantum_info/operators/utils/commutator.py +36 -0
- qiskit/quantum_info/operators/utils/double_commutator.py +76 -0
- qiskit/quantum_info/random.py +26 -0
- qiskit/quantum_info/states/__init__.py +28 -0
- qiskit/quantum_info/states/densitymatrix.py +848 -0
- qiskit/quantum_info/states/measures.py +288 -0
- qiskit/quantum_info/states/quantum_state.py +503 -0
- qiskit/quantum_info/states/random.py +157 -0
- qiskit/quantum_info/states/stabilizerstate.py +638 -0
- qiskit/quantum_info/states/statevector.py +961 -0
- qiskit/quantum_info/states/utils.py +245 -0
- qiskit/quantum_info/synthesis/__init__.py +20 -0
- qiskit/quantum_info/synthesis/clifford_decompose.py +69 -0
- qiskit/quantum_info/synthesis/cnotdihedral_decompose.py +50 -0
- qiskit/quantum_info/synthesis/ion_decompose.py +55 -0
- qiskit/quantum_info/synthesis/local_invariance.py +93 -0
- qiskit/quantum_info/synthesis/one_qubit_decompose.py +284 -0
- qiskit/quantum_info/synthesis/qsd.py +269 -0
- qiskit/quantum_info/synthesis/quaternion.py +156 -0
- qiskit/quantum_info/synthesis/two_qubit_decompose.py +1567 -0
- qiskit/quantum_info/synthesis/weyl.py +98 -0
- qiskit/quantum_info/synthesis/xx_decompose/__init__.py +19 -0
- qiskit/quantum_info/synthesis/xx_decompose/circuits.py +299 -0
- qiskit/quantum_info/synthesis/xx_decompose/decomposer.py +314 -0
- qiskit/quantum_info/synthesis/xx_decompose/embodiments.py +163 -0
- qiskit/quantum_info/synthesis/xx_decompose/paths.py +412 -0
- qiskit/quantum_info/synthesis/xx_decompose/polytopes.py +264 -0
- qiskit/quantum_info/synthesis/xx_decompose/utilities.py +40 -0
- qiskit/quantum_info/synthesis/xx_decompose/weyl.py +133 -0
- qiskit/result/__init__.py +67 -0
- qiskit/result/counts.py +189 -0
- qiskit/result/distributions/__init__.py +17 -0
- qiskit/result/distributions/probability.py +100 -0
- qiskit/result/distributions/quasi.py +154 -0
- qiskit/result/exceptions.py +40 -0
- qiskit/result/mitigation/__init__.py +13 -0
- qiskit/result/mitigation/base_readout_mitigator.py +79 -0
- qiskit/result/mitigation/correlated_readout_mitigator.py +268 -0
- qiskit/result/mitigation/local_readout_mitigator.py +319 -0
- qiskit/result/mitigation/utils.py +161 -0
- qiskit/result/models.py +233 -0
- qiskit/result/postprocess.py +239 -0
- qiskit/result/result.py +397 -0
- qiskit/result/sampled_expval.py +75 -0
- qiskit/result/utils.py +295 -0
- qiskit/scheduler/__init__.py +31 -0
- qiskit/scheduler/config.py +35 -0
- qiskit/scheduler/lowering.py +187 -0
- qiskit/scheduler/methods/__init__.py +22 -0
- qiskit/scheduler/methods/basic.py +137 -0
- qiskit/scheduler/schedule_circuit.py +67 -0
- qiskit/scheduler/sequence.py +102 -0
- qiskit/synthesis/__init__.py +122 -0
- qiskit/synthesis/clifford/__init__.py +19 -0
- qiskit/synthesis/clifford/clifford_decompose_ag.py +176 -0
- qiskit/synthesis/clifford/clifford_decompose_bm.py +276 -0
- qiskit/synthesis/clifford/clifford_decompose_full.py +61 -0
- qiskit/synthesis/clifford/clifford_decompose_greedy.py +347 -0
- qiskit/synthesis/clifford/clifford_decompose_layers.py +443 -0
- qiskit/synthesis/cnotdihedral/__init__.py +17 -0
- qiskit/synthesis/cnotdihedral/cnotdihedral_decompose_full.py +46 -0
- qiskit/synthesis/cnotdihedral/cnotdihedral_decompose_general.py +140 -0
- qiskit/synthesis/cnotdihedral/cnotdihedral_decompose_two_qubits.py +264 -0
- qiskit/synthesis/discrete_basis/__init__.py +16 -0
- qiskit/synthesis/discrete_basis/commutator_decompose.py +241 -0
- qiskit/synthesis/discrete_basis/gate_sequence.py +415 -0
- qiskit/synthesis/discrete_basis/generate_basis_approximations.py +163 -0
- qiskit/synthesis/discrete_basis/solovay_kitaev.py +207 -0
- qiskit/synthesis/evolution/__init__.py +20 -0
- qiskit/synthesis/evolution/evolution_synthesis.py +46 -0
- qiskit/synthesis/evolution/lie_trotter.py +123 -0
- qiskit/synthesis/evolution/matrix_synthesis.py +47 -0
- qiskit/synthesis/evolution/product_formula.py +328 -0
- qiskit/synthesis/evolution/qdrift.py +102 -0
- qiskit/synthesis/evolution/suzuki_trotter.py +145 -0
- qiskit/synthesis/linear/__init__.py +25 -0
- qiskit/synthesis/linear/cnot_synth.py +141 -0
- qiskit/synthesis/linear/linear_circuits_utils.py +127 -0
- qiskit/synthesis/linear/linear_depth_lnn.py +275 -0
- qiskit/synthesis/linear/linear_matrix_utils.py +175 -0
- qiskit/synthesis/linear_phase/__init__.py +17 -0
- qiskit/synthesis/linear_phase/cnot_phase_synth.py +203 -0
- qiskit/synthesis/linear_phase/cx_cz_depth_lnn.py +262 -0
- qiskit/synthesis/linear_phase/cz_depth_lnn.py +206 -0
- qiskit/synthesis/permutation/__init__.py +17 -0
- qiskit/synthesis/permutation/permutation_full.py +90 -0
- qiskit/synthesis/permutation/permutation_lnn.py +68 -0
- qiskit/synthesis/permutation/permutation_utils.py +73 -0
- qiskit/synthesis/stabilizer/__init__.py +15 -0
- qiskit/synthesis/stabilizer/stabilizer_decompose.py +188 -0
- qiskit/test/__init__.py +18 -0
- qiskit/test/_canonical.py +125 -0
- qiskit/test/base.py +331 -0
- qiskit/test/decorators.py +308 -0
- qiskit/test/ibmq_mock.py +45 -0
- qiskit/test/mock/__init__.py +40 -0
- qiskit/test/mock/backends/__init__.py +32 -0
- qiskit/test/mock/backends/almaden/__init__.py +32 -0
- qiskit/test/mock/backends/armonk/__init__.py +32 -0
- qiskit/test/mock/backends/athens/__init__.py +32 -0
- qiskit/test/mock/backends/belem/__init__.py +32 -0
- qiskit/test/mock/backends/boeblingen/__init__.py +32 -0
- qiskit/test/mock/backends/bogota/__init__.py +32 -0
- qiskit/test/mock/backends/brooklyn/__init__.py +32 -0
- qiskit/test/mock/backends/burlington/__init__.py +32 -0
- qiskit/test/mock/backends/cairo/__init__.py +32 -0
- qiskit/test/mock/backends/cambridge/__init__.py +32 -0
- qiskit/test/mock/backends/casablanca/__init__.py +32 -0
- qiskit/test/mock/backends/essex/__init__.py +32 -0
- qiskit/test/mock/backends/guadalupe/__init__.py +32 -0
- qiskit/test/mock/backends/hanoi/__init__.py +32 -0
- qiskit/test/mock/backends/jakarta/__init__.py +32 -0
- qiskit/test/mock/backends/johannesburg/__init__.py +32 -0
- qiskit/test/mock/backends/kolkata/__init__.py +32 -0
- qiskit/test/mock/backends/lagos/__init__.py +32 -0
- qiskit/test/mock/backends/lima/__init__.py +32 -0
- qiskit/test/mock/backends/london/__init__.py +32 -0
- qiskit/test/mock/backends/manhattan/__init__.py +32 -0
- qiskit/test/mock/backends/manila/__init__.py +32 -0
- qiskit/test/mock/backends/melbourne/__init__.py +32 -0
- qiskit/test/mock/backends/montreal/__init__.py +32 -0
- qiskit/test/mock/backends/mumbai/__init__.py +32 -0
- qiskit/test/mock/backends/nairobi/__init__.py +32 -0
- qiskit/test/mock/backends/ourense/__init__.py +32 -0
- qiskit/test/mock/backends/paris/__init__.py +32 -0
- qiskit/test/mock/backends/poughkeepsie/__init__.py +32 -0
- qiskit/test/mock/backends/quito/__init__.py +32 -0
- qiskit/test/mock/backends/rochester/__init__.py +32 -0
- qiskit/test/mock/backends/rome/__init__.py +32 -0
- qiskit/test/mock/backends/rueschlikon/__init__.py +32 -0
- qiskit/test/mock/backends/santiago/__init__.py +32 -0
- qiskit/test/mock/backends/singapore/__init__.py +32 -0
- qiskit/test/mock/backends/sydney/__init__.py +32 -0
- qiskit/test/mock/backends/tenerife/__init__.py +32 -0
- qiskit/test/mock/backends/tokyo/__init__.py +32 -0
- qiskit/test/mock/backends/toronto/__init__.py +32 -0
- qiskit/test/mock/backends/valencia/__init__.py +32 -0
- qiskit/test/mock/backends/vigo/__init__.py +32 -0
- qiskit/test/mock/backends/washington/__init__.py +32 -0
- qiskit/test/mock/backends/yorktown/__init__.py +32 -0
- qiskit/test/providers/__init__.py +16 -0
- qiskit/test/providers/backend.py +75 -0
- qiskit/test/providers/provider.py +59 -0
- qiskit/test/reference_circuits.py +41 -0
- qiskit/test/testing_options.py +93 -0
- qiskit/test/utils.py +87 -0
- qiskit/tools/__init__.py +44 -0
- qiskit/tools/events/__init__.py +25 -0
- qiskit/tools/events/progressbar.py +195 -0
- qiskit/tools/events/pubsub.py +158 -0
- qiskit/tools/jupyter/__init__.py +138 -0
- qiskit/tools/jupyter/backend_monitor.py +588 -0
- qiskit/tools/jupyter/backend_overview.py +322 -0
- qiskit/tools/jupyter/copyright.py +42 -0
- qiskit/tools/jupyter/job_watcher.py +167 -0
- qiskit/tools/jupyter/job_widgets.py +160 -0
- qiskit/tools/jupyter/jupyter_magics.py +190 -0
- qiskit/tools/jupyter/library.py +189 -0
- qiskit/tools/jupyter/monospace.py +29 -0
- qiskit/tools/jupyter/progressbar.py +122 -0
- qiskit/tools/jupyter/version_table.py +67 -0
- qiskit/tools/jupyter/watcher_monitor.py +74 -0
- qiskit/tools/monitor/__init__.py +16 -0
- qiskit/tools/monitor/job_monitor.py +107 -0
- qiskit/tools/monitor/overview.py +247 -0
- qiskit/tools/parallel.py +198 -0
- qiskit/tools/visualization.py +16 -0
- qiskit/transpiler/__init__.py +1287 -0
- qiskit/transpiler/basepasses.py +221 -0
- qiskit/transpiler/coupling.py +500 -0
- qiskit/transpiler/exceptions.py +55 -0
- qiskit/transpiler/fencedobjs.py +78 -0
- qiskit/transpiler/instruction_durations.py +278 -0
- qiskit/transpiler/layout.py +658 -0
- qiskit/transpiler/passes/__init__.py +296 -0
- qiskit/transpiler/passes/analysis/__init__.py +23 -0
- qiskit/transpiler/passes/analysis/count_ops.py +30 -0
- qiskit/transpiler/passes/analysis/count_ops_longest_path.py +26 -0
- qiskit/transpiler/passes/analysis/dag_longest_path.py +24 -0
- qiskit/transpiler/passes/analysis/depth.py +33 -0
- qiskit/transpiler/passes/analysis/num_qubits.py +26 -0
- qiskit/transpiler/passes/analysis/num_tensor_factors.py +26 -0
- qiskit/transpiler/passes/analysis/resource_estimation.py +41 -0
- qiskit/transpiler/passes/analysis/size.py +36 -0
- qiskit/transpiler/passes/analysis/width.py +27 -0
- qiskit/transpiler/passes/basis/__init__.py +20 -0
- qiskit/transpiler/passes/basis/basis_translator.py +697 -0
- qiskit/transpiler/passes/basis/decompose.py +98 -0
- qiskit/transpiler/passes/basis/translate_parameterized.py +177 -0
- qiskit/transpiler/passes/basis/unroll_3q_or_more.py +86 -0
- qiskit/transpiler/passes/basis/unroll_custom_definitions.py +107 -0
- qiskit/transpiler/passes/basis/unroller.py +145 -0
- qiskit/transpiler/passes/calibration/__init__.py +17 -0
- qiskit/transpiler/passes/calibration/base_builder.py +79 -0
- qiskit/transpiler/passes/calibration/builders.py +20 -0
- qiskit/transpiler/passes/calibration/exceptions.py +22 -0
- qiskit/transpiler/passes/calibration/pulse_gate.py +98 -0
- qiskit/transpiler/passes/calibration/rx_builder.py +160 -0
- qiskit/transpiler/passes/calibration/rzx_builder.py +394 -0
- qiskit/transpiler/passes/calibration/rzx_templates.py +51 -0
- qiskit/transpiler/passes/layout/__init__.py +27 -0
- qiskit/transpiler/passes/layout/_csp_custom_solver.py +65 -0
- qiskit/transpiler/passes/layout/apply_layout.py +108 -0
- qiskit/transpiler/passes/layout/csp_layout.py +132 -0
- qiskit/transpiler/passes/layout/dense_layout.py +202 -0
- qiskit/transpiler/passes/layout/disjoint_utils.py +205 -0
- qiskit/transpiler/passes/layout/enlarge_with_ancilla.py +49 -0
- qiskit/transpiler/passes/layout/full_ancilla_allocation.py +117 -0
- qiskit/transpiler/passes/layout/layout_2q_distance.py +77 -0
- qiskit/transpiler/passes/layout/noise_adaptive_layout.py +311 -0
- qiskit/transpiler/passes/layout/sabre_layout.py +468 -0
- qiskit/transpiler/passes/layout/sabre_pre_layout.py +217 -0
- qiskit/transpiler/passes/layout/set_layout.py +64 -0
- qiskit/transpiler/passes/layout/trivial_layout.py +66 -0
- qiskit/transpiler/passes/layout/vf2_layout.py +257 -0
- qiskit/transpiler/passes/layout/vf2_post_layout.py +419 -0
- qiskit/transpiler/passes/layout/vf2_utils.py +260 -0
- qiskit/transpiler/passes/optimization/__init__.py +38 -0
- qiskit/transpiler/passes/optimization/_gate_extension.py +80 -0
- qiskit/transpiler/passes/optimization/collect_1q_runs.py +31 -0
- qiskit/transpiler/passes/optimization/collect_2q_blocks.py +35 -0
- qiskit/transpiler/passes/optimization/collect_and_collapse.py +115 -0
- qiskit/transpiler/passes/optimization/collect_cliffords.py +97 -0
- qiskit/transpiler/passes/optimization/collect_linear_functions.py +80 -0
- qiskit/transpiler/passes/optimization/collect_multiqubit_blocks.py +227 -0
- qiskit/transpiler/passes/optimization/commutation_analysis.py +93 -0
- qiskit/transpiler/passes/optimization/commutative_cancellation.py +207 -0
- qiskit/transpiler/passes/optimization/commutative_inverse_cancellation.py +97 -0
- qiskit/transpiler/passes/optimization/consolidate_blocks.py +219 -0
- qiskit/transpiler/passes/optimization/crosstalk_adaptive_schedule.py +732 -0
- qiskit/transpiler/passes/optimization/cx_cancellation.py +55 -0
- qiskit/transpiler/passes/optimization/echo_rzx_weyl_decomposition.py +160 -0
- qiskit/transpiler/passes/optimization/hoare_opt.py +416 -0
- qiskit/transpiler/passes/optimization/inverse_cancellation.py +177 -0
- qiskit/transpiler/passes/optimization/normalize_rx_angle.py +149 -0
- qiskit/transpiler/passes/optimization/optimize_1q_commutation.py +268 -0
- qiskit/transpiler/passes/optimization/optimize_1q_decomposition.py +263 -0
- qiskit/transpiler/passes/optimization/optimize_1q_gates.py +384 -0
- qiskit/transpiler/passes/optimization/optimize_cliffords.py +89 -0
- qiskit/transpiler/passes/optimization/optimize_swap_before_measure.py +71 -0
- qiskit/transpiler/passes/optimization/remove_diagonal_gates_before_measure.py +69 -0
- qiskit/transpiler/passes/optimization/remove_reset_in_zero_state.py +37 -0
- qiskit/transpiler/passes/optimization/reset_after_measure_simplification.py +47 -0
- qiskit/transpiler/passes/optimization/template_matching/__init__.py +19 -0
- qiskit/transpiler/passes/optimization/template_matching/backward_match.py +749 -0
- qiskit/transpiler/passes/optimization/template_matching/forward_match.py +454 -0
- qiskit/transpiler/passes/optimization/template_matching/maximal_matches.py +77 -0
- qiskit/transpiler/passes/optimization/template_matching/template_matching.py +370 -0
- qiskit/transpiler/passes/optimization/template_matching/template_substitution.py +629 -0
- qiskit/transpiler/passes/optimization/template_optimization.py +158 -0
- qiskit/transpiler/passes/routing/__init__.py +21 -0
- qiskit/transpiler/passes/routing/algorithms/__init__.py +33 -0
- qiskit/transpiler/passes/routing/algorithms/token_swapper.py +105 -0
- qiskit/transpiler/passes/routing/algorithms/types.py +46 -0
- qiskit/transpiler/passes/routing/algorithms/util.py +103 -0
- qiskit/transpiler/passes/routing/basic_swap.py +155 -0
- qiskit/transpiler/passes/routing/commuting_2q_gate_routing/__init__.py +25 -0
- qiskit/transpiler/passes/routing/commuting_2q_gate_routing/commuting_2q_block.py +60 -0
- qiskit/transpiler/passes/routing/commuting_2q_gate_routing/commuting_2q_gate_router.py +387 -0
- qiskit/transpiler/passes/routing/commuting_2q_gate_routing/pauli_2q_evolution_commutation.py +141 -0
- qiskit/transpiler/passes/routing/commuting_2q_gate_routing/swap_strategy.py +306 -0
- qiskit/transpiler/passes/routing/layout_transformation.py +118 -0
- qiskit/transpiler/passes/routing/lookahead_swap.py +384 -0
- qiskit/transpiler/passes/routing/sabre_swap.py +430 -0
- qiskit/transpiler/passes/routing/stochastic_swap.py +512 -0
- qiskit/transpiler/passes/routing/utils.py +35 -0
- qiskit/transpiler/passes/scheduling/__init__.py +27 -0
- qiskit/transpiler/passes/scheduling/alap.py +155 -0
- qiskit/transpiler/passes/scheduling/alignments/__init__.py +81 -0
- qiskit/transpiler/passes/scheduling/alignments/align_measures.py +256 -0
- qiskit/transpiler/passes/scheduling/alignments/check_durations.py +75 -0
- qiskit/transpiler/passes/scheduling/alignments/pulse_gate_validation.py +97 -0
- qiskit/transpiler/passes/scheduling/alignments/reschedule.py +241 -0
- qiskit/transpiler/passes/scheduling/asap.py +177 -0
- qiskit/transpiler/passes/scheduling/base_scheduler.py +289 -0
- qiskit/transpiler/passes/scheduling/calibration_creators.py +27 -0
- qiskit/transpiler/passes/scheduling/dynamical_decoupling.py +285 -0
- qiskit/transpiler/passes/scheduling/padding/__init__.py +16 -0
- qiskit/transpiler/passes/scheduling/padding/base_padding.py +256 -0
- qiskit/transpiler/passes/scheduling/padding/dynamical_decoupling.py +408 -0
- qiskit/transpiler/passes/scheduling/padding/pad_delay.py +79 -0
- qiskit/transpiler/passes/scheduling/rzx_templates.py +28 -0
- qiskit/transpiler/passes/scheduling/scheduling/__init__.py +17 -0
- qiskit/transpiler/passes/scheduling/scheduling/alap.py +127 -0
- qiskit/transpiler/passes/scheduling/scheduling/asap.py +131 -0
- qiskit/transpiler/passes/scheduling/scheduling/base_scheduler.py +89 -0
- qiskit/transpiler/passes/scheduling/scheduling/set_io_latency.py +64 -0
- qiskit/transpiler/passes/scheduling/time_unit_conversion.py +135 -0
- qiskit/transpiler/passes/synthesis/__init__.py +19 -0
- qiskit/transpiler/passes/synthesis/high_level_synthesis.py +637 -0
- qiskit/transpiler/passes/synthesis/linear_functions_synthesis.py +63 -0
- qiskit/transpiler/passes/synthesis/plugin.py +597 -0
- qiskit/transpiler/passes/synthesis/solovay_kitaev_synthesis.py +289 -0
- qiskit/transpiler/passes/synthesis/unitary_synthesis.py +895 -0
- qiskit/transpiler/passes/utils/__init__.py +34 -0
- qiskit/transpiler/passes/utils/barrier_before_final_measurements.py +95 -0
- qiskit/transpiler/passes/utils/block_to_matrix.py +47 -0
- qiskit/transpiler/passes/utils/check_gate_direction.py +87 -0
- qiskit/transpiler/passes/utils/check_map.py +94 -0
- qiskit/transpiler/passes/utils/contains_instruction.py +45 -0
- qiskit/transpiler/passes/utils/control_flow.py +61 -0
- qiskit/transpiler/passes/utils/convert_conditions_to_if_ops.py +89 -0
- qiskit/transpiler/passes/utils/dag_fixed_point.py +36 -0
- qiskit/transpiler/passes/utils/error.py +69 -0
- qiskit/transpiler/passes/utils/filter_op_nodes.py +65 -0
- qiskit/transpiler/passes/utils/fixed_point.py +48 -0
- qiskit/transpiler/passes/utils/gate_direction.py +347 -0
- qiskit/transpiler/passes/utils/gates_basis.py +75 -0
- qiskit/transpiler/passes/utils/merge_adjacent_barriers.py +162 -0
- qiskit/transpiler/passes/utils/minimum_point.py +118 -0
- qiskit/transpiler/passes/utils/remove_barriers.py +49 -0
- qiskit/transpiler/passes/utils/remove_final_measurements.py +114 -0
- qiskit/transpiler/passes/utils/unroll_forloops.py +81 -0
- qiskit/transpiler/passmanager.py +617 -0
- qiskit/transpiler/passmanager_config.py +193 -0
- qiskit/transpiler/preset_passmanagers/__init__.py +280 -0
- qiskit/transpiler/preset_passmanagers/builtin_plugins.py +971 -0
- qiskit/transpiler/preset_passmanagers/common.py +651 -0
- qiskit/transpiler/preset_passmanagers/level0.py +113 -0
- qiskit/transpiler/preset_passmanagers/level1.py +120 -0
- qiskit/transpiler/preset_passmanagers/level2.py +119 -0
- qiskit/transpiler/preset_passmanagers/level3.py +119 -0
- qiskit/transpiler/preset_passmanagers/plugin.py +345 -0
- qiskit/transpiler/propertyset.py +19 -0
- qiskit/transpiler/runningpassmanager.py +174 -0
- qiskit/transpiler/synthesis/__init__.py +16 -0
- qiskit/transpiler/synthesis/aqc/__init__.py +178 -0
- qiskit/transpiler/synthesis/aqc/approximate.py +116 -0
- qiskit/transpiler/synthesis/aqc/aqc.py +170 -0
- qiskit/transpiler/synthesis/aqc/aqc_plugin.py +146 -0
- qiskit/transpiler/synthesis/aqc/cnot_structures.py +299 -0
- qiskit/transpiler/synthesis/aqc/cnot_unit_circuit.py +103 -0
- qiskit/transpiler/synthesis/aqc/cnot_unit_objective.py +299 -0
- qiskit/transpiler/synthesis/aqc/elementary_operations.py +108 -0
- qiskit/transpiler/synthesis/aqc/fast_gradient/__init__.py +164 -0
- qiskit/transpiler/synthesis/aqc/fast_gradient/fast_grad_utils.py +237 -0
- qiskit/transpiler/synthesis/aqc/fast_gradient/fast_gradient.py +225 -0
- qiskit/transpiler/synthesis/aqc/fast_gradient/layer.py +370 -0
- qiskit/transpiler/synthesis/aqc/fast_gradient/pmatrix.py +312 -0
- qiskit/transpiler/synthesis/graysynth.py +114 -0
- qiskit/transpiler/target.py +1540 -0
- qiskit/transpiler/timing_constraints.py +59 -0
- qiskit/user_config.py +239 -0
- qiskit/utils/__init__.py +66 -0
- qiskit/utils/classtools.py +146 -0
- qiskit/utils/deprecation.py +489 -0
- qiskit/utils/lazy_tester.py +334 -0
- qiskit/utils/multiprocessing.py +48 -0
- qiskit/utils/optionals.py +320 -0
- qiskit/utils/units.py +143 -0
- qiskit/version.py +84 -0
- qiskit/visualization/__init__.py +289 -0
- qiskit/visualization/array.py +204 -0
- qiskit/visualization/bloch.py +741 -0
- qiskit/visualization/circuit/__init__.py +15 -0
- qiskit/visualization/circuit/_utils.py +633 -0
- qiskit/visualization/circuit/circuit_visualization.py +717 -0
- qiskit/visualization/circuit/latex.py +659 -0
- qiskit/visualization/circuit/matplotlib.py +1975 -0
- qiskit/visualization/circuit/qcstyle.py +420 -0
- qiskit/visualization/circuit/styles/bw.json +202 -0
- qiskit/visualization/circuit/styles/clifford.json +202 -0
- qiskit/visualization/circuit/styles/iqp-dark.json +214 -0
- qiskit/visualization/circuit/styles/iqp.json +214 -0
- qiskit/visualization/circuit/styles/textbook.json +202 -0
- qiskit/visualization/circuit/text.py +1802 -0
- qiskit/visualization/circuit_visualization.py +19 -0
- qiskit/visualization/counts_visualization.py +496 -0
- qiskit/visualization/dag_visualization.py +224 -0
- qiskit/visualization/exceptions.py +21 -0
- qiskit/visualization/gate_map.py +1461 -0
- qiskit/visualization/pass_manager_visualization.py +281 -0
- qiskit/visualization/pulse_v2/__init__.py +21 -0
- qiskit/visualization/pulse_v2/core.py +905 -0
- qiskit/visualization/pulse_v2/device_info.py +146 -0
- qiskit/visualization/pulse_v2/drawings.py +253 -0
- qiskit/visualization/pulse_v2/events.py +254 -0
- qiskit/visualization/pulse_v2/generators/__init__.py +40 -0
- qiskit/visualization/pulse_v2/generators/barrier.py +76 -0
- qiskit/visualization/pulse_v2/generators/chart.py +208 -0
- qiskit/visualization/pulse_v2/generators/frame.py +437 -0
- qiskit/visualization/pulse_v2/generators/snapshot.py +133 -0
- qiskit/visualization/pulse_v2/generators/waveform.py +649 -0
- qiskit/visualization/pulse_v2/interface.py +452 -0
- qiskit/visualization/pulse_v2/layouts.py +395 -0
- qiskit/visualization/pulse_v2/plotters/__init__.py +17 -0
- qiskit/visualization/pulse_v2/plotters/base_plotter.py +53 -0
- qiskit/visualization/pulse_v2/plotters/matplotlib.py +202 -0
- qiskit/visualization/pulse_v2/stylesheet.py +322 -0
- qiskit/visualization/pulse_v2/types.py +242 -0
- qiskit/visualization/qcstyle.py +17 -0
- qiskit/visualization/state_visualization.py +1518 -0
- qiskit/visualization/timeline/__init__.py +21 -0
- qiskit/visualization/timeline/core.py +457 -0
- qiskit/visualization/timeline/drawings.py +260 -0
- qiskit/visualization/timeline/generators.py +506 -0
- qiskit/visualization/timeline/interface.py +414 -0
- qiskit/visualization/timeline/layouts.py +115 -0
- qiskit/visualization/timeline/plotters/__init__.py +16 -0
- qiskit/visualization/timeline/plotters/base_plotter.py +58 -0
- qiskit/visualization/timeline/plotters/matplotlib.py +193 -0
- qiskit/visualization/timeline/stylesheet.py +311 -0
- qiskit/visualization/timeline/types.py +148 -0
- qiskit/visualization/transition_visualization.py +364 -0
- qiskit/visualization/utils.py +49 -0
- qiskit-1.0.0b1.dist-info/LICENSE.txt +203 -0
- qiskit-1.0.0b1.dist-info/METADATA +430 -0
- qiskit-1.0.0b1.dist-info/RECORD +1095 -0
- qiskit-1.0.0b1.dist-info/WHEEL +6 -0
- qiskit-1.0.0b1.dist-info/entry_points.txt +49 -0
- qiskit-1.0.0b1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,39 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 4a_2:
|
15
|
+
.. parsed-literal::
|
16
|
+
q_0: ──■─────────■───────
|
17
|
+
│ │
|
18
|
+
q_1: ──■────■────■────■──
|
19
|
+
│ ┌─┴─┐ │ ┌─┴─┐
|
20
|
+
q_2: ──┼──┤ X ├──┼──┤ X ├
|
21
|
+
┌─┴─┐└───┘┌─┴─┐└───┘
|
22
|
+
q_3: ┤ X ├─────┤ X ├─────
|
23
|
+
└───┘ └───┘
|
24
|
+
"""
|
25
|
+
|
26
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
27
|
+
|
28
|
+
|
29
|
+
def template_nct_4a_2():
|
30
|
+
"""
|
31
|
+
Returns:
|
32
|
+
QuantumCircuit: template as a quantum circuit.
|
33
|
+
"""
|
34
|
+
qc = QuantumCircuit(4)
|
35
|
+
qc.ccx(0, 1, 3)
|
36
|
+
qc.cx(1, 2)
|
37
|
+
qc.ccx(0, 1, 3)
|
38
|
+
qc.cx(1, 2)
|
39
|
+
return qc
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 4a_3:
|
15
|
+
.. parsed-literal::
|
16
|
+
q_0: ──■────■────■────■──
|
17
|
+
│ ┌─┴─┐ │ ┌─┴─┐
|
18
|
+
q_1: ──┼──┤ X ├──┼──┤ X ├
|
19
|
+
┌─┴─┐└───┘┌─┴─┐└───┘
|
20
|
+
q_2: ┤ X ├─────┤ X ├─────
|
21
|
+
└───┘ └───┘
|
22
|
+
"""
|
23
|
+
|
24
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
25
|
+
|
26
|
+
|
27
|
+
def template_nct_4a_3():
|
28
|
+
"""
|
29
|
+
Returns:
|
30
|
+
QuantumCircuit: template as a quantum circuit.
|
31
|
+
"""
|
32
|
+
qc = QuantumCircuit(3)
|
33
|
+
qc.cx(0, 2)
|
34
|
+
qc.cx(0, 1)
|
35
|
+
qc.cx(0, 2)
|
36
|
+
qc.cx(0, 1)
|
37
|
+
return qc
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 4b_1:
|
15
|
+
.. parsed-literal::
|
16
|
+
q_0: ───────■─────────■──
|
17
|
+
│ │
|
18
|
+
q_1: ──■────┼────■────┼──
|
19
|
+
│ │ │ │
|
20
|
+
q_2: ──■────■────■────■──
|
21
|
+
┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐
|
22
|
+
q_3: ┤ X ├┤ X ├┤ X ├┤ X ├
|
23
|
+
└───┘└───┘└───┘└───┘
|
24
|
+
"""
|
25
|
+
|
26
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
27
|
+
|
28
|
+
|
29
|
+
def template_nct_4b_1():
|
30
|
+
"""
|
31
|
+
Returns:
|
32
|
+
QuantumCircuit: template as a quantum circuit.
|
33
|
+
"""
|
34
|
+
qc = QuantumCircuit(4)
|
35
|
+
qc.ccx(1, 2, 3)
|
36
|
+
qc.ccx(0, 2, 3)
|
37
|
+
qc.ccx(1, 2, 3)
|
38
|
+
qc.ccx(0, 2, 3)
|
39
|
+
return qc
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 4b_2:
|
15
|
+
.. parsed-literal::
|
16
|
+
q_0: ──■─────────■───────
|
17
|
+
│ │
|
18
|
+
q_1: ──■────■────■────■──
|
19
|
+
┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐
|
20
|
+
q_2: ┤ X ├┤ X ├┤ X ├┤ X ├
|
21
|
+
└───┘└───┘└───┘└───┘
|
22
|
+
"""
|
23
|
+
|
24
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
25
|
+
|
26
|
+
|
27
|
+
def template_nct_4b_2():
|
28
|
+
"""
|
29
|
+
Returns:
|
30
|
+
QuantumCircuit: template as a quantum circuit.
|
31
|
+
"""
|
32
|
+
qc = QuantumCircuit(3)
|
33
|
+
qc.ccx(0, 1, 2)
|
34
|
+
qc.cx(1, 2)
|
35
|
+
qc.ccx(0, 1, 2)
|
36
|
+
qc.cx(1, 2)
|
37
|
+
return qc
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 5a_1:
|
15
|
+
.. parsed-literal::
|
16
|
+
q_0: ──■────■────■────■────■──
|
17
|
+
│ ┌─┴─┐ │ ┌─┴─┐ │
|
18
|
+
q_1: ──■──┤ X ├──■──┤ X ├──┼──
|
19
|
+
┌─┴─┐└───┘┌─┴─┐└───┘┌─┴─┐
|
20
|
+
q_2: ┤ X ├─────┤ X ├─────┤ X ├
|
21
|
+
└───┘ └───┘ └───┘
|
22
|
+
"""
|
23
|
+
|
24
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
25
|
+
|
26
|
+
|
27
|
+
def template_nct_5a_1():
|
28
|
+
"""
|
29
|
+
Returns:
|
30
|
+
QuantumCircuit: template as a quantum circuit.
|
31
|
+
"""
|
32
|
+
qc = QuantumCircuit(3)
|
33
|
+
qc.ccx(0, 1, 2)
|
34
|
+
qc.cx(0, 1)
|
35
|
+
qc.ccx(0, 1, 2)
|
36
|
+
qc.cx(0, 1)
|
37
|
+
qc.cx(0, 2)
|
38
|
+
return qc
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 5a_2:
|
15
|
+
.. parsed-literal::
|
16
|
+
q_0: ──■─────────■─────────■──
|
17
|
+
│ ┌───┐ │ ┌───┐ │
|
18
|
+
q_1: ──■──┤ X ├──■──┤ X ├──┼──
|
19
|
+
┌─┴─┐└───┘┌─┴─┐└───┘┌─┴─┐
|
20
|
+
q_2: ┤ X ├─────┤ X ├─────┤ X ├
|
21
|
+
└───┘ └───┘ └───┘
|
22
|
+
"""
|
23
|
+
|
24
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
25
|
+
|
26
|
+
|
27
|
+
def template_nct_5a_2():
|
28
|
+
"""
|
29
|
+
Returns:
|
30
|
+
QuantumCircuit: template as a quantum circuit.
|
31
|
+
"""
|
32
|
+
qc = QuantumCircuit(3)
|
33
|
+
qc.ccx(0, 1, 2)
|
34
|
+
qc.x(1)
|
35
|
+
qc.ccx(0, 1, 2)
|
36
|
+
qc.x(1)
|
37
|
+
qc.cx(0, 2)
|
38
|
+
return qc
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 5a_3:
|
15
|
+
.. parsed-literal::
|
16
|
+
q_0: ───────■─────────■────■──
|
17
|
+
┌─┴─┐ ┌─┴─┐ │
|
18
|
+
q_1: ──■──┤ X ├──■──┤ X ├──┼──
|
19
|
+
┌─┴─┐└───┘┌─┴─┐└───┘┌─┴─┐
|
20
|
+
q_2: ┤ X ├─────┤ X ├─────┤ X ├
|
21
|
+
└───┘ └───┘ └───┘
|
22
|
+
"""
|
23
|
+
|
24
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
25
|
+
|
26
|
+
|
27
|
+
def template_nct_5a_3():
|
28
|
+
"""
|
29
|
+
Returns:
|
30
|
+
QuantumCircuit: template as a quantum circuit.
|
31
|
+
"""
|
32
|
+
qc = QuantumCircuit(3)
|
33
|
+
qc.cx(1, 2)
|
34
|
+
qc.cx(0, 1)
|
35
|
+
qc.cx(1, 2)
|
36
|
+
qc.cx(0, 1)
|
37
|
+
qc.cx(0, 2)
|
38
|
+
return qc
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 5a_4:
|
15
|
+
.. parsed-literal::
|
16
|
+
┌───┐ ┌───┐
|
17
|
+
q_0: ──■──┤ X ├──■──┤ X ├
|
18
|
+
┌─┴─┐└───┘┌─┴─┐├───┤
|
19
|
+
q_1: ┤ X ├─────┤ X ├┤ X ├
|
20
|
+
└───┘ └───┘└───┘
|
21
|
+
"""
|
22
|
+
|
23
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
24
|
+
|
25
|
+
|
26
|
+
def template_nct_5a_4():
|
27
|
+
"""
|
28
|
+
Returns:
|
29
|
+
QuantumCircuit: template as a quantum circuit.
|
30
|
+
"""
|
31
|
+
qc = QuantumCircuit(2)
|
32
|
+
qc.cx(0, 1)
|
33
|
+
qc.x(0)
|
34
|
+
qc.cx(0, 1)
|
35
|
+
qc.x(0)
|
36
|
+
qc.x(1)
|
37
|
+
return qc
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 6a_1:
|
15
|
+
.. parsed-literal::
|
16
|
+
┌───┐ ┌───┐ ┌───┐
|
17
|
+
q_0: ──■──┤ X ├──■──┤ X ├──■──┤ X ├
|
18
|
+
┌─┴─┐└─┬─┘┌─┴─┐└─┬─┘┌─┴─┐└─┬─┘
|
19
|
+
q_1: ┤ X ├──■──┤ X ├──■──┤ X ├──■──
|
20
|
+
└───┘ └───┘ └───┘
|
21
|
+
"""
|
22
|
+
|
23
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
24
|
+
|
25
|
+
|
26
|
+
def template_nct_6a_1():
|
27
|
+
"""
|
28
|
+
Returns:
|
29
|
+
QuantumCircuit: template as a quantum circuit.
|
30
|
+
"""
|
31
|
+
qc = QuantumCircuit(2)
|
32
|
+
qc.cx(0, 1)
|
33
|
+
qc.cx(1, 0)
|
34
|
+
qc.cx(0, 1)
|
35
|
+
qc.cx(1, 0)
|
36
|
+
qc.cx(0, 1)
|
37
|
+
qc.cx(1, 0)
|
38
|
+
return qc
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 6a_2:
|
15
|
+
.. parsed-literal::
|
16
|
+
q_0: ──■────■────■────■────■────■──
|
17
|
+
│ ┌─┴─┐ │ ┌─┴─┐ │ ┌─┴─┐
|
18
|
+
q_1: ──■──┤ X ├──■──┤ X ├──■──┤ X ├
|
19
|
+
┌─┴─┐└─┬─┘┌─┴─┐└─┬─┘┌─┴─┐└─┬─┘
|
20
|
+
q_2: ┤ X ├──■──┤ X ├──■──┤ X ├──■──
|
21
|
+
└───┘ └───┘ └───┘
|
22
|
+
"""
|
23
|
+
|
24
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
25
|
+
|
26
|
+
|
27
|
+
def template_nct_6a_2():
|
28
|
+
"""
|
29
|
+
Returns:
|
30
|
+
QuantumCircuit: template as a quantum circuit.
|
31
|
+
"""
|
32
|
+
qc = QuantumCircuit(3)
|
33
|
+
qc.ccx(0, 1, 2)
|
34
|
+
qc.ccx(0, 2, 1)
|
35
|
+
qc.ccx(0, 1, 2)
|
36
|
+
qc.ccx(0, 2, 1)
|
37
|
+
qc.ccx(0, 1, 2)
|
38
|
+
qc.ccx(0, 2, 1)
|
39
|
+
return qc
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 6a_3:
|
15
|
+
.. parsed-literal::
|
16
|
+
q_0: ───────■─────────■────■────■──
|
17
|
+
┌─┴─┐ ┌─┴─┐ │ ┌─┴─┐
|
18
|
+
q_1: ──■──┤ X ├──■──┤ X ├──■──┤ X ├
|
19
|
+
┌─┴─┐└─┬─┘┌─┴─┐└─┬─┘┌─┴─┐└─┬─┘
|
20
|
+
q_2: ┤ X ├──■──┤ X ├──■──┤ X ├──■──
|
21
|
+
└───┘ └───┘ └───┘
|
22
|
+
"""
|
23
|
+
|
24
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
25
|
+
|
26
|
+
|
27
|
+
def template_nct_6a_3():
|
28
|
+
"""
|
29
|
+
Returns:
|
30
|
+
QuantumCircuit: template as a quantum circuit.
|
31
|
+
"""
|
32
|
+
qc = QuantumCircuit(3)
|
33
|
+
qc.cx(1, 2)
|
34
|
+
qc.ccx(0, 2, 1)
|
35
|
+
qc.cx(1, 2)
|
36
|
+
qc.ccx(0, 2, 1)
|
37
|
+
qc.ccx(0, 1, 2)
|
38
|
+
qc.ccx(0, 2, 1)
|
39
|
+
return qc
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 6a_4:
|
15
|
+
.. parsed-literal::
|
16
|
+
q_0: ───────■──────────────■───────
|
17
|
+
┌─┴─┐ ┌───┐ │ ┌───┐
|
18
|
+
q_1: ──■──┤ X ├──■──┤ X ├──■──┤ X ├
|
19
|
+
┌─┴─┐└─┬─┘┌─┴─┐└─┬─┘┌─┴─┐└─┬─┘
|
20
|
+
q_2: ┤ X ├──■──┤ X ├──■──┤ X ├──■──
|
21
|
+
└───┘ └───┘ └───┘
|
22
|
+
"""
|
23
|
+
|
24
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
25
|
+
|
26
|
+
|
27
|
+
def template_nct_6a_4():
|
28
|
+
"""
|
29
|
+
Returns:
|
30
|
+
QuantumCircuit: template as a quantum circuit.
|
31
|
+
"""
|
32
|
+
qc = QuantumCircuit(3)
|
33
|
+
qc.cx(1, 2)
|
34
|
+
qc.ccx(0, 2, 1)
|
35
|
+
qc.cx(1, 2)
|
36
|
+
qc.cx(2, 1)
|
37
|
+
qc.ccx(0, 1, 2)
|
38
|
+
qc.cx(2, 1)
|
39
|
+
return qc
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 6b_1:
|
15
|
+
.. parsed-literal::
|
16
|
+
q_0: ──■─────────■────■─────────■──
|
17
|
+
│ ┌─┴─┐ │ ┌─┴─┐
|
18
|
+
q_1: ──■────■──┤ X ├──■────■──┤ X ├
|
19
|
+
┌─┴─┐┌─┴─┐└─┬─┘┌─┴─┐┌─┴─┐└─┬─┘
|
20
|
+
q_2: ┤ X ├┤ X ├──■──┤ X ├┤ X ├──■──
|
21
|
+
└───┘└───┘ └───┘└───┘
|
22
|
+
"""
|
23
|
+
|
24
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
25
|
+
|
26
|
+
|
27
|
+
def template_nct_6b_1():
|
28
|
+
"""
|
29
|
+
Returns:
|
30
|
+
QuantumCircuit: template as a quantum circuit.
|
31
|
+
"""
|
32
|
+
qc = QuantumCircuit(3)
|
33
|
+
qc.ccx(0, 1, 2)
|
34
|
+
qc.cx(1, 2)
|
35
|
+
qc.ccx(0, 2, 1)
|
36
|
+
qc.ccx(0, 1, 2)
|
37
|
+
qc.cx(1, 2)
|
38
|
+
qc.ccx(0, 2, 1)
|
39
|
+
return qc
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 6b_2:
|
15
|
+
.. parsed-literal::
|
16
|
+
q_0: ───────■────■─────────■────■──
|
17
|
+
│ ┌─┴─┐ │ ┌─┴─┐
|
18
|
+
q_1: ──■────■──┤ X ├──■────■──┤ X ├
|
19
|
+
┌─┴─┐┌─┴─┐└─┬─┘┌─┴─┐┌─┴─┐└─┬─┘
|
20
|
+
q_2: ┤ X ├┤ X ├──■──┤ X ├┤ X ├──■──
|
21
|
+
└───┘└───┘ └───┘└───┘
|
22
|
+
"""
|
23
|
+
|
24
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
25
|
+
|
26
|
+
|
27
|
+
def template_nct_6b_2():
|
28
|
+
"""
|
29
|
+
Returns:
|
30
|
+
QuantumCircuit: template as a quantum circuit.
|
31
|
+
"""
|
32
|
+
qc = QuantumCircuit(3)
|
33
|
+
qc.cx(1, 2)
|
34
|
+
qc.ccx(0, 1, 2)
|
35
|
+
qc.ccx(0, 2, 1)
|
36
|
+
qc.cx(1, 2)
|
37
|
+
qc.ccx(0, 1, 2)
|
38
|
+
qc.ccx(0, 2, 1)
|
39
|
+
return qc
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 6c_1:
|
15
|
+
.. parsed-literal::
|
16
|
+
q_0: ──■─────────■─────────■────■──
|
17
|
+
│ ┌───┐ │ ┌───┐ │ ┌─┴─┐
|
18
|
+
q_1: ──■──┤ X ├──■──┤ X ├──■──┤ X ├
|
19
|
+
┌─┴─┐└─┬─┘┌─┴─┐└─┬─┘┌─┴─┐└─┬─┘
|
20
|
+
q_2: ┤ X ├──■──┤ X ├──■──┤ X ├──■──
|
21
|
+
└───┘ └───┘ └───┘
|
22
|
+
"""
|
23
|
+
|
24
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
25
|
+
|
26
|
+
|
27
|
+
def template_nct_6c_1():
|
28
|
+
"""
|
29
|
+
Returns:
|
30
|
+
QuantumCircuit: template as a quantum circuit.
|
31
|
+
"""
|
32
|
+
qc = QuantumCircuit(3)
|
33
|
+
qc.ccx(0, 1, 2)
|
34
|
+
qc.cx(2, 1)
|
35
|
+
qc.ccx(0, 1, 2)
|
36
|
+
qc.cx(2, 1)
|
37
|
+
qc.ccx(0, 1, 2)
|
38
|
+
qc.ccx(0, 2, 1)
|
39
|
+
return qc
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 7a_1:
|
15
|
+
.. parsed-literal::
|
16
|
+
┌───┐ ┌───┐
|
17
|
+
q_0: ┤ X ├──■─────────■────■──┤ X ├──■──
|
18
|
+
└─┬─┘┌─┴─┐ │ ┌─┴─┐└─┬─┘ │
|
19
|
+
q_1: ──■──┤ X ├──■────■──┤ X ├──■────■──
|
20
|
+
└───┘┌─┴─┐┌─┴─┐└───┘ ┌─┴─┐
|
21
|
+
q_2: ──────────┤ X ├┤ X ├──────────┤ X ├
|
22
|
+
└───┘└───┘ └───┘
|
23
|
+
"""
|
24
|
+
|
25
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
26
|
+
|
27
|
+
|
28
|
+
def template_nct_7a_1():
|
29
|
+
"""
|
30
|
+
Returns:
|
31
|
+
QuantumCircuit: template as a quantum circuit.
|
32
|
+
"""
|
33
|
+
qc = QuantumCircuit(3)
|
34
|
+
qc.cx(1, 0)
|
35
|
+
qc.cx(0, 1)
|
36
|
+
qc.cx(1, 2)
|
37
|
+
qc.ccx(0, 1, 2)
|
38
|
+
qc.cx(0, 1)
|
39
|
+
qc.cx(1, 0)
|
40
|
+
qc.ccx(0, 1, 2)
|
41
|
+
return qc
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# This code is part of Qiskit.
|
2
|
+
#
|
3
|
+
# (C) Copyright IBM 2020.
|
4
|
+
#
|
5
|
+
# This code is licensed under the Apache License, Version 2.0. You may
|
6
|
+
# obtain a copy of this license in the LICENSE.txt file in the root directory
|
7
|
+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
|
8
|
+
#
|
9
|
+
# Any modifications or derivative works of this code must retain this
|
10
|
+
# copyright notice, and modified files need to carry a notice indicating
|
11
|
+
# that they have been altered from the originals.
|
12
|
+
|
13
|
+
"""
|
14
|
+
Template 7b_1:
|
15
|
+
.. parsed-literal::
|
16
|
+
┌───┐ ┌───┐
|
17
|
+
q_0: ┤ X ├──■─────────■────■──┤ X ├──■──
|
18
|
+
└───┘┌─┴─┐ │ ┌─┴─┐└───┘ │
|
19
|
+
q_1: ─────┤ X ├──■────■──┤ X ├───────■──
|
20
|
+
└───┘┌─┴─┐┌─┴─┐└───┘ ┌─┴─┐
|
21
|
+
q_2: ──────────┤ X ├┤ X ├──────────┤ X ├
|
22
|
+
└───┘└───┘ └───┘
|
23
|
+
"""
|
24
|
+
|
25
|
+
from qiskit.circuit.quantumcircuit import QuantumCircuit
|
26
|
+
|
27
|
+
|
28
|
+
def template_nct_7b_1():
|
29
|
+
"""
|
30
|
+
Returns:
|
31
|
+
QuantumCircuit: template as a quantum circuit.
|
32
|
+
"""
|
33
|
+
qc = QuantumCircuit(3)
|
34
|
+
qc.x(0)
|
35
|
+
qc.cx(0, 1)
|
36
|
+
qc.cx(1, 2)
|
37
|
+
qc.ccx(0, 1, 2)
|
38
|
+
qc.cx(0, 1)
|
39
|
+
qc.x(0)
|
40
|
+
qc.ccx(0, 1, 2)
|
41
|
+
return qc
|