qiskit 1.3.0__cp39-abi3-win32.whl → 1.3.0b1__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.
Files changed (361) hide show
  1. qiskit/VERSION.txt +1 -1
  2. qiskit/__init__.py +1 -20
  3. qiskit/_accelerate.pyd +0 -0
  4. qiskit/assembler/assemble_schedules.py +0 -2
  5. qiskit/circuit/__init__.py +1 -44
  6. qiskit/circuit/_standard_gates_commutations.py +0 -585
  7. qiskit/circuit/barrier.py +0 -2
  8. qiskit/circuit/controlflow/builder.py +3 -3
  9. qiskit/circuit/controlflow/if_else.py +5 -13
  10. qiskit/circuit/controlflow/while_loop.py +2 -10
  11. qiskit/circuit/delay.py +3 -20
  12. qiskit/circuit/equivalence.py +214 -13
  13. qiskit/circuit/gate.py +1 -3
  14. qiskit/circuit/instruction.py +11 -32
  15. qiskit/circuit/instructionset.py +0 -2
  16. qiskit/circuit/library/__init__.py +14 -110
  17. qiskit/circuit/library/arithmetic/__init__.py +2 -9
  18. qiskit/circuit/library/arithmetic/adders/__init__.py +0 -1
  19. qiskit/circuit/library/arithmetic/adders/adder.py +2 -154
  20. qiskit/circuit/library/arithmetic/adders/cdkm_ripple_carry_adder.py +56 -20
  21. qiskit/circuit/library/arithmetic/adders/draper_qft_adder.py +1 -14
  22. qiskit/circuit/library/arithmetic/adders/vbe_ripple_carry_adder.py +91 -21
  23. qiskit/circuit/library/arithmetic/linear_pauli_rotations.py +1 -1
  24. qiskit/circuit/library/arithmetic/multipliers/__init__.py +0 -1
  25. qiskit/circuit/library/arithmetic/multipliers/hrs_cumulative_multiplier.py +1 -8
  26. qiskit/circuit/library/arithmetic/multipliers/multiplier.py +3 -94
  27. qiskit/circuit/library/arithmetic/multipliers/rg_qft_multiplier.py +1 -8
  28. qiskit/circuit/library/arithmetic/weighted_adder.py +1 -1
  29. qiskit/circuit/library/basis_change/qft.py +38 -20
  30. qiskit/circuit/library/blueprintcircuit.py +0 -64
  31. qiskit/circuit/library/boolean_logic/__init__.py +4 -4
  32. qiskit/circuit/library/boolean_logic/inner_product.py +4 -81
  33. qiskit/circuit/library/boolean_logic/quantum_and.py +4 -107
  34. qiskit/circuit/library/boolean_logic/quantum_or.py +3 -107
  35. qiskit/circuit/library/boolean_logic/quantum_xor.py +3 -97
  36. qiskit/circuit/library/data_preparation/__init__.py +3 -6
  37. qiskit/circuit/library/data_preparation/pauli_feature_map.py +29 -342
  38. qiskit/circuit/library/data_preparation/{_z_feature_map.py → z_feature_map.py} +34 -45
  39. qiskit/circuit/library/data_preparation/zz_feature_map.py +118 -0
  40. qiskit/circuit/library/fourier_checking.py +11 -72
  41. qiskit/circuit/library/generalized_gates/__init__.py +1 -1
  42. qiskit/circuit/library/generalized_gates/diagonal.py +51 -45
  43. qiskit/circuit/library/generalized_gates/gms.py +14 -67
  44. qiskit/circuit/library/generalized_gates/gr.py +4 -4
  45. qiskit/circuit/library/generalized_gates/isometry.py +2 -2
  46. qiskit/circuit/library/generalized_gates/linear_function.py +6 -12
  47. qiskit/circuit/library/generalized_gates/mcmt.py +107 -167
  48. qiskit/circuit/library/generalized_gates/permutation.py +6 -8
  49. qiskit/circuit/library/generalized_gates/rv.py +9 -8
  50. qiskit/circuit/library/graph_state.py +10 -93
  51. qiskit/circuit/library/grover_operator.py +2 -270
  52. qiskit/circuit/library/hidden_linear_function.py +20 -83
  53. qiskit/circuit/library/iqp.py +20 -99
  54. qiskit/circuit/library/n_local/__init__.py +7 -19
  55. qiskit/circuit/library/n_local/efficient_su2.py +5 -118
  56. qiskit/circuit/library/n_local/evolved_operator_ansatz.py +0 -259
  57. qiskit/circuit/library/n_local/excitation_preserving.py +6 -130
  58. qiskit/circuit/library/n_local/n_local.py +5 -406
  59. qiskit/circuit/library/n_local/pauli_two_design.py +4 -106
  60. qiskit/circuit/library/n_local/qaoa_ansatz.py +1 -80
  61. qiskit/circuit/library/n_local/real_amplitudes.py +7 -127
  62. qiskit/circuit/library/n_local/two_local.py +7 -14
  63. qiskit/circuit/library/overlap.py +26 -91
  64. qiskit/circuit/library/pauli_evolution.py +15 -17
  65. qiskit/circuit/library/phase_estimation.py +4 -80
  66. qiskit/circuit/library/quantum_volume.py +20 -72
  67. qiskit/circuit/library/standard_gates/__init__.py +1 -20
  68. qiskit/circuit/library/standard_gates/dcx.py +1 -2
  69. qiskit/circuit/library/standard_gates/ecr.py +2 -2
  70. qiskit/circuit/library/standard_gates/h.py +3 -4
  71. qiskit/circuit/library/standard_gates/i.py +1 -2
  72. qiskit/circuit/library/standard_gates/iswap.py +2 -2
  73. qiskit/circuit/library/standard_gates/p.py +12 -20
  74. qiskit/circuit/library/standard_gates/r.py +1 -1
  75. qiskit/circuit/library/standard_gates/rx.py +3 -4
  76. qiskit/circuit/library/standard_gates/rxx.py +2 -2
  77. qiskit/circuit/library/standard_gates/ry.py +3 -4
  78. qiskit/circuit/library/standard_gates/ryy.py +2 -2
  79. qiskit/circuit/library/standard_gates/rz.py +12 -13
  80. qiskit/circuit/library/standard_gates/rzx.py +6 -6
  81. qiskit/circuit/library/standard_gates/rzz.py +1 -1
  82. qiskit/circuit/library/standard_gates/s.py +4 -4
  83. qiskit/circuit/library/standard_gates/swap.py +3 -3
  84. qiskit/circuit/library/standard_gates/sx.py +3 -4
  85. qiskit/circuit/library/standard_gates/t.py +2 -2
  86. qiskit/circuit/library/standard_gates/u.py +3 -11
  87. qiskit/circuit/library/standard_gates/u1.py +15 -65
  88. qiskit/circuit/library/standard_gates/u2.py +1 -4
  89. qiskit/circuit/library/standard_gates/u3.py +3 -31
  90. qiskit/circuit/library/standard_gates/x.py +5 -7
  91. qiskit/circuit/library/standard_gates/xx_minus_yy.py +2 -2
  92. qiskit/circuit/library/standard_gates/xx_plus_yy.py +2 -2
  93. qiskit/circuit/library/standard_gates/y.py +3 -4
  94. qiskit/circuit/library/standard_gates/z.py +3 -3
  95. qiskit/circuit/library/templates/clifford/clifford_2_1.py +8 -9
  96. qiskit/circuit/library/templates/clifford/clifford_2_2.py +9 -10
  97. qiskit/circuit/library/templates/clifford/clifford_2_3.py +7 -9
  98. qiskit/circuit/library/templates/clifford/clifford_2_4.py +8 -9
  99. qiskit/circuit/library/templates/clifford/clifford_3_1.py +8 -9
  100. qiskit/circuit/library/templates/clifford/clifford_4_1.py +9 -10
  101. qiskit/circuit/library/templates/clifford/clifford_4_2.py +9 -10
  102. qiskit/circuit/library/templates/clifford/clifford_4_3.py +9 -10
  103. qiskit/circuit/library/templates/clifford/clifford_4_4.py +9 -10
  104. qiskit/circuit/library/templates/clifford/clifford_5_1.py +9 -10
  105. qiskit/circuit/library/templates/clifford/clifford_6_1.py +9 -10
  106. qiskit/circuit/library/templates/clifford/clifford_6_2.py +9 -10
  107. qiskit/circuit/library/templates/clifford/clifford_6_3.py +9 -10
  108. qiskit/circuit/library/templates/clifford/clifford_6_4.py +8 -9
  109. qiskit/circuit/library/templates/clifford/clifford_6_5.py +9 -10
  110. qiskit/circuit/library/templates/clifford/clifford_8_1.py +9 -10
  111. qiskit/circuit/library/templates/clifford/clifford_8_2.py +9 -10
  112. qiskit/circuit/library/templates/clifford/clifford_8_3.py +9 -10
  113. qiskit/circuit/library/templates/nct/template_nct_2a_1.py +7 -9
  114. qiskit/circuit/library/templates/nct/template_nct_2a_2.py +8 -10
  115. qiskit/circuit/library/templates/nct/template_nct_2a_3.py +10 -12
  116. qiskit/circuit/library/templates/nct/template_nct_4a_1.py +14 -16
  117. qiskit/circuit/library/templates/nct/template_nct_4a_2.py +12 -14
  118. qiskit/circuit/library/templates/nct/template_nct_4a_3.py +10 -12
  119. qiskit/circuit/library/templates/nct/template_nct_4b_1.py +12 -14
  120. qiskit/circuit/library/templates/nct/template_nct_4b_2.py +10 -12
  121. qiskit/circuit/library/templates/nct/template_nct_5a_1.py +10 -12
  122. qiskit/circuit/library/templates/nct/template_nct_5a_2.py +10 -12
  123. qiskit/circuit/library/templates/nct/template_nct_5a_3.py +10 -12
  124. qiskit/circuit/library/templates/nct/template_nct_5a_4.py +9 -11
  125. qiskit/circuit/library/templates/nct/template_nct_6a_1.py +9 -11
  126. qiskit/circuit/library/templates/nct/template_nct_6a_2.py +10 -12
  127. qiskit/circuit/library/templates/nct/template_nct_6a_3.py +10 -12
  128. qiskit/circuit/library/templates/nct/template_nct_6a_4.py +10 -12
  129. qiskit/circuit/library/templates/nct/template_nct_6b_1.py +10 -12
  130. qiskit/circuit/library/templates/nct/template_nct_6b_2.py +10 -12
  131. qiskit/circuit/library/templates/nct/template_nct_6c_1.py +10 -12
  132. qiskit/circuit/library/templates/nct/template_nct_7a_1.py +11 -13
  133. qiskit/circuit/library/templates/nct/template_nct_7b_1.py +11 -13
  134. qiskit/circuit/library/templates/nct/template_nct_7c_1.py +11 -13
  135. qiskit/circuit/library/templates/nct/template_nct_7d_1.py +11 -13
  136. qiskit/circuit/library/templates/nct/template_nct_7e_1.py +11 -13
  137. qiskit/circuit/library/templates/nct/template_nct_9a_1.py +11 -13
  138. qiskit/circuit/library/templates/nct/template_nct_9c_1.py +9 -11
  139. qiskit/circuit/library/templates/nct/template_nct_9c_10.py +10 -12
  140. qiskit/circuit/library/templates/nct/template_nct_9c_11.py +10 -12
  141. qiskit/circuit/library/templates/nct/template_nct_9c_12.py +10 -12
  142. qiskit/circuit/library/templates/nct/template_nct_9c_2.py +10 -12
  143. qiskit/circuit/library/templates/nct/template_nct_9c_3.py +10 -12
  144. qiskit/circuit/library/templates/nct/template_nct_9c_4.py +10 -12
  145. qiskit/circuit/library/templates/nct/template_nct_9c_5.py +10 -12
  146. qiskit/circuit/library/templates/nct/template_nct_9c_6.py +10 -12
  147. qiskit/circuit/library/templates/nct/template_nct_9c_7.py +10 -12
  148. qiskit/circuit/library/templates/nct/template_nct_9c_8.py +10 -12
  149. qiskit/circuit/library/templates/nct/template_nct_9c_9.py +10 -12
  150. qiskit/circuit/library/templates/nct/template_nct_9d_1.py +9 -11
  151. qiskit/circuit/library/templates/nct/template_nct_9d_10.py +10 -12
  152. qiskit/circuit/library/templates/nct/template_nct_9d_2.py +10 -12
  153. qiskit/circuit/library/templates/nct/template_nct_9d_3.py +10 -12
  154. qiskit/circuit/library/templates/nct/template_nct_9d_4.py +10 -12
  155. qiskit/circuit/library/templates/nct/template_nct_9d_5.py +10 -12
  156. qiskit/circuit/library/templates/nct/template_nct_9d_6.py +10 -12
  157. qiskit/circuit/library/templates/nct/template_nct_9d_7.py +10 -12
  158. qiskit/circuit/library/templates/nct/template_nct_9d_8.py +10 -12
  159. qiskit/circuit/library/templates/nct/template_nct_9d_9.py +10 -12
  160. qiskit/circuit/library/templates/rzx/rzx_cy.py +10 -11
  161. qiskit/circuit/library/templates/rzx/rzx_xz.py +15 -16
  162. qiskit/circuit/library/templates/rzx/rzx_yz.py +10 -12
  163. qiskit/circuit/library/templates/rzx/rzx_zz1.py +20 -22
  164. qiskit/circuit/library/templates/rzx/rzx_zz2.py +15 -16
  165. qiskit/circuit/library/templates/rzx/rzx_zz3.py +15 -17
  166. qiskit/circuit/parameter.py +0 -4
  167. qiskit/circuit/parameterexpression.py +34 -167
  168. qiskit/circuit/quantumcircuit.py +126 -162
  169. qiskit/circuit/singleton.py +0 -2
  170. qiskit/circuit/store.py +0 -2
  171. qiskit/compiler/assembler.py +4 -17
  172. qiskit/compiler/scheduler.py +0 -2
  173. qiskit/compiler/sequencer.py +0 -2
  174. qiskit/compiler/transpiler.py +26 -81
  175. qiskit/converters/circuit_to_dag.py +2 -2
  176. qiskit/converters/circuit_to_dagdependency.py +1 -1
  177. qiskit/converters/circuit_to_dagdependency_v2.py +1 -1
  178. qiskit/converters/circuit_to_instruction.py +1 -1
  179. qiskit/converters/dag_to_circuit.py +5 -7
  180. qiskit/converters/dag_to_dagdependency.py +1 -1
  181. qiskit/converters/dag_to_dagdependency_v2.py +1 -1
  182. qiskit/converters/dagdependency_to_circuit.py +1 -5
  183. qiskit/converters/dagdependency_to_dag.py +1 -6
  184. qiskit/dagcircuit/collect_blocks.py +3 -3
  185. qiskit/dagcircuit/dagdependency.py +5 -18
  186. qiskit/dagcircuit/dagdependency_v2.py +1 -1
  187. qiskit/dagcircuit/dagnode.py +2 -2
  188. qiskit/passmanager/__init__.py +2 -2
  189. qiskit/primitives/backend_estimator.py +2 -5
  190. qiskit/primitives/backend_sampler_v2.py +18 -61
  191. qiskit/primitives/base/base_estimator.py +2 -2
  192. qiskit/primitives/containers/data_bin.py +1 -9
  193. qiskit/primitives/statevector_sampler.py +1 -1
  194. qiskit/primitives/utils.py +1 -1
  195. qiskit/providers/__init__.py +3 -3
  196. qiskit/providers/backend.py +1 -12
  197. qiskit/providers/backend_compat.py +3 -23
  198. qiskit/providers/basic_provider/basic_simulator.py +2 -12
  199. qiskit/providers/fake_provider/fake_pulse_backend.py +1 -6
  200. qiskit/providers/fake_provider/generic_backend_v2.py +30 -46
  201. qiskit/providers/models/pulsedefaults.py +0 -2
  202. qiskit/pulse/builder.py +18 -59
  203. qiskit/pulse/calibration_entries.py +1 -4
  204. qiskit/pulse/channels.py +0 -2
  205. qiskit/pulse/exceptions.py +0 -2
  206. qiskit/pulse/instruction_schedule_map.py +6 -21
  207. qiskit/pulse/instructions/acquire.py +0 -2
  208. qiskit/pulse/instructions/delay.py +0 -2
  209. qiskit/pulse/instructions/directives.py +0 -8
  210. qiskit/pulse/instructions/frequency.py +0 -3
  211. qiskit/pulse/instructions/instruction.py +0 -2
  212. qiskit/pulse/instructions/phase.py +0 -3
  213. qiskit/pulse/instructions/play.py +0 -2
  214. qiskit/pulse/instructions/reference.py +0 -2
  215. qiskit/pulse/instructions/snapshot.py +0 -2
  216. qiskit/pulse/library/pulse.py +0 -2
  217. qiskit/pulse/library/symbolic_pulses.py +0 -28
  218. qiskit/pulse/library/waveform.py +0 -2
  219. qiskit/pulse/macros.py +1 -1
  220. qiskit/pulse/schedule.py +13 -12
  221. qiskit/pulse/transforms/alignments.py +3 -5
  222. qiskit/pulse/transforms/dag.py +0 -7
  223. qiskit/qasm2/export.py +3 -5
  224. qiskit/qasm2/parse.py +2 -46
  225. qiskit/qasm3/__init__.py +0 -1
  226. qiskit/qasm3/ast.py +15 -123
  227. qiskit/qasm3/exporter.py +77 -103
  228. qiskit/qobj/converters/pulse_instruction.py +4 -6
  229. qiskit/qpy/__init__.py +0 -181
  230. qiskit/qpy/binary_io/circuits.py +5 -20
  231. qiskit/qpy/binary_io/schedules.py +4 -3
  232. qiskit/qpy/binary_io/value.py +13 -310
  233. qiskit/qpy/common.py +2 -46
  234. qiskit/qpy/formats.py +0 -7
  235. qiskit/qpy/interface.py +4 -40
  236. qiskit/quantum_info/__init__.py +0 -4
  237. qiskit/quantum_info/operators/channel/transformations.py +21 -28
  238. qiskit/quantum_info/operators/dihedral/dihedral.py +1 -1
  239. qiskit/quantum_info/operators/operator.py +8 -54
  240. qiskit/quantum_info/operators/symplectic/base_pauli.py +19 -11
  241. qiskit/quantum_info/operators/symplectic/clifford.py +1 -1
  242. qiskit/quantum_info/operators/symplectic/clifford_circuits.py +1 -1
  243. qiskit/quantum_info/operators/symplectic/pauli.py +0 -2
  244. qiskit/quantum_info/operators/symplectic/pauli_list.py +4 -4
  245. qiskit/quantum_info/operators/symplectic/sparse_pauli_op.py +2 -23
  246. qiskit/quantum_info/states/densitymatrix.py +5 -5
  247. qiskit/quantum_info/states/stabilizerstate.py +1 -1
  248. qiskit/quantum_info/states/statevector.py +6 -6
  249. qiskit/result/mitigation/base_readout_mitigator.py +1 -1
  250. qiskit/result/mitigation/correlated_readout_mitigator.py +1 -9
  251. qiskit/result/mitigation/local_readout_mitigator.py +1 -9
  252. qiskit/result/mitigation/utils.py +0 -57
  253. qiskit/scheduler/config.py +0 -2
  254. qiskit/scheduler/methods/basic.py +0 -3
  255. qiskit/scheduler/schedule_circuit.py +0 -2
  256. qiskit/scheduler/sequence.py +0 -2
  257. qiskit/synthesis/__init__.py +0 -25
  258. qiskit/synthesis/clifford/clifford_decompose_bm.py +2 -1
  259. qiskit/synthesis/clifford/clifford_decompose_greedy.py +2 -3
  260. qiskit/synthesis/clifford/clifford_decompose_layers.py +1 -2
  261. qiskit/synthesis/evolution/__init__.py +0 -1
  262. qiskit/synthesis/evolution/lie_trotter.py +42 -16
  263. qiskit/synthesis/evolution/product_formula.py +238 -165
  264. qiskit/synthesis/evolution/qdrift.py +29 -36
  265. qiskit/synthesis/evolution/suzuki_trotter.py +27 -87
  266. qiskit/synthesis/multi_controlled/__init__.py +0 -1
  267. qiskit/synthesis/qft/qft_decompose_full.py +1 -19
  268. qiskit/synthesis/qft/qft_decompose_lnn.py +1 -2
  269. qiskit/synthesis/stabilizer/stabilizer_decompose.py +1 -2
  270. qiskit/synthesis/two_qubit/two_qubit_decompose.py +63 -4
  271. qiskit/synthesis/two_qubit/weyl.py +97 -0
  272. qiskit/synthesis/unitary/qsd.py +5 -5
  273. qiskit/transpiler/__init__.py +14 -21
  274. qiskit/transpiler/basepasses.py +1 -1
  275. qiskit/transpiler/passes/__init__.py +0 -2
  276. qiskit/transpiler/passes/basis/basis_translator.py +565 -9
  277. qiskit/transpiler/passes/basis/decompose.py +12 -45
  278. qiskit/transpiler/passes/basis/unroll_3q_or_more.py +1 -1
  279. qiskit/transpiler/passes/basis/unroll_custom_definitions.py +1 -1
  280. qiskit/transpiler/passes/calibration/pulse_gate.py +2 -4
  281. qiskit/transpiler/passes/calibration/rx_builder.py +7 -11
  282. qiskit/transpiler/passes/calibration/rzx_builder.py +30 -46
  283. qiskit/transpiler/passes/layout/disjoint_utils.py +13 -15
  284. qiskit/transpiler/passes/layout/sabre_layout.py +2 -7
  285. qiskit/transpiler/passes/layout/sabre_pre_layout.py +0 -5
  286. qiskit/transpiler/passes/optimization/__init__.py +0 -1
  287. qiskit/transpiler/passes/optimization/collect_cliffords.py +3 -19
  288. qiskit/transpiler/passes/optimization/collect_linear_functions.py +1 -1
  289. qiskit/transpiler/passes/optimization/collect_multiqubit_blocks.py +2 -2
  290. qiskit/transpiler/passes/optimization/commutative_inverse_cancellation.py +1 -1
  291. qiskit/transpiler/passes/optimization/consolidate_blocks.py +131 -48
  292. qiskit/transpiler/passes/optimization/echo_rzx_weyl_decomposition.py +2 -4
  293. qiskit/transpiler/passes/optimization/elide_permutations.py +32 -9
  294. qiskit/transpiler/passes/optimization/inverse_cancellation.py +0 -2
  295. qiskit/transpiler/passes/optimization/optimize_1q_decomposition.py +11 -5
  296. qiskit/transpiler/passes/optimization/optimize_1q_gates.py +1 -1
  297. qiskit/transpiler/passes/optimization/optimize_swap_before_measure.py +1 -1
  298. qiskit/transpiler/passes/optimization/template_matching/backward_match.py +5 -5
  299. qiskit/transpiler/passes/optimization/template_matching/forward_match.py +4 -4
  300. qiskit/transpiler/passes/optimization/template_matching/template_substitution.py +2 -2
  301. qiskit/transpiler/passes/routing/commuting_2q_gate_routing/commuting_2q_gate_router.py +1 -1
  302. qiskit/transpiler/passes/routing/commuting_2q_gate_routing/swap_strategy.py +1 -1
  303. qiskit/transpiler/passes/routing/sabre_swap.py +3 -7
  304. qiskit/transpiler/passes/routing/star_prerouting.py +2 -2
  305. qiskit/transpiler/passes/scheduling/alap.py +1 -1
  306. qiskit/transpiler/passes/scheduling/alignments/align_measures.py +2 -2
  307. qiskit/transpiler/passes/scheduling/alignments/check_durations.py +1 -1
  308. qiskit/transpiler/passes/scheduling/alignments/pulse_gate_validation.py +0 -2
  309. qiskit/transpiler/passes/scheduling/alignments/reschedule.py +2 -2
  310. qiskit/transpiler/passes/scheduling/asap.py +1 -1
  311. qiskit/transpiler/passes/scheduling/base_scheduler.py +12 -14
  312. qiskit/transpiler/passes/scheduling/dynamical_decoupling.py +4 -9
  313. qiskit/transpiler/passes/scheduling/padding/base_padding.py +1 -1
  314. qiskit/transpiler/passes/scheduling/padding/dynamical_decoupling.py +5 -16
  315. qiskit/transpiler/passes/scheduling/padding/pad_delay.py +1 -4
  316. qiskit/transpiler/passes/scheduling/scheduling/base_scheduler.py +2 -6
  317. qiskit/transpiler/passes/scheduling/time_unit_conversion.py +4 -9
  318. qiskit/transpiler/passes/synthesis/high_level_synthesis.py +99 -262
  319. qiskit/transpiler/passes/synthesis/hls_plugins.py +7 -638
  320. qiskit/transpiler/passes/synthesis/qubit_tracker.py +132 -0
  321. qiskit/transpiler/passes/synthesis/solovay_kitaev_synthesis.py +3 -3
  322. qiskit/transpiler/passes/synthesis/unitary_synthesis.py +34 -55
  323. qiskit/transpiler/passes/utils/barrier_before_final_measurements.py +56 -2
  324. qiskit/transpiler/passes/utils/convert_conditions_to_if_ops.py +0 -5
  325. qiskit/transpiler/passes/utils/gate_direction.py +275 -12
  326. qiskit/transpiler/passes/utils/gates_basis.py +30 -7
  327. qiskit/transpiler/passes/utils/merge_adjacent_barriers.py +1 -2
  328. qiskit/transpiler/passmanager_config.py +4 -22
  329. qiskit/transpiler/preset_passmanagers/builtin_plugins.py +14 -40
  330. qiskit/transpiler/preset_passmanagers/common.py +3 -5
  331. qiskit/transpiler/preset_passmanagers/generate_preset_pass_manager.py +42 -125
  332. qiskit/transpiler/preset_passmanagers/plugin.py +1 -1
  333. qiskit/transpiler/target.py +16 -74
  334. qiskit/visualization/circuit/_utils.py +2 -2
  335. qiskit/visualization/circuit/circuit_visualization.py +2 -3
  336. qiskit/visualization/circuit/matplotlib.py +1 -1
  337. qiskit/visualization/dag_visualization.py +1 -1
  338. qiskit/visualization/pass_manager_visualization.py +14 -3
  339. qiskit/visualization/pulse_v2/interface.py +1 -3
  340. qiskit/visualization/timeline/core.py +2 -25
  341. qiskit/visualization/timeline/interface.py +0 -12
  342. {qiskit-1.3.0.dist-info → qiskit-1.3.0b1.dist-info}/METADATA +19 -20
  343. {qiskit-1.3.0.dist-info → qiskit-1.3.0b1.dist-info}/RECORD +347 -358
  344. {qiskit-1.3.0.dist-info → qiskit-1.3.0b1.dist-info}/WHEEL +1 -1
  345. {qiskit-1.3.0.dist-info → qiskit-1.3.0b1.dist-info}/entry_points.txt +0 -19
  346. qiskit/circuit/library/data_preparation/_zz_feature_map.py +0 -150
  347. qiskit/circuit/twirling.py +0 -145
  348. qiskit/synthesis/arithmetic/__init__.py +0 -16
  349. qiskit/synthesis/arithmetic/adders/__init__.py +0 -17
  350. qiskit/synthesis/arithmetic/adders/cdkm_ripple_carry_adder.py +0 -154
  351. qiskit/synthesis/arithmetic/adders/draper_qft_adder.py +0 -103
  352. qiskit/synthesis/arithmetic/adders/vbe_ripple_carry_adder.py +0 -161
  353. qiskit/synthesis/arithmetic/multipliers/__init__.py +0 -16
  354. qiskit/synthesis/arithmetic/multipliers/hrs_cumulative_multiplier.py +0 -102
  355. qiskit/synthesis/arithmetic/multipliers/rg_qft_multiplier.py +0 -99
  356. qiskit/synthesis/evolution/pauli_network.py +0 -80
  357. qiskit/synthesis/multi_controlled/mcmt_vchain.py +0 -52
  358. qiskit/transpiler/passes/optimization/remove_identity_equiv.py +0 -69
  359. qiskit/utils/deprecate_pulse.py +0 -119
  360. {qiskit-1.3.0.dist-info → qiskit-1.3.0b1.dist-info}/LICENSE.txt +0 -0
  361. {qiskit-1.3.0.dist-info → qiskit-1.3.0b1.dist-info}/top_level.txt +0 -0
@@ -10,22 +10,21 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
14
-
15
- from qiskit.circuit.quantumcircuit import QuantumCircuit
16
-
17
-
18
- def clifford_4_4():
19
- """
20
- Clifford template 4_4:
21
-
22
- .. code-block:: text
13
+ """
14
+ Clifford template 4_4:
15
+ .. parsed-literal::
23
16
 
24
17
  ┌───┐ ┌─────┐
25
18
  q_0: ┤ S ├─■─┤ SDG ├─■─
26
19
  └───┘ │ └─────┘ │
27
20
  q_1: ──────■─────────■─
21
+ """
22
+
23
+ from qiskit.circuit.quantumcircuit import QuantumCircuit
28
24
 
25
+
26
+ def clifford_4_4():
27
+ """
29
28
  Returns:
30
29
  QuantumCircuit: template as a quantum circuit.
31
30
  """
@@ -10,16 +10,9 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
14
-
15
- from qiskit.circuit.quantumcircuit import QuantumCircuit
16
-
17
-
18
- def clifford_5_1():
19
- """
20
- Clifford template 5_1:
21
-
22
- .. code-block:: text
13
+ """
14
+ Clifford template 5_1:
15
+ .. parsed-literal::
23
16
 
24
17
  q_0: ──■─────────■─────────■──
25
18
  ┌─┴─┐ ┌─┴─┐ │
@@ -27,7 +20,13 @@ def clifford_5_1():
27
20
  └───┘┌─┴─┐└───┘┌─┴─┐┌─┴─┐
28
21
  q_2: ─────┤ X ├─────┤ X ├┤ X ├
29
22
  └───┘ └───┘└───┘
23
+ """
24
+
25
+ from qiskit.circuit.quantumcircuit import QuantumCircuit
30
26
 
27
+
28
+ def clifford_5_1():
29
+ """
31
30
  Returns:
32
31
  QuantumCircuit: template as a quantum circuit.
33
32
  """
@@ -10,23 +10,22 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
14
-
15
- from qiskit.circuit.quantumcircuit import QuantumCircuit
16
-
17
-
18
- def clifford_6_1():
19
- """
20
- Clifford template 6_1:
21
-
22
- .. code-block:: text
13
+ """
14
+ Clifford template 6_1:
15
+ .. parsed-literal::
23
16
 
24
17
  ┌───┐ ┌───┐┌───┐
25
18
  q_0: ┤ H ├──■──┤ H ├┤ X ├
26
19
  ├───┤┌─┴─┐├───┤└─┬─┘
27
20
  q_1: ┤ H ├┤ X ├┤ H ├──■──
28
21
  └───┘└───┘└───┘
22
+ """
23
+
24
+ from qiskit.circuit.quantumcircuit import QuantumCircuit
29
25
 
26
+
27
+ def clifford_6_1():
28
+ """
30
29
  Returns:
31
30
  QuantumCircuit: template as a quantum circuit.
32
31
  """
@@ -10,23 +10,22 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
14
-
15
- from qiskit.circuit.quantumcircuit import QuantumCircuit
16
-
17
-
18
- def clifford_6_2():
19
- """
20
- Clifford template 6_2:
21
-
22
- .. code-block:: text
13
+ """
14
+ Clifford template 6_2:
15
+ .. parsed-literal::
23
16
 
24
17
  ┌───┐
25
18
  q_0: ┤ S ├──■───────────■───■─
26
19
  ├───┤┌─┴─┐┌─────┐┌─┴─┐ │
27
20
  q_1: ┤ S ├┤ X ├┤ SDG ├┤ X ├─■─
28
21
  └───┘└───┘└─────┘└───┘
22
+ """
23
+
24
+ from qiskit.circuit.quantumcircuit import QuantumCircuit
29
25
 
26
+
27
+ def clifford_6_2():
28
+ """
30
29
  Returns:
31
30
  QuantumCircuit: template as a quantum circuit.
32
31
  """
@@ -10,23 +10,22 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
14
-
15
- from qiskit.circuit.quantumcircuit import QuantumCircuit
16
-
17
-
18
- def clifford_6_3():
19
- """
20
- Clifford template 6_3:
21
-
22
- .. code-block:: text
13
+ """
14
+ Clifford template 6_3:
15
+ .. parsed-literal::
23
16
 
24
17
  ┌───┐ ┌───┐
25
18
  q_0: ─X──■─┤ H ├──■──┤ X ├─────
26
19
  │ │ └───┘┌─┴─┐└─┬─┘┌───┐
27
20
  q_1: ─X──■──────┤ X ├──■──┤ H ├
28
21
  └───┘ └───┘
22
+ """
23
+
24
+ from qiskit.circuit.quantumcircuit import QuantumCircuit
29
25
 
26
+
27
+ def clifford_6_3():
28
+ """
30
29
  Returns:
31
30
  QuantumCircuit: template as a quantum circuit.
32
31
  """
@@ -10,21 +10,20 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
13
+ """
14
+ Clifford template 6_4:
15
+ .. parsed-literal::
16
+
17
+ ┌───┐┌───┐┌───┐┌───┐┌───┐┌───┐
18
+ q_0: ┤ S ├┤ H ├┤ S ├┤ H ├┤ S ├┤ H ├
19
+ └───┘└───┘└───┘└───┘└───┘└───┘
20
+ """
14
21
 
15
22
  from qiskit.circuit.quantumcircuit import QuantumCircuit
16
23
 
17
24
 
18
25
  def clifford_6_4():
19
26
  """
20
- Clifford template 6_4:
21
-
22
- .. code-block:: text
23
-
24
- ┌───┐┌───┐┌───┐┌───┐┌───┐┌───┐
25
- q_0: ┤ S ├┤ H ├┤ S ├┤ H ├┤ S ├┤ H ├
26
- └───┘└───┘└───┘└───┘└───┘└───┘
27
-
28
27
  Returns:
29
28
  QuantumCircuit: template as a quantum circuit.
30
29
  """
@@ -10,23 +10,22 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
14
-
15
- from qiskit.circuit.quantumcircuit import QuantumCircuit
16
-
17
-
18
- def clifford_6_5():
19
- """
20
- Clifford template 6_5:
21
-
22
- .. code-block:: text
13
+ """
14
+ Clifford template 6_5:
15
+ .. parsed-literal::
23
16
 
24
17
  ┌───┐
25
18
  q_0: ─■───■───┤ S ├───■───────
26
19
  │ ┌─┴─┐┌┴───┴┐┌─┴─┐┌───┐
27
20
  q_1: ─■─┤ X ├┤ SDG ├┤ X ├┤ S ├
28
21
  └───┘└─────┘└───┘└───┘
22
+ """
23
+
24
+ from qiskit.circuit.quantumcircuit import QuantumCircuit
29
25
 
26
+
27
+ def clifford_6_5():
28
+ """
30
29
  Returns:
31
30
  QuantumCircuit: template as a quantum circuit.
32
31
  """
@@ -10,23 +10,22 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
14
-
15
- from qiskit.circuit.quantumcircuit import QuantumCircuit
16
-
17
-
18
- def clifford_8_1():
19
- """
20
- Clifford template 8_1:
21
-
22
- .. code-block:: text
13
+ """
14
+ Clifford template 8_1:
15
+ .. parsed-literal::
23
16
 
24
17
  ┌───┐ ┌───┐ ┌───┐┌─────┐
25
18
  q_0: ──■───────┤ X ├─┤ S ├─┤ X ├┤ SDG ├
26
19
  ┌─┴─┐┌───┐└─┬─┘┌┴───┴┐└─┬─┘└┬───┬┘
27
20
  q_1: ┤ X ├┤ H ├──■──┤ SDG ├──■───┤ H ├─
28
21
  └───┘└───┘ └─────┘ └───┘
22
+ """
23
+
24
+ from qiskit.circuit.quantumcircuit import QuantumCircuit
29
25
 
26
+
27
+ def clifford_8_1():
28
+ """
30
29
  Returns:
31
30
  QuantumCircuit: template as a quantum circuit.
32
31
  """
@@ -10,23 +10,22 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
14
-
15
- from qiskit.circuit.quantumcircuit import QuantumCircuit
16
-
17
-
18
- def clifford_8_2():
19
- """
20
- Clifford template 8_2:
21
-
22
- .. code-block:: text
13
+ """
14
+ Clifford template 8_2:
15
+ .. parsed-literal::
23
16
 
24
17
  ┌───┐
25
18
  q_0: ──■─────────■───┤ S ├───■────────────
26
19
  ┌─┴─┐┌───┐┌─┴─┐┌┴───┴┐┌─┴─┐┌───┐┌───┐
27
20
  q_1: ┤ X ├┤ H ├┤ X ├┤ SDG ├┤ X ├┤ S ├┤ H ├
28
21
  └───┘└───┘└───┘└─────┘└───┘└───┘└───┘
22
+ """
23
+
24
+ from qiskit.circuit.quantumcircuit import QuantumCircuit
29
25
 
26
+
27
+ def clifford_8_2():
28
+ """
30
29
  Returns:
31
30
  QuantumCircuit: template as a quantum circuit.
32
31
  """
@@ -10,22 +10,21 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
14
-
15
- from qiskit.circuit.quantumcircuit import QuantumCircuit
16
-
17
-
18
- def clifford_8_3():
19
- """
20
- Clifford template 8_3:
21
-
22
- .. code-block:: text
13
+ """
14
+ Clifford template 8_3:
15
+ .. parsed-literal::
23
16
 
24
17
  q_0: ─────────────────■───────────────────────■──
25
18
  ┌───┐┌───┐┌───┐┌─┴─┐┌─────┐┌───┐┌─────┐┌─┴─┐
26
19
  q_1: ┤ S ├┤ H ├┤ S ├┤ X ├┤ SDG ├┤ H ├┤ SDG ├┤ X ├
27
20
  └───┘└───┘└───┘└───┘└─────┘└───┘└─────┘└───┘
21
+ """
22
+
23
+ from qiskit.circuit.quantumcircuit import QuantumCircuit
28
24
 
25
+
26
+ def clifford_8_3():
27
+ """
29
28
  Returns:
30
29
  QuantumCircuit: template as a quantum circuit.
31
30
  """
@@ -10,21 +10,19 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
13
+ """
14
+ Template 2a_1:
15
+ .. parsed-literal::
16
+ ┌───┐┌───┐
17
+ q_0: ┤ X ├┤ X ├
18
+ └───┘└───┘
19
+ """
14
20
 
15
21
  from qiskit.circuit.quantumcircuit import QuantumCircuit
16
22
 
17
23
 
18
24
  def template_nct_2a_1():
19
25
  """
20
- Template 2a_1:
21
-
22
- .. code-block:: text
23
-
24
- ┌───┐┌───┐
25
- q_0: ┤ X ├┤ X ├
26
- └───┘└───┘
27
-
28
26
  Returns:
29
27
  QuantumCircuit: template as a quantum circuit.
30
28
  """
@@ -10,22 +10,20 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
13
+ """
14
+ Template 2a_2:
15
+ .. parsed-literal::
16
+ q_0: ──■────■──
17
+ ┌─┴─┐┌─┴─┐
18
+ q_1: ┤ X ├┤ X ├
19
+ └───┘└───┘
20
+ """
14
21
 
15
22
  from qiskit.circuit.quantumcircuit import QuantumCircuit
16
23
 
17
24
 
18
25
  def template_nct_2a_2():
19
26
  """
20
- Template 2a_2:
21
-
22
- .. code-block:: text
23
-
24
- q_0: ──■────■──
25
- ┌─┴─┐┌─┴─┐
26
- q_1: ┤ X ├┤ X ├
27
- └───┘└───┘
28
-
29
27
  Returns:
30
28
  QuantumCircuit: template as a quantum circuit.
31
29
  """
@@ -10,24 +10,22 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
13
+ """
14
+ Template 2a_3:
15
+ .. parsed-literal::
16
+ q_0: ──■────■──
17
+ │ │
18
+ q_1: ──■────■──
19
+ ┌─┴─┐┌─┴─┐
20
+ q_2: ┤ X ├┤ X ├
21
+ └───┘└───┘
22
+ """
14
23
 
15
24
  from qiskit.circuit.quantumcircuit import QuantumCircuit
16
25
 
17
26
 
18
27
  def template_nct_2a_3():
19
28
  """
20
- Template 2a_3:
21
-
22
- .. code-block:: text
23
-
24
- q_0: ──■────■──
25
- │ │
26
- q_1: ──■────■──
27
- ┌─┴─┐┌─┴─┐
28
- q_2: ┤ X ├┤ X ├
29
- └───┘└───┘
30
-
31
29
  Returns:
32
30
  QuantumCircuit: template as a quantum circuit.
33
31
  """
@@ -10,28 +10,26 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
13
+ """
14
+ Template 4a_1:
15
+ .. parsed-literal::
16
+ q_0: ───────■─────────■──
17
+ │ │
18
+ q_1: ──■────┼────■────┼──
19
+ │ │ │ │
20
+ q_2: ──■────■────■────■──
21
+ │ ┌─┴─┐ │ ┌─┴─┐
22
+ q_3: ──┼──┤ X ├──┼──┤ X ├
23
+ ┌─┴─┐└───┘┌─┴─┐└───┘
24
+ q_4: ┤ X ├─────┤ X ├─────
25
+ └───┘ └───┘
26
+ """
14
27
 
15
28
  from qiskit.circuit.quantumcircuit import QuantumCircuit
16
29
 
17
30
 
18
31
  def template_nct_4a_1():
19
32
  """
20
- Template 4a_1:
21
-
22
- .. code-block:: text
23
-
24
- q_0: ───────■─────────■──
25
- │ │
26
- q_1: ──■────┼────■────┼──
27
- │ │ │ │
28
- q_2: ──■────■────■────■──
29
- │ ┌─┴─┐ │ ┌─┴─┐
30
- q_3: ──┼──┤ X ├──┼──┤ X ├
31
- ┌─┴─┐└───┘┌─┴─┐└───┘
32
- q_4: ┤ X ├─────┤ X ├─────
33
- └───┘ └───┘
34
-
35
33
  Returns:
36
34
  QuantumCircuit: template as a quantum circuit.
37
35
  """
@@ -10,26 +10,24 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
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
+ """
14
25
 
15
26
  from qiskit.circuit.quantumcircuit import QuantumCircuit
16
27
 
17
28
 
18
29
  def template_nct_4a_2():
19
30
  """
20
- Template 4a_2:
21
-
22
- .. code-block:: text
23
-
24
- q_0: ──■─────────■───────
25
- │ │
26
- q_1: ──■────■────■────■──
27
- │ ┌─┴─┐ │ ┌─┴─┐
28
- q_2: ──┼──┤ X ├──┼──┤ X ├
29
- ┌─┴─┐└───┘┌─┴─┐└───┘
30
- q_3: ┤ X ├─────┤ X ├─────
31
- └───┘ └───┘
32
-
33
31
  Returns:
34
32
  QuantumCircuit: template as a quantum circuit.
35
33
  """
@@ -10,24 +10,22 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
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
+ """
14
23
 
15
24
  from qiskit.circuit.quantumcircuit import QuantumCircuit
16
25
 
17
26
 
18
27
  def template_nct_4a_3():
19
28
  """
20
- Template 4a_3:
21
-
22
- .. code-block:: text
23
-
24
- q_0: ──■────■────■────■──
25
- │ ┌─┴─┐ │ ┌─┴─┐
26
- q_1: ──┼──┤ X ├──┼──┤ X ├
27
- ┌─┴─┐└───┘┌─┴─┐└───┘
28
- q_2: ┤ X ├─────┤ X ├─────
29
- └───┘ └───┘
30
-
31
29
  Returns:
32
30
  QuantumCircuit: template as a quantum circuit.
33
31
  """
@@ -10,26 +10,24 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
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
+ """
14
25
 
15
26
  from qiskit.circuit.quantumcircuit import QuantumCircuit
16
27
 
17
28
 
18
29
  def template_nct_4b_1():
19
30
  """
20
- Template 4b_1:
21
-
22
- .. code-block:: text
23
-
24
- q_0: ───────■─────────■──
25
- │ │
26
- q_1: ──■────┼────■────┼──
27
- │ │ │ │
28
- q_2: ──■────■────■────■──
29
- ┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐
30
- q_3: ┤ X ├┤ X ├┤ X ├┤ X ├
31
- └───┘└───┘└───┘└───┘
32
-
33
31
  Returns:
34
32
  QuantumCircuit: template as a quantum circuit.
35
33
  """
@@ -10,24 +10,22 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
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
+ """
14
23
 
15
24
  from qiskit.circuit.quantumcircuit import QuantumCircuit
16
25
 
17
26
 
18
27
  def template_nct_4b_2():
19
28
  """
20
- Template 4b_2:
21
-
22
- .. code-block:: text
23
-
24
- q_0: ──■─────────■───────
25
- │ │
26
- q_1: ──■────■────■────■──
27
- ┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐
28
- q_2: ┤ X ├┤ X ├┤ X ├┤ X ├
29
- └───┘└───┘└───┘└───┘
30
-
31
29
  Returns:
32
30
  QuantumCircuit: template as a quantum circuit.
33
31
  """
@@ -10,24 +10,22 @@
10
10
  # copyright notice, and modified files need to carry a notice indicating
11
11
  # that they have been altered from the originals.
12
12
 
13
- # pylint: disable=missing-module-docstring
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
+ """
14
23
 
15
24
  from qiskit.circuit.quantumcircuit import QuantumCircuit
16
25
 
17
26
 
18
27
  def template_nct_5a_1():
19
28
  """
20
- Template 5a_1:
21
-
22
- .. code-block:: text
23
-
24
- q_0: ──■────■────■────■────■──
25
- │ ┌─┴─┐ │ ┌─┴─┐ │
26
- q_1: ──■──┤ X ├──■──┤ X ├──┼──
27
- ┌─┴─┐└───┘┌─┴─┐└───┘┌─┴─┐
28
- q_2: ┤ X ├─────┤ X ├─────┤ X ├
29
- └───┘ └───┘ └───┘
30
-
31
29
  Returns:
32
30
  QuantumCircuit: template as a quantum circuit.
33
31
  """