다음을 통해 공유


작업 선택

정규화된 이름: Std.TableLookup.Select

operation Select(data : Bool[][], address : Qubit[], target : Qubit[]) : Unit is Adj + Ctl

요약

SELECT 네트워크를 사용하여 테이블 조회 수행

설명

초기화된 target 레지스터가 0이라고 가정하면 이 작업은 data 레지스터의 계산 값에 따라 인덱스에서 address 비트 문자열로 초기화합니다.

입력

데이터

target상태와 관련하여 address 준비된 클래식 테이블 조회 데이터입니다. 데이터의 길이는 2보다 작아야 합니다. 여기서 n은 address길이입니다. 데이터의 각 항목의 길이는 target길이와 같아야 합니다.

주소

주소 등록

목표

초기화되지 않은 대상 레지스터

비고

SELECT 네트워크의 구현은 [1]에 표시된 단항 인코딩을 기반으로 합니다. 해당 알고리즘의 재귀 구현은 [3]에 표시됩니다. 부호 있는 변형은 측정 기반의 언루크업 연산 [3]을 사용하여 최적화됩니다. 제어된 인접 변형은 이 기술을 사용하여 최적화되지 않습니다.

참고문헌

  1. arXiv:1805.03662 "선형 T 복잡성을 사용하여 양자 회로의 전자 스펙트럼 인코딩"
  2. arXiv:1905.07682 "Windowed 산술"
  3. arXiv:2211.01133 "시공간 최적화 테이블 조회"