Skip to main content
IBM Quantum Platform

InnerProduct

class qiskit.circuit.library.InnerProduct(num_qubits)

GitHub

베이스: QuantumCircuit

F2F_2 에 대해 두 n-큐비트 벡터의 내적 곱을 계산하는 2n-qubit 부울 함수입니다.

이 구현은 다음과 같은 변환을 계산하는 위상 오라클입니다.

IP2n:F22n1,1IP2n(x1,,xn,y1,,yn)=(1)x.y\mathcal{IP}_{2n} : F_2^{2n} \rightarrow {-1, 1} \mathcal{IP}_{2n}(x_1, \cdots, x_n, y_1, \cdots, y_n) = (-1)^{x.y}

해당 단항은 대각선으로, 상단 및 하단 레지스터의 내부 곱이 1인 모든 입력에 대해 -1 위상을 유도합니다. 그렇지 않으면 입력 내용을 그대로 유지합니다.

q0_0: ─■──────────

q0_1: ─┼──■───────
       │  │
q0_2: ─┼──┼──■────
       │  │  │
q0_3: ─┼──┼──┼──■─
       │  │  │  │
q1_0: ─■──┼──┼──┼─
          │  │  │
q1_1: ────■──┼──┼─
             │  │
q1_2: ───────■──┼─

q1_3: ──────────■─

레퍼런스 회로:

앞서 설명한 회로를 보여주는 다이어그램입니다.
버전부터 사용되지 않음 2.1

qiskit.circuit.library.boolean_logic.inner_product.InnerProduct 클래스는 키스킷 2.1 에서 더 이상 사용되지 않습니다. 키스킷 3.0 에서 제거됩니다. 대신 qiskit.circuit.library.InnerProductGate 을 사용하세요.

매개변수

num_qubits (int) – 상단 및 하단 레지스터의 폭 (전체 회로 폭의 절반)


속성

name

유형: str

사람이 읽을 수 있는 회로의 이름입니다.

예제

from qiskit import QuantumCircuit

qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)
my_circuit
이 페이지가 도움이 되었습니까?
GitHub에서 버그, 오타를 보고하거나 컨텐츠를 요청하십시오.