ㅏ ε O ( 로그 C 1∥ A ∥ㅏㅏϵc<4
O ( 로그씨1ϵ)
c < 4
첫 번째 부분 :
근사치에 오차가 생겨 긴 계산으로 확산되고 누적됩니다.
글쎄, 하나의 행렬을 사용하여 다른 행렬을 근사화하여 누적되는 오류는 부가가치가 있음을 알 수 있습니다 (예 : Andrew Child의 강의 노트 참조 ). 즉, 단일 행렬 및 경우 .V i ” U i − V i ” < ϵ유나는V나는∥ U나는− V나는∥ < ϵ∀나는 ∈ { 1 , 2 , … , t }⟹∥ U티… U2유1− V티… V2V1∥ ≤ t ϵ
이것이 구현 측면에서 의미하는 것은 전체 오류가 이하 로 달성 되려면 각 게이트가 이내로 근사되어야한다는 것입니다 . 또는ϵ / tϵϵ / t
회로 전체에 근사값을 적용하는 것
이것은 각 개별 게이트에 근사를 적용하는 것과 같습니다. 각각의 회로는 전체 회로의 오류를 근사하는 게이트 수로 나눈 값보다 크지 않습니다.
게이트 합성 측면에서, 알고리즘은 게이트 세트 의 제품을 가져 와서 대해 net 을 형성하는 새로운 게이트 세트 을 형성함으로써 수행 됩니다. 어떤 ). 아이덴티티에서 시작하여, 타겟 유니 터리에서 더 단단한 그물을 얻기 위해 새로운 게이트 세트에서 새로운 유니 터리가 재귀 적으로 발견됩니다. 이상하게도, 고전적인 알고리즘이이 연산을 수행하는 데 걸리는 시간은 이며 이는 다항식 시간입니다. 그러나 에 따라ΓΓ0ϵ2SU(d)A∈SU(d),∃U∈Γ0s.t.∥A−U∥≤ϵ2O(polylog1/ϵ) 주위 에 반지름 의 공이 의 부피를 가지기 때문에 , 치수 에서 Harrow, Recht, Chuang 은 치수 입니다. 에서 차원의 고정되지 않은 번호.dϵSU(d)∝ϵd2−1d2
이것은 최종 계산 시간에 영향을 미칩니다. 그러나 게이트 수와 고전적인 계산 복잡성 모두의 스케일링은 다항식이므로 적어도 일반적으로 고려되는 클래스의 경우 알고리즘의 복잡성 클래스는 변경되지 않습니다.
들면 게이트 전체 (시간 및 게이트)의 복잡성은이고t .
O(tpolylogtϵ)
사용시 단위 회로 모델 없이 중개 측정 구현되는 게이트 수가 항상 계산 이전에 공지되어있을 것이다. 그러나 중간 측정을 사용하는 경우에는 그렇지 않다고 가정 할 수 있으므로 근사하려는 게이트 수를 알 수없는 경우 를 알 수 없습니다. 가 무엇인지 모른다 면 분명히 각 게이트를 오류로 근사 할 수는 없습니다 . 게이트 수에 한계가있는 경우 (예 : ) 각 게이트를 이내로 추정 하여 전체 오류를 얻을 수 있습니다.ttϵ/ttmaxϵ/tmax≤ϵ 및 복잡성 비록 아무 상부 수에 결합한다면 of gates가 알려진 경우 각 게이트는 일부 (더 작은) 근사되어 결과적으로 구현 된 게이트 수 (시작에 알려지지 않음) 대해 전체 오류 을 제공합니다 . 전체적인 복잡성
O(tpolylogtmaxϵ),
ϵ′≤t′ϵt′O(t′polylog1ϵ′).
간단한 있도록 물론, 이것의 전체 오차는 여전히 무제한 인 1 경계 오류를 유지하는 방법은, 가령 배 오차마다 감소 될 소위 것을 게이트 것 오류로 구현되었습니다 . 복잡도는 : 전반적으로 (현재 다항식) 복잡성을 제공합니다. 이는 제한된 오류를 보장하는 이점이 있습니다.2nthϵ/2nO(poly
O(polylog2nϵ′)=O(polynlog1ϵ′),
O(polytlog1ϵ),
이것은 아니다 너무 (게이트의 수를 알 수없는 경우) 나는 그것을 희망 고전 컴퓨터가 양자 프로세서를 필요가 빠른만큼 적어도 올바른 게이트 함께 올라오고 계속 할 수있을 것입니다, 그래서 나쁜. 현재가 아니라면, 양자 프로세서가 일단 문제가되기에 충분 해지기를 바랍니다.
비록 가장 효율적인 것은 아니지만