Skip to main content
IBM Quantum Platform

MCX재귀적

class qiskit.circuit.library.MCXRecursive(num_ctrl_qubits=None, label=None, ctrl_state=None, *, _base_label=None)

GitHub

베이스: MCXGate

재귀를 사용하여 다중 제어 X 게이트를 구현합니다.

단일 클린 앤실라 큐비트를 사용하여 다중 제어된 X 게이트는 4개의 서브 레지스터로 분할되며, 각 서브 레지스터는 V-체인 방식을 사용합니다.

이 방법은 정리 9의 [2를] 기반으로 하며, 정리 [1의] 7.3 에 처음 나와 있습니다.

참조

  1. 바렌코 외.., 1995. https://arxiv.org/pdf/quant-ph/9503016.pdf
  2. Iten et al.., 2015. https://arxiv.org/abs/1501.06911

새 MCX 게이트를 생성합니다.


메소드

매개변수

  • num_ctrl_qubits (int | None)
  • label (str | None)
  • ctrl_state (int |str | None)

get_num_ancilla_qubits

static get_num_ancilla_qubits(num_ctrl_qubits, mode='recursion')

GitHub

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

매개변수

  • num_ctrl_qubits (int)
  • mode (str)

inverse

inverse(annotated=False)

GitHub

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

매개변수

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

리턴

인버스 게이트(셀프 인버스).

리턴 유형

MCX재귀적

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