qiskit 1.3.0b1__cp39-abi3-win32.whl → 1.3.0rc2__cp39-abi3-win32.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 -1
- qiskit/__init__.py +20 -1
- qiskit/_accelerate.pyd +0 -0
- qiskit/assembler/assemble_schedules.py +2 -0
- qiskit/circuit/__init__.py +44 -1
- qiskit/circuit/_standard_gates_commutations.py +585 -0
- qiskit/circuit/barrier.py +2 -0
- qiskit/circuit/controlflow/builder.py +3 -3
- qiskit/circuit/controlflow/if_else.py +13 -5
- qiskit/circuit/controlflow/while_loop.py +10 -2
- qiskit/circuit/delay.py +20 -3
- qiskit/circuit/equivalence.py +13 -214
- qiskit/circuit/gate.py +3 -1
- qiskit/circuit/instruction.py +32 -11
- qiskit/circuit/instructionset.py +2 -0
- qiskit/circuit/library/__init__.py +110 -14
- qiskit/circuit/library/arithmetic/__init__.py +9 -2
- qiskit/circuit/library/arithmetic/adders/__init__.py +1 -0
- qiskit/circuit/library/arithmetic/adders/adder.py +154 -2
- qiskit/circuit/library/arithmetic/adders/cdkm_ripple_carry_adder.py +20 -56
- qiskit/circuit/library/arithmetic/adders/draper_qft_adder.py +14 -1
- qiskit/circuit/library/arithmetic/adders/vbe_ripple_carry_adder.py +21 -91
- qiskit/circuit/library/arithmetic/linear_pauli_rotations.py +1 -1
- qiskit/circuit/library/arithmetic/multipliers/__init__.py +1 -0
- qiskit/circuit/library/arithmetic/multipliers/hrs_cumulative_multiplier.py +8 -1
- qiskit/circuit/library/arithmetic/multipliers/multiplier.py +94 -3
- qiskit/circuit/library/arithmetic/multipliers/rg_qft_multiplier.py +8 -1
- qiskit/circuit/library/arithmetic/weighted_adder.py +1 -1
- qiskit/circuit/library/basis_change/qft.py +20 -38
- qiskit/circuit/library/blueprintcircuit.py +64 -0
- qiskit/circuit/library/boolean_logic/__init__.py +4 -4
- qiskit/circuit/library/boolean_logic/inner_product.py +81 -4
- qiskit/circuit/library/boolean_logic/quantum_and.py +107 -4
- qiskit/circuit/library/boolean_logic/quantum_or.py +107 -3
- qiskit/circuit/library/boolean_logic/quantum_xor.py +97 -3
- qiskit/circuit/library/data_preparation/__init__.py +6 -3
- qiskit/circuit/library/data_preparation/{z_feature_map.py → _z_feature_map.py} +45 -34
- qiskit/circuit/library/data_preparation/_zz_feature_map.py +150 -0
- qiskit/circuit/library/data_preparation/pauli_feature_map.py +342 -29
- qiskit/circuit/library/fourier_checking.py +72 -11
- qiskit/circuit/library/generalized_gates/__init__.py +1 -1
- qiskit/circuit/library/generalized_gates/diagonal.py +45 -51
- qiskit/circuit/library/generalized_gates/gms.py +67 -14
- qiskit/circuit/library/generalized_gates/gr.py +4 -4
- qiskit/circuit/library/generalized_gates/isometry.py +2 -2
- qiskit/circuit/library/generalized_gates/linear_function.py +12 -6
- qiskit/circuit/library/generalized_gates/mcmt.py +167 -107
- qiskit/circuit/library/generalized_gates/permutation.py +8 -6
- qiskit/circuit/library/generalized_gates/rv.py +8 -9
- qiskit/circuit/library/graph_state.py +93 -10
- qiskit/circuit/library/grover_operator.py +270 -2
- qiskit/circuit/library/hidden_linear_function.py +83 -20
- qiskit/circuit/library/iqp.py +99 -20
- qiskit/circuit/library/n_local/__init__.py +19 -7
- qiskit/circuit/library/n_local/efficient_su2.py +118 -5
- qiskit/circuit/library/n_local/evolved_operator_ansatz.py +259 -0
- qiskit/circuit/library/n_local/excitation_preserving.py +130 -6
- qiskit/circuit/library/n_local/n_local.py +406 -5
- qiskit/circuit/library/n_local/pauli_two_design.py +106 -4
- qiskit/circuit/library/n_local/qaoa_ansatz.py +80 -1
- qiskit/circuit/library/n_local/real_amplitudes.py +127 -7
- qiskit/circuit/library/n_local/two_local.py +14 -7
- qiskit/circuit/library/overlap.py +91 -26
- qiskit/circuit/library/pauli_evolution.py +17 -15
- qiskit/circuit/library/phase_estimation.py +80 -4
- qiskit/circuit/library/quantum_volume.py +72 -20
- qiskit/circuit/library/standard_gates/__init__.py +20 -1
- qiskit/circuit/library/standard_gates/dcx.py +2 -1
- qiskit/circuit/library/standard_gates/ecr.py +2 -2
- qiskit/circuit/library/standard_gates/h.py +4 -3
- qiskit/circuit/library/standard_gates/i.py +2 -1
- qiskit/circuit/library/standard_gates/iswap.py +2 -2
- qiskit/circuit/library/standard_gates/p.py +20 -12
- qiskit/circuit/library/standard_gates/r.py +1 -1
- qiskit/circuit/library/standard_gates/rx.py +4 -3
- qiskit/circuit/library/standard_gates/rxx.py +2 -2
- qiskit/circuit/library/standard_gates/ry.py +4 -3
- qiskit/circuit/library/standard_gates/ryy.py +2 -2
- qiskit/circuit/library/standard_gates/rz.py +13 -12
- qiskit/circuit/library/standard_gates/rzx.py +6 -6
- qiskit/circuit/library/standard_gates/rzz.py +1 -1
- qiskit/circuit/library/standard_gates/s.py +4 -4
- qiskit/circuit/library/standard_gates/swap.py +3 -3
- qiskit/circuit/library/standard_gates/sx.py +4 -3
- qiskit/circuit/library/standard_gates/t.py +2 -2
- qiskit/circuit/library/standard_gates/u.py +11 -3
- qiskit/circuit/library/standard_gates/u1.py +65 -15
- qiskit/circuit/library/standard_gates/u2.py +4 -1
- qiskit/circuit/library/standard_gates/u3.py +31 -3
- qiskit/circuit/library/standard_gates/x.py +7 -5
- qiskit/circuit/library/standard_gates/xx_minus_yy.py +2 -2
- qiskit/circuit/library/standard_gates/xx_plus_yy.py +2 -2
- qiskit/circuit/library/standard_gates/y.py +4 -3
- qiskit/circuit/library/standard_gates/z.py +3 -3
- qiskit/circuit/library/templates/clifford/clifford_2_1.py +9 -8
- qiskit/circuit/library/templates/clifford/clifford_2_2.py +10 -9
- qiskit/circuit/library/templates/clifford/clifford_2_3.py +9 -7
- qiskit/circuit/library/templates/clifford/clifford_2_4.py +9 -8
- qiskit/circuit/library/templates/clifford/clifford_3_1.py +9 -8
- qiskit/circuit/library/templates/clifford/clifford_4_1.py +10 -9
- qiskit/circuit/library/templates/clifford/clifford_4_2.py +10 -9
- qiskit/circuit/library/templates/clifford/clifford_4_3.py +10 -9
- qiskit/circuit/library/templates/clifford/clifford_4_4.py +10 -9
- qiskit/circuit/library/templates/clifford/clifford_5_1.py +10 -9
- qiskit/circuit/library/templates/clifford/clifford_6_1.py +10 -9
- qiskit/circuit/library/templates/clifford/clifford_6_2.py +10 -9
- qiskit/circuit/library/templates/clifford/clifford_6_3.py +10 -9
- qiskit/circuit/library/templates/clifford/clifford_6_4.py +9 -8
- qiskit/circuit/library/templates/clifford/clifford_6_5.py +10 -9
- qiskit/circuit/library/templates/clifford/clifford_8_1.py +10 -9
- qiskit/circuit/library/templates/clifford/clifford_8_2.py +10 -9
- qiskit/circuit/library/templates/clifford/clifford_8_3.py +10 -9
- qiskit/circuit/library/templates/nct/template_nct_2a_1.py +9 -7
- qiskit/circuit/library/templates/nct/template_nct_2a_2.py +10 -8
- qiskit/circuit/library/templates/nct/template_nct_2a_3.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_4a_1.py +16 -14
- qiskit/circuit/library/templates/nct/template_nct_4a_2.py +14 -12
- qiskit/circuit/library/templates/nct/template_nct_4a_3.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_4b_1.py +14 -12
- qiskit/circuit/library/templates/nct/template_nct_4b_2.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_5a_1.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_5a_2.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_5a_3.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_5a_4.py +11 -9
- qiskit/circuit/library/templates/nct/template_nct_6a_1.py +11 -9
- qiskit/circuit/library/templates/nct/template_nct_6a_2.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_6a_3.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_6a_4.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_6b_1.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_6b_2.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_6c_1.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_7a_1.py +13 -11
- qiskit/circuit/library/templates/nct/template_nct_7b_1.py +13 -11
- qiskit/circuit/library/templates/nct/template_nct_7c_1.py +13 -11
- qiskit/circuit/library/templates/nct/template_nct_7d_1.py +13 -11
- qiskit/circuit/library/templates/nct/template_nct_7e_1.py +13 -11
- qiskit/circuit/library/templates/nct/template_nct_9a_1.py +13 -11
- qiskit/circuit/library/templates/nct/template_nct_9c_1.py +11 -9
- qiskit/circuit/library/templates/nct/template_nct_9c_10.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9c_11.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9c_12.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9c_2.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9c_3.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9c_4.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9c_5.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9c_6.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9c_7.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9c_8.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9c_9.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9d_1.py +11 -9
- qiskit/circuit/library/templates/nct/template_nct_9d_10.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9d_2.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9d_3.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9d_4.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9d_5.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9d_6.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9d_7.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9d_8.py +12 -10
- qiskit/circuit/library/templates/nct/template_nct_9d_9.py +12 -10
- qiskit/circuit/library/templates/rzx/rzx_cy.py +11 -10
- qiskit/circuit/library/templates/rzx/rzx_xz.py +16 -15
- qiskit/circuit/library/templates/rzx/rzx_yz.py +12 -10
- qiskit/circuit/library/templates/rzx/rzx_zz1.py +22 -20
- qiskit/circuit/library/templates/rzx/rzx_zz2.py +16 -15
- qiskit/circuit/library/templates/rzx/rzx_zz3.py +17 -15
- qiskit/circuit/parameter.py +4 -0
- qiskit/circuit/parameterexpression.py +167 -34
- qiskit/circuit/quantumcircuit.py +162 -126
- qiskit/circuit/singleton.py +2 -0
- qiskit/circuit/store.py +2 -0
- qiskit/circuit/twirling.py +145 -0
- qiskit/compiler/assembler.py +17 -4
- qiskit/compiler/scheduler.py +2 -0
- qiskit/compiler/sequencer.py +2 -0
- qiskit/compiler/transpiler.py +81 -26
- qiskit/converters/circuit_to_dag.py +2 -2
- qiskit/converters/circuit_to_dagdependency.py +1 -1
- qiskit/converters/circuit_to_dagdependency_v2.py +1 -1
- qiskit/converters/circuit_to_instruction.py +1 -1
- qiskit/converters/dag_to_circuit.py +7 -5
- qiskit/converters/dag_to_dagdependency.py +1 -1
- qiskit/converters/dag_to_dagdependency_v2.py +1 -1
- qiskit/converters/dagdependency_to_circuit.py +5 -1
- qiskit/converters/dagdependency_to_dag.py +6 -1
- qiskit/dagcircuit/collect_blocks.py +3 -3
- qiskit/dagcircuit/dagdependency.py +18 -5
- qiskit/dagcircuit/dagdependency_v2.py +1 -1
- qiskit/dagcircuit/dagnode.py +2 -2
- qiskit/passmanager/__init__.py +2 -2
- qiskit/primitives/backend_estimator.py +5 -2
- qiskit/primitives/backend_sampler_v2.py +61 -18
- qiskit/primitives/base/base_estimator.py +2 -2
- qiskit/primitives/containers/data_bin.py +9 -1
- qiskit/primitives/statevector_sampler.py +1 -1
- qiskit/primitives/utils.py +1 -1
- qiskit/providers/__init__.py +3 -3
- qiskit/providers/backend.py +12 -1
- qiskit/providers/backend_compat.py +23 -3
- qiskit/providers/basic_provider/basic_simulator.py +12 -2
- qiskit/providers/fake_provider/fake_pulse_backend.py +6 -1
- qiskit/providers/fake_provider/generic_backend_v2.py +46 -30
- qiskit/providers/models/pulsedefaults.py +2 -0
- qiskit/pulse/builder.py +59 -18
- qiskit/pulse/calibration_entries.py +4 -1
- qiskit/pulse/channels.py +2 -0
- qiskit/pulse/exceptions.py +2 -0
- qiskit/pulse/instruction_schedule_map.py +21 -6
- qiskit/pulse/instructions/acquire.py +2 -0
- qiskit/pulse/instructions/delay.py +2 -0
- qiskit/pulse/instructions/directives.py +8 -0
- qiskit/pulse/instructions/frequency.py +3 -0
- qiskit/pulse/instructions/instruction.py +2 -0
- qiskit/pulse/instructions/phase.py +3 -0
- qiskit/pulse/instructions/play.py +2 -0
- qiskit/pulse/instructions/reference.py +2 -0
- qiskit/pulse/instructions/snapshot.py +2 -0
- qiskit/pulse/library/pulse.py +2 -0
- qiskit/pulse/library/symbolic_pulses.py +28 -0
- qiskit/pulse/library/waveform.py +2 -0
- qiskit/pulse/macros.py +1 -1
- qiskit/pulse/schedule.py +12 -13
- qiskit/pulse/transforms/alignments.py +5 -3
- qiskit/pulse/transforms/dag.py +7 -0
- qiskit/qasm2/export.py +5 -3
- qiskit/qasm2/parse.py +46 -2
- qiskit/qasm3/__init__.py +1 -0
- qiskit/qasm3/ast.py +123 -15
- qiskit/qasm3/exporter.py +103 -77
- qiskit/qobj/converters/pulse_instruction.py +6 -4
- qiskit/qpy/__init__.py +181 -0
- qiskit/qpy/binary_io/circuits.py +20 -5
- qiskit/qpy/binary_io/schedules.py +3 -4
- qiskit/qpy/binary_io/value.py +310 -13
- qiskit/qpy/common.py +46 -2
- qiskit/qpy/formats.py +7 -0
- qiskit/qpy/interface.py +40 -4
- qiskit/quantum_info/__init__.py +4 -0
- qiskit/quantum_info/operators/channel/transformations.py +28 -21
- qiskit/quantum_info/operators/dihedral/dihedral.py +1 -1
- qiskit/quantum_info/operators/operator.py +54 -8
- qiskit/quantum_info/operators/symplectic/base_pauli.py +11 -19
- qiskit/quantum_info/operators/symplectic/clifford.py +1 -1
- qiskit/quantum_info/operators/symplectic/clifford_circuits.py +1 -1
- qiskit/quantum_info/operators/symplectic/pauli.py +2 -0
- qiskit/quantum_info/operators/symplectic/pauli_list.py +4 -4
- qiskit/quantum_info/operators/symplectic/sparse_pauli_op.py +23 -2
- qiskit/quantum_info/states/densitymatrix.py +5 -5
- qiskit/quantum_info/states/stabilizerstate.py +1 -1
- qiskit/quantum_info/states/statevector.py +6 -6
- qiskit/result/mitigation/base_readout_mitigator.py +1 -1
- qiskit/result/mitigation/correlated_readout_mitigator.py +9 -1
- qiskit/result/mitigation/local_readout_mitigator.py +9 -1
- qiskit/result/mitigation/utils.py +57 -0
- qiskit/scheduler/config.py +2 -0
- qiskit/scheduler/methods/basic.py +3 -0
- qiskit/scheduler/schedule_circuit.py +2 -0
- qiskit/scheduler/sequence.py +2 -0
- qiskit/synthesis/__init__.py +25 -0
- qiskit/synthesis/arithmetic/__init__.py +16 -0
- qiskit/synthesis/arithmetic/adders/__init__.py +17 -0
- qiskit/synthesis/arithmetic/adders/cdkm_ripple_carry_adder.py +154 -0
- qiskit/synthesis/arithmetic/adders/draper_qft_adder.py +103 -0
- qiskit/synthesis/arithmetic/adders/vbe_ripple_carry_adder.py +161 -0
- qiskit/synthesis/arithmetic/multipliers/__init__.py +16 -0
- qiskit/synthesis/arithmetic/multipliers/hrs_cumulative_multiplier.py +102 -0
- qiskit/synthesis/arithmetic/multipliers/rg_qft_multiplier.py +99 -0
- qiskit/synthesis/clifford/clifford_decompose_bm.py +1 -2
- qiskit/synthesis/clifford/clifford_decompose_greedy.py +3 -2
- qiskit/synthesis/clifford/clifford_decompose_layers.py +2 -1
- qiskit/synthesis/evolution/__init__.py +1 -0
- qiskit/synthesis/evolution/lie_trotter.py +16 -42
- qiskit/synthesis/evolution/pauli_network.py +80 -0
- qiskit/synthesis/evolution/product_formula.py +165 -238
- qiskit/synthesis/evolution/qdrift.py +36 -29
- qiskit/synthesis/evolution/suzuki_trotter.py +87 -27
- qiskit/synthesis/multi_controlled/__init__.py +1 -0
- qiskit/synthesis/multi_controlled/mcmt_vchain.py +52 -0
- qiskit/synthesis/qft/qft_decompose_full.py +19 -1
- qiskit/synthesis/qft/qft_decompose_lnn.py +2 -1
- qiskit/synthesis/stabilizer/stabilizer_decompose.py +2 -1
- qiskit/synthesis/two_qubit/two_qubit_decompose.py +4 -63
- qiskit/synthesis/unitary/qsd.py +5 -5
- qiskit/transpiler/__init__.py +21 -14
- qiskit/transpiler/basepasses.py +1 -1
- qiskit/transpiler/passes/__init__.py +2 -0
- qiskit/transpiler/passes/basis/basis_translator.py +9 -565
- qiskit/transpiler/passes/basis/decompose.py +45 -12
- qiskit/transpiler/passes/basis/unroll_3q_or_more.py +1 -1
- qiskit/transpiler/passes/basis/unroll_custom_definitions.py +1 -1
- qiskit/transpiler/passes/calibration/pulse_gate.py +4 -2
- qiskit/transpiler/passes/calibration/rx_builder.py +11 -7
- qiskit/transpiler/passes/calibration/rzx_builder.py +46 -30
- qiskit/transpiler/passes/layout/disjoint_utils.py +15 -13
- qiskit/transpiler/passes/layout/sabre_layout.py +7 -2
- qiskit/transpiler/passes/layout/sabre_pre_layout.py +5 -0
- qiskit/transpiler/passes/optimization/__init__.py +1 -0
- qiskit/transpiler/passes/optimization/collect_cliffords.py +19 -3
- qiskit/transpiler/passes/optimization/collect_linear_functions.py +1 -1
- qiskit/transpiler/passes/optimization/collect_multiqubit_blocks.py +2 -2
- qiskit/transpiler/passes/optimization/commutative_inverse_cancellation.py +1 -1
- qiskit/transpiler/passes/optimization/consolidate_blocks.py +48 -131
- qiskit/transpiler/passes/optimization/echo_rzx_weyl_decomposition.py +4 -2
- qiskit/transpiler/passes/optimization/elide_permutations.py +9 -32
- qiskit/transpiler/passes/optimization/optimize_1q_decomposition.py +5 -11
- qiskit/transpiler/passes/optimization/optimize_1q_gates.py +1 -1
- qiskit/transpiler/passes/optimization/optimize_swap_before_measure.py +1 -1
- qiskit/transpiler/passes/optimization/remove_identity_equiv.py +69 -0
- qiskit/transpiler/passes/optimization/template_matching/backward_match.py +5 -5
- qiskit/transpiler/passes/optimization/template_matching/forward_match.py +4 -4
- qiskit/transpiler/passes/optimization/template_matching/template_substitution.py +2 -2
- qiskit/transpiler/passes/routing/commuting_2q_gate_routing/commuting_2q_gate_router.py +1 -1
- qiskit/transpiler/passes/routing/commuting_2q_gate_routing/swap_strategy.py +1 -1
- qiskit/transpiler/passes/routing/sabre_swap.py +7 -3
- qiskit/transpiler/passes/routing/star_prerouting.py +2 -2
- qiskit/transpiler/passes/scheduling/alap.py +1 -1
- qiskit/transpiler/passes/scheduling/alignments/align_measures.py +2 -2
- qiskit/transpiler/passes/scheduling/alignments/check_durations.py +1 -1
- qiskit/transpiler/passes/scheduling/alignments/pulse_gate_validation.py +2 -0
- qiskit/transpiler/passes/scheduling/alignments/reschedule.py +2 -2
- qiskit/transpiler/passes/scheduling/asap.py +1 -1
- qiskit/transpiler/passes/scheduling/base_scheduler.py +14 -12
- qiskit/transpiler/passes/scheduling/dynamical_decoupling.py +9 -4
- qiskit/transpiler/passes/scheduling/padding/base_padding.py +1 -1
- qiskit/transpiler/passes/scheduling/padding/dynamical_decoupling.py +16 -5
- qiskit/transpiler/passes/scheduling/padding/pad_delay.py +4 -1
- qiskit/transpiler/passes/scheduling/scheduling/base_scheduler.py +6 -2
- qiskit/transpiler/passes/scheduling/time_unit_conversion.py +9 -4
- qiskit/transpiler/passes/synthesis/high_level_synthesis.py +262 -99
- qiskit/transpiler/passes/synthesis/hls_plugins.py +637 -7
- qiskit/transpiler/passes/synthesis/solovay_kitaev_synthesis.py +3 -3
- qiskit/transpiler/passes/synthesis/unitary_synthesis.py +55 -34
- qiskit/transpiler/passes/utils/barrier_before_final_measurements.py +2 -56
- qiskit/transpiler/passes/utils/convert_conditions_to_if_ops.py +5 -0
- qiskit/transpiler/passes/utils/gate_direction.py +12 -275
- qiskit/transpiler/passes/utils/gates_basis.py +7 -30
- qiskit/transpiler/passes/utils/merge_adjacent_barriers.py +2 -1
- qiskit/transpiler/passmanager_config.py +22 -4
- qiskit/transpiler/preset_passmanagers/builtin_plugins.py +40 -14
- qiskit/transpiler/preset_passmanagers/common.py +5 -3
- qiskit/transpiler/preset_passmanagers/generate_preset_pass_manager.py +125 -42
- qiskit/transpiler/preset_passmanagers/plugin.py +1 -1
- qiskit/transpiler/target.py +74 -16
- qiskit/utils/deprecate_pulse.py +119 -0
- qiskit/visualization/circuit/_utils.py +2 -2
- qiskit/visualization/circuit/circuit_visualization.py +3 -2
- qiskit/visualization/circuit/matplotlib.py +1 -1
- qiskit/visualization/dag_visualization.py +1 -1
- qiskit/visualization/pass_manager_visualization.py +3 -14
- qiskit/visualization/pulse_v2/interface.py +3 -1
- qiskit/visualization/timeline/core.py +25 -2
- qiskit/visualization/timeline/interface.py +12 -0
- {qiskit-1.3.0b1.dist-info → qiskit-1.3.0rc2.dist-info}/METADATA +9 -8
- {qiskit-1.3.0b1.dist-info → qiskit-1.3.0rc2.dist-info}/RECORD +357 -346
- {qiskit-1.3.0b1.dist-info → qiskit-1.3.0rc2.dist-info}/WHEEL +1 -1
- {qiskit-1.3.0b1.dist-info → qiskit-1.3.0rc2.dist-info}/entry_points.txt +19 -0
- qiskit/circuit/library/data_preparation/zz_feature_map.py +0 -118
- qiskit/synthesis/two_qubit/weyl.py +0 -97
- qiskit/transpiler/passes/synthesis/qubit_tracker.py +0 -132
- {qiskit-1.3.0b1.dist-info → qiskit-1.3.0rc2.dist-info}/LICENSE.txt +0 -0
- {qiskit-1.3.0b1.dist-info → qiskit-1.3.0rc2.dist-info}/top_level.txt +0 -0
@@ -47,6 +47,7 @@ on the zeroth qubit of the first cx but the zeroth qubit of the second gate over
|
|
47
47
|
first cx.
|
48
48
|
"""
|
49
49
|
|
50
|
+
|
50
51
|
standard_gates_commutations = {
|
51
52
|
("id", "id"): True,
|
52
53
|
("id", "sx"): True,
|
@@ -70,6 +71,10 @@ standard_gates_commutations = {
|
|
70
71
|
("id", "iswap"): True,
|
71
72
|
("id", "sxdg"): True,
|
72
73
|
("id", "tdg"): True,
|
74
|
+
("id", "rxx"): True,
|
75
|
+
("id", "ryy"): True,
|
76
|
+
("id", "rzz"): True,
|
77
|
+
("id", "rzx"): True,
|
73
78
|
("sx", "sx"): True,
|
74
79
|
("sx", "cx"): {
|
75
80
|
(0,): False,
|
@@ -109,6 +114,13 @@ standard_gates_commutations = {
|
|
109
114
|
("sx", "iswap"): False,
|
110
115
|
("sx", "sxdg"): True,
|
111
116
|
("sx", "tdg"): False,
|
117
|
+
("sx", "rxx"): True,
|
118
|
+
("sx", "ryy"): False,
|
119
|
+
("sx", "rzz"): False,
|
120
|
+
("sx", "rzx"): {
|
121
|
+
(0,): False,
|
122
|
+
(1,): True,
|
123
|
+
},
|
112
124
|
("x", "id"): True,
|
113
125
|
("x", "sx"): True,
|
114
126
|
("x", "x"): True,
|
@@ -152,6 +164,13 @@ standard_gates_commutations = {
|
|
152
164
|
("x", "tdg"): False,
|
153
165
|
("x", "y"): False,
|
154
166
|
("x", "z"): False,
|
167
|
+
("x", "rxx"): True,
|
168
|
+
("x", "ryy"): False,
|
169
|
+
("x", "rzz"): False,
|
170
|
+
("x", "rzx"): {
|
171
|
+
(0,): False,
|
172
|
+
(1,): True,
|
173
|
+
},
|
155
174
|
("cx", "cx"): {
|
156
175
|
(0, 1): True,
|
157
176
|
(0, None): True,
|
@@ -303,6 +322,31 @@ standard_gates_commutations = {
|
|
303
322
|
},
|
304
323
|
("cx", "swap"): False,
|
305
324
|
("cx", "iswap"): False,
|
325
|
+
("cx", "rxx"): {
|
326
|
+
(0, 1): False,
|
327
|
+
(0, None): False,
|
328
|
+
(1, 0): False,
|
329
|
+
(1, None): False,
|
330
|
+
(None, 0): True,
|
331
|
+
(None, 1): True,
|
332
|
+
},
|
333
|
+
("cx", "ryy"): False,
|
334
|
+
("cx", "rzz"): {
|
335
|
+
(0, 1): False,
|
336
|
+
(0, None): True,
|
337
|
+
(1, 0): False,
|
338
|
+
(1, None): True,
|
339
|
+
(None, 0): False,
|
340
|
+
(None, 1): False,
|
341
|
+
},
|
342
|
+
("cx", "rzx"): {
|
343
|
+
(0, 1): True,
|
344
|
+
(0, None): True,
|
345
|
+
(1, 0): False,
|
346
|
+
(1, None): False,
|
347
|
+
(None, 0): False,
|
348
|
+
(None, 1): True,
|
349
|
+
},
|
306
350
|
("c3sx", "c3sx"): {
|
307
351
|
(0, 1, 2, 3): True,
|
308
352
|
(0, 1, 2, None): True,
|
@@ -1029,6 +1073,10 @@ standard_gates_commutations = {
|
|
1029
1073
|
("dcx", "csdg"): False,
|
1030
1074
|
("dcx", "swap"): False,
|
1031
1075
|
("dcx", "iswap"): False,
|
1076
|
+
("dcx", "rxx"): False,
|
1077
|
+
("dcx", "ryy"): False,
|
1078
|
+
("dcx", "rzz"): False,
|
1079
|
+
("dcx", "rzx"): False,
|
1032
1080
|
("ch", "cx"): {
|
1033
1081
|
(0, 1): False,
|
1034
1082
|
(0, None): True,
|
@@ -1189,6 +1237,24 @@ standard_gates_commutations = {
|
|
1189
1237
|
},
|
1190
1238
|
("ch", "swap"): False,
|
1191
1239
|
("ch", "iswap"): False,
|
1240
|
+
("ch", "rxx"): False,
|
1241
|
+
("ch", "ryy"): False,
|
1242
|
+
("ch", "rzz"): {
|
1243
|
+
(0, 1): False,
|
1244
|
+
(0, None): True,
|
1245
|
+
(1, 0): False,
|
1246
|
+
(1, None): True,
|
1247
|
+
(None, 0): False,
|
1248
|
+
(None, 1): False,
|
1249
|
+
},
|
1250
|
+
("ch", "rzx"): {
|
1251
|
+
(0, 1): False,
|
1252
|
+
(0, None): True,
|
1253
|
+
(1, 0): False,
|
1254
|
+
(1, None): False,
|
1255
|
+
(None, 0): False,
|
1256
|
+
(None, 1): False,
|
1257
|
+
},
|
1192
1258
|
("cswap", "c3sx"): {
|
1193
1259
|
(0, 1, 2): True,
|
1194
1260
|
(0, 1, 3): False,
|
@@ -1499,6 +1565,31 @@ standard_gates_commutations = {
|
|
1499
1565
|
},
|
1500
1566
|
("csx", "swap"): False,
|
1501
1567
|
("csx", "iswap"): False,
|
1568
|
+
("csx", "rxx"): {
|
1569
|
+
(0, 1): False,
|
1570
|
+
(0, None): False,
|
1571
|
+
(1, 0): False,
|
1572
|
+
(1, None): False,
|
1573
|
+
(None, 0): True,
|
1574
|
+
(None, 1): True,
|
1575
|
+
},
|
1576
|
+
("csx", "ryy"): False,
|
1577
|
+
("csx", "rzz"): {
|
1578
|
+
(0, 1): False,
|
1579
|
+
(0, None): True,
|
1580
|
+
(1, 0): False,
|
1581
|
+
(1, None): True,
|
1582
|
+
(None, 0): False,
|
1583
|
+
(None, 1): False,
|
1584
|
+
},
|
1585
|
+
("csx", "rzx"): {
|
1586
|
+
(0, 1): True,
|
1587
|
+
(0, None): True,
|
1588
|
+
(1, 0): False,
|
1589
|
+
(1, None): False,
|
1590
|
+
(None, 0): False,
|
1591
|
+
(None, 1): True,
|
1592
|
+
},
|
1502
1593
|
("cy", "c3sx"): {
|
1503
1594
|
(0, 1): False,
|
1504
1595
|
(0, 2): False,
|
@@ -1635,6 +1726,31 @@ standard_gates_commutations = {
|
|
1635
1726
|
},
|
1636
1727
|
("cy", "swap"): False,
|
1637
1728
|
("cy", "iswap"): False,
|
1729
|
+
("cy", "rxx"): False,
|
1730
|
+
("cy", "ryy"): {
|
1731
|
+
(0, 1): False,
|
1732
|
+
(0, None): False,
|
1733
|
+
(1, 0): False,
|
1734
|
+
(1, None): False,
|
1735
|
+
(None, 0): True,
|
1736
|
+
(None, 1): True,
|
1737
|
+
},
|
1738
|
+
("cy", "rzz"): {
|
1739
|
+
(0, 1): False,
|
1740
|
+
(0, None): True,
|
1741
|
+
(1, 0): False,
|
1742
|
+
(1, None): True,
|
1743
|
+
(None, 0): False,
|
1744
|
+
(None, 1): False,
|
1745
|
+
},
|
1746
|
+
("cy", "rzx"): {
|
1747
|
+
(0, 1): False,
|
1748
|
+
(0, None): True,
|
1749
|
+
(1, 0): False,
|
1750
|
+
(1, None): False,
|
1751
|
+
(None, 0): False,
|
1752
|
+
(None, 1): False,
|
1753
|
+
},
|
1638
1754
|
("cz", "c3sx"): {
|
1639
1755
|
(0, 1): True,
|
1640
1756
|
(0, 2): True,
|
@@ -1750,6 +1866,17 @@ standard_gates_commutations = {
|
|
1750
1866
|
(None, 0): False,
|
1751
1867
|
(None, 1): False,
|
1752
1868
|
},
|
1869
|
+
("cz", "rxx"): False,
|
1870
|
+
("cz", "ryy"): False,
|
1871
|
+
("cz", "rzz"): True,
|
1872
|
+
("cz", "rzx"): {
|
1873
|
+
(0, 1): False,
|
1874
|
+
(0, None): True,
|
1875
|
+
(1, 0): False,
|
1876
|
+
(1, None): False,
|
1877
|
+
(None, 0): True,
|
1878
|
+
(None, 1): False,
|
1879
|
+
},
|
1753
1880
|
("ccz", "c3sx"): {
|
1754
1881
|
(0, 1, 2): True,
|
1755
1882
|
(0, 1, 3): False,
|
@@ -2000,6 +2127,10 @@ standard_gates_commutations = {
|
|
2000
2127
|
("h", "tdg"): False,
|
2001
2128
|
("h", "y"): False,
|
2002
2129
|
("h", "z"): False,
|
2130
|
+
("h", "rxx"): False,
|
2131
|
+
("h", "ryy"): False,
|
2132
|
+
("h", "rzz"): False,
|
2133
|
+
("h", "rzx"): False,
|
2003
2134
|
("rccx", "c3sx"): {
|
2004
2135
|
(0, 1, 2): False,
|
2005
2136
|
(0, 1, 3): False,
|
@@ -2479,6 +2610,24 @@ standard_gates_commutations = {
|
|
2479
2610
|
("ecr", "csdg"): False,
|
2480
2611
|
("ecr", "swap"): False,
|
2481
2612
|
("ecr", "iswap"): False,
|
2613
|
+
("ecr", "rxx"): {
|
2614
|
+
(0, 1): False,
|
2615
|
+
(0, None): False,
|
2616
|
+
(1, 0): False,
|
2617
|
+
(1, None): False,
|
2618
|
+
(None, 0): True,
|
2619
|
+
(None, 1): True,
|
2620
|
+
},
|
2621
|
+
("ecr", "ryy"): False,
|
2622
|
+
("ecr", "rzz"): False,
|
2623
|
+
("ecr", "rzx"): {
|
2624
|
+
(0, 1): False,
|
2625
|
+
(0, None): False,
|
2626
|
+
(1, 0): True,
|
2627
|
+
(1, None): False,
|
2628
|
+
(None, 0): False,
|
2629
|
+
(None, 1): True,
|
2630
|
+
},
|
2482
2631
|
("s", "id"): True,
|
2483
2632
|
("s", "sx"): False,
|
2484
2633
|
("s", "x"): False,
|
@@ -2540,6 +2689,13 @@ standard_gates_commutations = {
|
|
2540
2689
|
("s", "tdg"): True,
|
2541
2690
|
("s", "y"): False,
|
2542
2691
|
("s", "z"): True,
|
2692
|
+
("s", "rxx"): False,
|
2693
|
+
("s", "ryy"): False,
|
2694
|
+
("s", "rzz"): True,
|
2695
|
+
("s", "rzx"): {
|
2696
|
+
(0,): True,
|
2697
|
+
(1,): False,
|
2698
|
+
},
|
2543
2699
|
("sdg", "cx"): {
|
2544
2700
|
(0,): True,
|
2545
2701
|
(1,): False,
|
@@ -2594,6 +2750,13 @@ standard_gates_commutations = {
|
|
2594
2750
|
("sdg", "iswap"): False,
|
2595
2751
|
("sdg", "sxdg"): False,
|
2596
2752
|
("sdg", "tdg"): True,
|
2753
|
+
("sdg", "rxx"): False,
|
2754
|
+
("sdg", "ryy"): False,
|
2755
|
+
("sdg", "rzz"): True,
|
2756
|
+
("sdg", "rzx"): {
|
2757
|
+
(0,): True,
|
2758
|
+
(1,): False,
|
2759
|
+
},
|
2597
2760
|
("cs", "cx"): {
|
2598
2761
|
(0, 1): False,
|
2599
2762
|
(0, None): True,
|
@@ -2726,6 +2889,17 @@ standard_gates_commutations = {
|
|
2726
2889
|
(None, 0): False,
|
2727
2890
|
(None, 1): False,
|
2728
2891
|
},
|
2892
|
+
("cs", "rxx"): False,
|
2893
|
+
("cs", "ryy"): False,
|
2894
|
+
("cs", "rzz"): True,
|
2895
|
+
("cs", "rzx"): {
|
2896
|
+
(0, 1): False,
|
2897
|
+
(0, None): True,
|
2898
|
+
(1, 0): False,
|
2899
|
+
(1, None): False,
|
2900
|
+
(None, 0): True,
|
2901
|
+
(None, 1): False,
|
2902
|
+
},
|
2729
2903
|
("csdg", "c3sx"): {
|
2730
2904
|
(0, 1): True,
|
2731
2905
|
(0, 2): True,
|
@@ -3064,6 +3238,13 @@ standard_gates_commutations = {
|
|
3064
3238
|
("sxdg", "swap"): False,
|
3065
3239
|
("sxdg", "iswap"): False,
|
3066
3240
|
("sxdg", "sxdg"): True,
|
3241
|
+
("sxdg", "rxx"): True,
|
3242
|
+
("sxdg", "ryy"): False,
|
3243
|
+
("sxdg", "rzz"): False,
|
3244
|
+
("sxdg", "rzx"): {
|
3245
|
+
(0,): False,
|
3246
|
+
(1,): True,
|
3247
|
+
},
|
3067
3248
|
("t", "id"): True,
|
3068
3249
|
("t", "sx"): False,
|
3069
3250
|
("t", "x"): False,
|
@@ -3124,6 +3305,13 @@ standard_gates_commutations = {
|
|
3124
3305
|
("t", "tdg"): True,
|
3125
3306
|
("t", "y"): False,
|
3126
3307
|
("t", "z"): True,
|
3308
|
+
("t", "rxx"): False,
|
3309
|
+
("t", "ryy"): False,
|
3310
|
+
("t", "rzz"): True,
|
3311
|
+
("t", "rzx"): {
|
3312
|
+
(0,): True,
|
3313
|
+
(1,): False,
|
3314
|
+
},
|
3127
3315
|
("tdg", "cx"): {
|
3128
3316
|
(0,): True,
|
3129
3317
|
(1,): False,
|
@@ -3177,6 +3365,13 @@ standard_gates_commutations = {
|
|
3177
3365
|
("tdg", "iswap"): False,
|
3178
3366
|
("tdg", "sxdg"): False,
|
3179
3367
|
("tdg", "tdg"): True,
|
3368
|
+
("tdg", "rxx"): False,
|
3369
|
+
("tdg", "ryy"): False,
|
3370
|
+
("tdg", "rzz"): True,
|
3371
|
+
("tdg", "rzx"): {
|
3372
|
+
(0,): True,
|
3373
|
+
(1,): False,
|
3374
|
+
},
|
3180
3375
|
("y", "id"): True,
|
3181
3376
|
("y", "sx"): False,
|
3182
3377
|
("y", "cx"): False,
|
@@ -3204,6 +3399,10 @@ standard_gates_commutations = {
|
|
3204
3399
|
("y", "tdg"): False,
|
3205
3400
|
("y", "y"): True,
|
3206
3401
|
("y", "z"): False,
|
3402
|
+
("y", "rxx"): False,
|
3403
|
+
("y", "ryy"): True,
|
3404
|
+
("y", "rzz"): False,
|
3405
|
+
("y", "rzx"): False,
|
3207
3406
|
("z", "id"): True,
|
3208
3407
|
("z", "sx"): False,
|
3209
3408
|
("z", "cx"): {
|
@@ -3261,4 +3460,390 @@ standard_gates_commutations = {
|
|
3261
3460
|
("z", "sxdg"): False,
|
3262
3461
|
("z", "tdg"): True,
|
3263
3462
|
("z", "z"): True,
|
3463
|
+
("z", "rxx"): False,
|
3464
|
+
("z", "ryy"): False,
|
3465
|
+
("z", "rzz"): True,
|
3466
|
+
("z", "rzx"): {
|
3467
|
+
(0,): True,
|
3468
|
+
(1,): False,
|
3469
|
+
},
|
3470
|
+
("rxx", "c3sx"): {
|
3471
|
+
(0, 1): False,
|
3472
|
+
(0, 2): False,
|
3473
|
+
(0, 3): False,
|
3474
|
+
(0, None): False,
|
3475
|
+
(1, 0): False,
|
3476
|
+
(1, 2): False,
|
3477
|
+
(1, 3): False,
|
3478
|
+
(1, None): False,
|
3479
|
+
(2, 0): False,
|
3480
|
+
(2, 1): False,
|
3481
|
+
(2, 3): False,
|
3482
|
+
(2, None): False,
|
3483
|
+
(3, 0): False,
|
3484
|
+
(3, 1): False,
|
3485
|
+
(3, 2): False,
|
3486
|
+
(3, None): True,
|
3487
|
+
(None, 0): False,
|
3488
|
+
(None, 1): False,
|
3489
|
+
(None, 2): False,
|
3490
|
+
(None, 3): True,
|
3491
|
+
},
|
3492
|
+
("rxx", "ccx"): {
|
3493
|
+
(0, 1): False,
|
3494
|
+
(0, 2): False,
|
3495
|
+
(0, None): False,
|
3496
|
+
(1, 0): False,
|
3497
|
+
(1, 2): False,
|
3498
|
+
(1, None): False,
|
3499
|
+
(2, 0): False,
|
3500
|
+
(2, 1): False,
|
3501
|
+
(2, None): True,
|
3502
|
+
(None, 0): False,
|
3503
|
+
(None, 1): False,
|
3504
|
+
(None, 2): True,
|
3505
|
+
},
|
3506
|
+
("rxx", "cswap"): {
|
3507
|
+
(0, 1): False,
|
3508
|
+
(0, 2): False,
|
3509
|
+
(0, None): False,
|
3510
|
+
(1, 0): False,
|
3511
|
+
(1, 2): True,
|
3512
|
+
(1, None): False,
|
3513
|
+
(2, 0): False,
|
3514
|
+
(2, 1): True,
|
3515
|
+
(2, None): False,
|
3516
|
+
(None, 0): False,
|
3517
|
+
(None, 1): False,
|
3518
|
+
(None, 2): False,
|
3519
|
+
},
|
3520
|
+
("rxx", "ccz"): False,
|
3521
|
+
("rxx", "rccx"): False,
|
3522
|
+
("rxx", "rcccx"): False,
|
3523
|
+
("rxx", "csdg"): False,
|
3524
|
+
("rxx", "swap"): {
|
3525
|
+
(0, 1): True,
|
3526
|
+
(0, None): False,
|
3527
|
+
(1, 0): True,
|
3528
|
+
(1, None): False,
|
3529
|
+
(None, 0): False,
|
3530
|
+
(None, 1): False,
|
3531
|
+
},
|
3532
|
+
("rxx", "iswap"): {
|
3533
|
+
(0, 1): True,
|
3534
|
+
(0, None): False,
|
3535
|
+
(1, 0): True,
|
3536
|
+
(1, None): False,
|
3537
|
+
(None, 0): False,
|
3538
|
+
(None, 1): False,
|
3539
|
+
},
|
3540
|
+
("rxx", "rxx"): True,
|
3541
|
+
("rxx", "ryy"): {
|
3542
|
+
(0, 1): True,
|
3543
|
+
(0, None): False,
|
3544
|
+
(1, 0): True,
|
3545
|
+
(1, None): False,
|
3546
|
+
(None, 0): False,
|
3547
|
+
(None, 1): False,
|
3548
|
+
},
|
3549
|
+
("rxx", "rzz"): {
|
3550
|
+
(0, 1): True,
|
3551
|
+
(0, None): False,
|
3552
|
+
(1, 0): True,
|
3553
|
+
(1, None): False,
|
3554
|
+
(None, 0): False,
|
3555
|
+
(None, 1): False,
|
3556
|
+
},
|
3557
|
+
("rxx", "rzx"): {
|
3558
|
+
(0, 1): False,
|
3559
|
+
(0, None): False,
|
3560
|
+
(1, 0): False,
|
3561
|
+
(1, None): True,
|
3562
|
+
(None, 0): False,
|
3563
|
+
(None, 1): True,
|
3564
|
+
},
|
3565
|
+
("ryy", "c3sx"): False,
|
3566
|
+
("ryy", "ccx"): False,
|
3567
|
+
("ryy", "cswap"): {
|
3568
|
+
(0, 1): False,
|
3569
|
+
(0, 2): False,
|
3570
|
+
(0, None): False,
|
3571
|
+
(1, 0): False,
|
3572
|
+
(1, 2): True,
|
3573
|
+
(1, None): False,
|
3574
|
+
(2, 0): False,
|
3575
|
+
(2, 1): True,
|
3576
|
+
(2, None): False,
|
3577
|
+
(None, 0): False,
|
3578
|
+
(None, 1): False,
|
3579
|
+
(None, 2): False,
|
3580
|
+
},
|
3581
|
+
("ryy", "ccz"): False,
|
3582
|
+
("ryy", "rccx"): False,
|
3583
|
+
("ryy", "rcccx"): False,
|
3584
|
+
("ryy", "csdg"): False,
|
3585
|
+
("ryy", "swap"): {
|
3586
|
+
(0, 1): True,
|
3587
|
+
(0, None): False,
|
3588
|
+
(1, 0): True,
|
3589
|
+
(1, None): False,
|
3590
|
+
(None, 0): False,
|
3591
|
+
(None, 1): False,
|
3592
|
+
},
|
3593
|
+
("ryy", "iswap"): {
|
3594
|
+
(0, 1): True,
|
3595
|
+
(0, None): False,
|
3596
|
+
(1, 0): True,
|
3597
|
+
(1, None): False,
|
3598
|
+
(None, 0): False,
|
3599
|
+
(None, 1): False,
|
3600
|
+
},
|
3601
|
+
("ryy", "ryy"): True,
|
3602
|
+
("ryy", "rzz"): {
|
3603
|
+
(0, 1): True,
|
3604
|
+
(0, None): False,
|
3605
|
+
(1, 0): True,
|
3606
|
+
(1, None): False,
|
3607
|
+
(None, 0): False,
|
3608
|
+
(None, 1): False,
|
3609
|
+
},
|
3610
|
+
("ryy", "rzx"): {
|
3611
|
+
(0, 1): True,
|
3612
|
+
(0, None): False,
|
3613
|
+
(1, 0): True,
|
3614
|
+
(1, None): False,
|
3615
|
+
(None, 0): False,
|
3616
|
+
(None, 1): False,
|
3617
|
+
},
|
3618
|
+
("rzz", "c3sx"): {
|
3619
|
+
(0, 1): True,
|
3620
|
+
(0, 2): True,
|
3621
|
+
(0, 3): False,
|
3622
|
+
(0, None): True,
|
3623
|
+
(1, 0): True,
|
3624
|
+
(1, 2): True,
|
3625
|
+
(1, 3): False,
|
3626
|
+
(1, None): True,
|
3627
|
+
(2, 0): True,
|
3628
|
+
(2, 1): True,
|
3629
|
+
(2, 3): False,
|
3630
|
+
(2, None): True,
|
3631
|
+
(3, 0): False,
|
3632
|
+
(3, 1): False,
|
3633
|
+
(3, 2): False,
|
3634
|
+
(3, None): False,
|
3635
|
+
(None, 0): True,
|
3636
|
+
(None, 1): True,
|
3637
|
+
(None, 2): True,
|
3638
|
+
(None, 3): False,
|
3639
|
+
},
|
3640
|
+
("rzz", "ccx"): {
|
3641
|
+
(0, 1): True,
|
3642
|
+
(0, 2): False,
|
3643
|
+
(0, None): True,
|
3644
|
+
(1, 0): True,
|
3645
|
+
(1, 2): False,
|
3646
|
+
(1, None): True,
|
3647
|
+
(2, 0): False,
|
3648
|
+
(2, 1): False,
|
3649
|
+
(2, None): False,
|
3650
|
+
(None, 0): True,
|
3651
|
+
(None, 1): True,
|
3652
|
+
(None, 2): False,
|
3653
|
+
},
|
3654
|
+
("rzz", "cswap"): {
|
3655
|
+
(0, 1): False,
|
3656
|
+
(0, 2): False,
|
3657
|
+
(0, None): True,
|
3658
|
+
(1, 0): False,
|
3659
|
+
(1, 2): True,
|
3660
|
+
(1, None): False,
|
3661
|
+
(2, 0): False,
|
3662
|
+
(2, 1): True,
|
3663
|
+
(2, None): False,
|
3664
|
+
(None, 0): True,
|
3665
|
+
(None, 1): False,
|
3666
|
+
(None, 2): False,
|
3667
|
+
},
|
3668
|
+
("rzz", "ccz"): True,
|
3669
|
+
("rzz", "rccx"): {
|
3670
|
+
(0, 1): True,
|
3671
|
+
(0, 2): False,
|
3672
|
+
(0, None): True,
|
3673
|
+
(1, 0): True,
|
3674
|
+
(1, 2): False,
|
3675
|
+
(1, None): True,
|
3676
|
+
(2, 0): False,
|
3677
|
+
(2, 1): False,
|
3678
|
+
(2, None): False,
|
3679
|
+
(None, 0): True,
|
3680
|
+
(None, 1): True,
|
3681
|
+
(None, 2): False,
|
3682
|
+
},
|
3683
|
+
("rzz", "rcccx"): {
|
3684
|
+
(0, 1): True,
|
3685
|
+
(0, 2): True,
|
3686
|
+
(0, 3): False,
|
3687
|
+
(0, None): True,
|
3688
|
+
(1, 0): True,
|
3689
|
+
(1, 2): True,
|
3690
|
+
(1, 3): False,
|
3691
|
+
(1, None): True,
|
3692
|
+
(2, 0): True,
|
3693
|
+
(2, 1): True,
|
3694
|
+
(2, 3): False,
|
3695
|
+
(2, None): True,
|
3696
|
+
(3, 0): False,
|
3697
|
+
(3, 1): False,
|
3698
|
+
(3, 2): False,
|
3699
|
+
(3, None): False,
|
3700
|
+
(None, 0): True,
|
3701
|
+
(None, 1): True,
|
3702
|
+
(None, 2): True,
|
3703
|
+
(None, 3): False,
|
3704
|
+
},
|
3705
|
+
("rzz", "csdg"): True,
|
3706
|
+
("rzz", "swap"): {
|
3707
|
+
(0, 1): True,
|
3708
|
+
(0, None): False,
|
3709
|
+
(1, 0): True,
|
3710
|
+
(1, None): False,
|
3711
|
+
(None, 0): False,
|
3712
|
+
(None, 1): False,
|
3713
|
+
},
|
3714
|
+
("rzz", "iswap"): {
|
3715
|
+
(0, 1): True,
|
3716
|
+
(0, None): False,
|
3717
|
+
(1, 0): True,
|
3718
|
+
(1, None): False,
|
3719
|
+
(None, 0): False,
|
3720
|
+
(None, 1): False,
|
3721
|
+
},
|
3722
|
+
("rzz", "rzz"): True,
|
3723
|
+
("rzx", "c3sx"): {
|
3724
|
+
(0, 1): False,
|
3725
|
+
(0, 2): False,
|
3726
|
+
(0, 3): True,
|
3727
|
+
(0, None): True,
|
3728
|
+
(1, 0): False,
|
3729
|
+
(1, 2): False,
|
3730
|
+
(1, 3): True,
|
3731
|
+
(1, None): True,
|
3732
|
+
(2, 0): False,
|
3733
|
+
(2, 1): False,
|
3734
|
+
(2, 3): True,
|
3735
|
+
(2, None): True,
|
3736
|
+
(3, 0): False,
|
3737
|
+
(3, 1): False,
|
3738
|
+
(3, 2): False,
|
3739
|
+
(3, None): False,
|
3740
|
+
(None, 0): False,
|
3741
|
+
(None, 1): False,
|
3742
|
+
(None, 2): False,
|
3743
|
+
(None, 3): True,
|
3744
|
+
},
|
3745
|
+
("rzx", "ccx"): {
|
3746
|
+
(0, 1): False,
|
3747
|
+
(0, 2): True,
|
3748
|
+
(0, None): True,
|
3749
|
+
(1, 0): False,
|
3750
|
+
(1, 2): True,
|
3751
|
+
(1, None): True,
|
3752
|
+
(2, 0): False,
|
3753
|
+
(2, 1): False,
|
3754
|
+
(2, None): False,
|
3755
|
+
(None, 0): False,
|
3756
|
+
(None, 1): False,
|
3757
|
+
(None, 2): True,
|
3758
|
+
},
|
3759
|
+
("rzx", "cswap"): {
|
3760
|
+
(0, 1): False,
|
3761
|
+
(0, 2): False,
|
3762
|
+
(0, None): True,
|
3763
|
+
(1, 0): False,
|
3764
|
+
(1, 2): False,
|
3765
|
+
(1, None): False,
|
3766
|
+
(2, 0): False,
|
3767
|
+
(2, 1): False,
|
3768
|
+
(2, None): False,
|
3769
|
+
(None, 0): False,
|
3770
|
+
(None, 1): False,
|
3771
|
+
(None, 2): False,
|
3772
|
+
},
|
3773
|
+
("rzx", "ccz"): {
|
3774
|
+
(0, 1): False,
|
3775
|
+
(0, 2): False,
|
3776
|
+
(0, None): True,
|
3777
|
+
(1, 0): False,
|
3778
|
+
(1, 2): False,
|
3779
|
+
(1, None): True,
|
3780
|
+
(2, 0): False,
|
3781
|
+
(2, 1): False,
|
3782
|
+
(2, None): True,
|
3783
|
+
(None, 0): False,
|
3784
|
+
(None, 1): False,
|
3785
|
+
(None, 2): False,
|
3786
|
+
},
|
3787
|
+
("rzx", "rccx"): {
|
3788
|
+
(0, 1): False,
|
3789
|
+
(0, 2): False,
|
3790
|
+
(0, None): True,
|
3791
|
+
(1, 0): False,
|
3792
|
+
(1, 2): False,
|
3793
|
+
(1, None): True,
|
3794
|
+
(2, 0): False,
|
3795
|
+
(2, 1): False,
|
3796
|
+
(2, None): False,
|
3797
|
+
(None, 0): False,
|
3798
|
+
(None, 1): False,
|
3799
|
+
(None, 2): False,
|
3800
|
+
},
|
3801
|
+
("rzx", "rcccx"): {
|
3802
|
+
(0, 1): False,
|
3803
|
+
(0, 2): False,
|
3804
|
+
(0, 3): False,
|
3805
|
+
(0, None): True,
|
3806
|
+
(1, 0): False,
|
3807
|
+
(1, 2): False,
|
3808
|
+
(1, 3): False,
|
3809
|
+
(1, None): True,
|
3810
|
+
(2, 0): False,
|
3811
|
+
(2, 1): False,
|
3812
|
+
(2, 3): False,
|
3813
|
+
(2, None): True,
|
3814
|
+
(3, 0): False,
|
3815
|
+
(3, 1): False,
|
3816
|
+
(3, 2): False,
|
3817
|
+
(3, None): False,
|
3818
|
+
(None, 0): False,
|
3819
|
+
(None, 1): False,
|
3820
|
+
(None, 2): False,
|
3821
|
+
(None, 3): False,
|
3822
|
+
},
|
3823
|
+
("rzx", "csdg"): {
|
3824
|
+
(0, 1): False,
|
3825
|
+
(0, None): True,
|
3826
|
+
(1, 0): False,
|
3827
|
+
(1, None): True,
|
3828
|
+
(None, 0): False,
|
3829
|
+
(None, 1): False,
|
3830
|
+
},
|
3831
|
+
("rzx", "swap"): False,
|
3832
|
+
("rzx", "iswap"): False,
|
3833
|
+
("rzx", "rzz"): {
|
3834
|
+
(0, 1): False,
|
3835
|
+
(0, None): True,
|
3836
|
+
(1, 0): False,
|
3837
|
+
(1, None): True,
|
3838
|
+
(None, 0): False,
|
3839
|
+
(None, 1): False,
|
3840
|
+
},
|
3841
|
+
("rzx", "rzx"): {
|
3842
|
+
(0, 1): True,
|
3843
|
+
(0, None): True,
|
3844
|
+
(1, 0): True,
|
3845
|
+
(1, None): False,
|
3846
|
+
(None, 0): False,
|
3847
|
+
(None, 1): True,
|
3848
|
+
},
|
3264
3849
|
}
|