FourierChecking
class qiskit.circuit.library.FourierChecking(f, g)
베이스: QuantumCircuit
푸리에 검사 회로.
[1에서] 소개한 푸리에 검사 알고리즘의 회로는 하다마드 계층, 함수 , 또 다른 하다마드 계층, 함수 , 그리고 마지막 하다마드 계층으로 구성됩니다. 및 함수는 위상 오라클(대각선에 {-1, 1} 이 있는 대각선 연산자)로 구현된 고전적인 함수입니다.
모든 제로 문자열을 관찰할 확률은 입니다. 이 알고리즘은 또는 중 하나 또는 다른 하나가 참이라고 약속했는지 테스트하여 f가 g의 푸리에 변환과 상관관계가 있는지 결정하는 약속 푸리에 검사 문제를 해결합니다.
및 함수는 현재 진리 테이블에서 구현되어 있지만, 특수 클래스 함수에 대해 간결하게 표현하고 효율적으로 구현할 수 있습니다.
푸리에 검사는 -fold forrelation [2의] 특수한 경우입니다.
참조 자료:
[1] S. 아론슨, BQP와 다항식 계층구조, 2009 (섹션 3.2 ). arXiv:0910.4698
[2] S. 애런슨, A. 암베이니스, 포레레이션: 양자 컴퓨팅과 기존 컴퓨팅을 최적으로 분리하는 문제, 2014. arXiv:1411.5729
푸리에 검사 회로를 생성합니다.
qiskit.circuit.library.fourier_checking.FourierChecking 클래스는 키스킷 2.1 에서 더 이상 사용되지 않습니다. 키스킷 3.0 에서 제거됩니다. 대신 qiskit.circuit.library.fourier_checking 을 사용하세요.
매개변수
- f (Sequence[int]) – 에 대한 진실 테이블, 길이 2**n 의 목록 {1,-1}.
- g (Sequence[int]) – 진리 테이블 G, 길이 2**n 목록 {1,-1}.
레이즈
CircuitError – 입력 f와 g가 유효하지 않은 경우.
레퍼런스 회로:

속성
name
유형: str
사람이 읽을 수 있는 회로의 이름입니다.
예제
from qiskit import QuantumCircuit
qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)my_circuit