참고 :이 답변에서는 순열을 일관되게 하고 싶다고 가정합니다 . 즉 1/3 대신 을 원한다고 가정합니다. 확률은 , 1/3 확률은 , 1/3 확률은 입니다.13√(|001⟩+|010⟩+|100⟩)001010100
가역성 제약으로 인해이 작업을 매우 쉽게 수행 할 수 없으므로이 작업을 지정하는 방법에주의하십시오. 예를 들어, 입력 경우 GHZ 상태 를 출력하려고합니다. . 그러나 입력 및 대한 GHZ 상태도 출력하려면 작동하지 않습니다. 여러 개의 입력 상태를 동일한 출력 상태 (디코 히어 런스없이)로 보낼 수는 없습니다. "0000111과 같이 정렬 된 오름차순 입력에 대해서만 신경 쓰지만 1110000 또는 0010110에는 신경 쓰지 않고 원하는대로 무엇이든 할 수 있습니다"라고 말하면 괜찮습니다.|001⟩∣∣31⟩=13√(|001⟩+|010⟩+|100⟩)|010⟩|100⟩
정렬 된 입력의 양자 순열을 생성하는 한 가지 트릭은 먼저 정렬 네트워크를 균일 한 중첩으로 시드 값 목록에 적용하여 "순열 상태"를 준비하는 것입니다. 정렬 네트워크는 정렬 된 시드를 보유한 큐 비트와 정렬 네트워크 비교를 보유한 큐 비트를 출력합니다. 순열 상태는 단지 비교 큐 비트입니다. 입력에 적용하려면 정렬 네트워크를 통해 입력을 반대로 실행하면됩니다. 여기에는 까다로운 세부 사항이 있습니다. " Fermionic Hamiltonians의 고유 상태를 준비하기위한 개선 된 기술 "논문을 참조하십시오 . 고유 한 값 대신 반복되는 값을 가진 입력에서 작업하려면이 기술을 일반화해야합니다.
" quantum compression " 을 보길 원할 수도 있는데, 이것은생성하려는 상태 ( 비트가 설정된 모든 비트 상태 의 균일 한 중첩 ). 가장 큰 차이점은 양자 압축 회로를 역으로 실행한다는 것입니다. "몇 개가 있습니까?" "정확한 수의 상태를 알려주십시오"대신.∣∣nk⟩nk
내가 말하는 것은 이러한 종류의 상태를 생성하는 것이 예상보다 복잡하다는 것입니다. 복잡한 이유는 출력의 진폭의 크기가 입력의 계산 기준 상태에 달려 있기 때문입니다. 예를 들어, 대한 당신의 prefactor 그래서 당신은, 4 개 개의 클래식 상태의 중첩 인 출력을 원하는 숨겨진 내부 . 그러나 경우 원하는 출력은 6 개의 클래식 상태를 가지므로 은 의 선행 요소를 숨 깁니다 .|0001⟩14√∣∣41⟩|0011⟩∣∣42⟩16√