Skip to main content
IBM Quantum Platform

qiskit.circuit.library.pauli_two_design

qiskit.circuit.library.pauli_two_design(num_qubits, reps=3, seed=None, insert_barriers=False, parameter_prefix='θ', name='PauliTwoDesign')

GitHub

폴리 2 디자인 안사츠를 구축합니다.

이 클래스는 양자 머신러닝 문헌에서 자주 연구되는 2-디자인 회로 [1의] 특정 형태를 구현합니다(예: 변형 알고리즘에서 불모의 고원 조사 [2] ).

이 회로는 얽힘 게이트( H=RY(π/4)\sqrt{H} = RY(\pi/4) )로 구성된 초기 층을 중심으로, 회전 층과 얽힘 층이 번갈아 배치되어 있습니다. 회전 레이어에는 단일 큐비트 파울리 회전이 포함되어 있으며, 회전축은 X, Y 또는 Z 중 하나로 균등하게 무작위로 선택됩니다. 얽힘 층은 총 깊이가 2인 쌍을 이룬 CZ 게이트로 구성됩니다.

예를 들어 회로는 다음과 같이 보일 수 있습니다:

     ┌─────────┐┌──────────┐       ░ ┌──────────┐       ░  ┌──────────┐
q_0:RY/4) ├┤ RZ(θ[0]) ├─■─────░─┤ RY(θ[4]) ├─■─────░──┤ RZ(θ[8])
     ├─────────┤├──────────┤ │     ░ ├──────────┤ │     ░  ├──────────┤
q_1:RY/4) ├┤ RZ(θ[1]) ├─■──■──░─┤ RY(θ[5]) ├─■──■──░──┤ RX(θ[9])
     ├─────────┤├──────────┤    │  ░ ├──────────┤    │  ░ ┌┴──────────┤
q_2:RY/4) ├┤ RX(θ[2]) ├─■──■──░─┤ RY(θ[6]) ├─■──■──░─┤ RX(θ[10])
     ├─────────┤├──────────┤ │     ░ ├──────────┤ │     ░ ├───────────┤
q_3:RY/4) ├┤ RZ(θ[3]) ├─■─────░─┤ RX(θ[7]) ├─■─────░─┤ RY(θ[11])
     └─────────┘└──────────┘       ░ └──────────┘       ░ └───────────┘

예:

from qiskit.circuit.library import pauli_two_design
circuit = pauli_two_design(4, reps=2, seed=5, insert_barriers=True)
circuit.draw("mpl")
이전 코드에서 출력한 회로도입니다.

매개변수

  • num_qubits (int) – 폴리 투 디자인 회로의 큐비트 수입니다.
  • reps (int) – 회전 레이어와 얽힘 레이어로 구성된 블록이 반복되는 빈도를 지정합니다.
  • seed (int | None) – 폴리 회전의 축을 무작위로 선택하기 위한 시드입니다.
  • parameter_prefix (str) – 회전 매개변수에 사용되는 접두사입니다.
  • insert_barriers (bool) – True 인 경우 각 레이어 사이에 장벽이 삽입됩니다. False 인 경우 장벽이 삽입되지 않습니다. 기본값은 False 입니다.
  • name (str) – 회로 이름입니다.

리턴

폴리 2 디자인 회로.

리턴 유형

QuantumCircuit

참조 자료:

[1] 나카타 외., 임의의 X 및 Z 대각선 유니타리에서 유니타리 2-디자인. arXiv:1502.07514

[2] McClean et al.., 양자 신경망 훈련 환경의 척박한 고원. arXiv:1803.11173

이 페이지가 도움이 되었습니까?
GitHub에서 버그, 오타를 보고하거나 컨텐츠를 요청하십시오.