Skip to main content
IBM Quantum Platform

MCXV체인

class qiskit.circuit.library.MCXVChain(num_ctrl_qubits=None, dirty_ancillas=False, label=None, ctrl_state=None, *, _base_label=None, relative_phase=False, action_only=False)

GitHub

베이스: MCXGate

CX 게이트의 V-체인을 사용하여 다중 제어 X 게이트를 구현합니다.

매개변수

  • num_ctrl_qubits (int | None) – 추가할 대조군의 수. 기본값은 1.입니다.
  • dirty_ancillas (bool) – True 로 설정하면 arXiv:1501.06911 의 레마 7과 8의 속성을 가진 더티 보조 큐비트를 사용하여 최대 8*k - 6개의 CNOT 게이트로 상대 위상까지 최적화된 멀티컨트롤-X 게이트를 적용합니다. 범위 내의 k의 경우 {1, …, ceil(n/2)}. 그리고 총 큐비트 수를 나타내는 n의 경우.
  • label (str | None) – 선택 사항인 게이트 라벨. 기본값은 None.입니다.
  • ctrl_state (int |str | None) – 게이트의 제어 상태는 정수 또는 비트열(예: "110")로 지정됩니다. None인 경우, 기본적으로 모든 비트가 1인 상태로 설정됩니다. 2**num_ctrl_qubits - 1
  • relative_phase (bool) – True 로 설정하면 arXiv:1501.06911 의 렘마 7 에 따라 action part 의 상대 위상이 reset part 의 위상과 상쇄되는 방식으로 최적화된 멀티컨트롤-X 게이트를 상대 위상까지 적용합니다.
  • action_only (bool) – 로 설정하면 True 에서 arXiv:1501.06911 의 렘마 8 의 액션 부분만 적용합니다.

메소드

get_num_ancilla_qubits

static get_num_ancilla_qubits(num_ctrl_qubits, mode='v-chain')

GitHub

필요한 앤실라 큐비트 수를 가져옵니다.

매개변수

  • num_ctrl_qubits (int)
  • mode (str)

inverse

inverse(annotated=False)

GitHub

이 게이트를 뒤집습니다. MCX는 그 자체로 인버스입니다.

매개변수

annotated (bool) – 로 설정된 경우 True, 이는 일반적으로 구체적인 수정자 대신 역 수정자가 설정된 AnnotatedOperation 를 반환하는 데 사용되며 콘크리트 대신 역 수정자가 설정된 Gate. 그러나 이 클래스의 경우 이 게이트는 자체 역방향이므로 이 인수는 무시됩니다.

리턴

인버스 게이트(자체 반전).

리턴 유형

MCXVChain

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