Tại sao Biến đổi Fourier rời rạc có thể được thực hiện hiệu quả như một mạch lượng tử?


17

Một kết quả nổi tiếng là Biến đổi Fourier rời rạc (DFT) của các số có độ phức tạp với thuật toán được biết đến nhiều nhất , trong khi thực hiện phép biến đổi Fourier của biên độ của trạng thái lượng tử, với thuật toán QFT cổ điển , chỉ yêu cầu các cổng cơ bản .N=2nO(n2n)O(n2)

Có bất kỳ lý do được biết tại sao đây là trường hợp? Điều này có nghĩa là liệu có những đặc điểm đã biết của DFT giúp cho việc thực hiện một "phiên bản lượng tử" hiệu quả của nó hay không.

Thật vậy, một DFT trên vectơ chiều có thể được coi là hoạt động tuyến tính N

y=DFTx,DFTjk1Nexp(2πiNjk).

"Phiên bản lượng tử" của vấn đề này là nhiệm vụ của, với trạng thái lượng tử |xk=1Nxk|k , có được trạng thái đầu ra |yk=1Nyk|k sao cho

|y=DFT|x=QFT|x.
  1. Một sự đơn giản hóa đầu tiên dường như đến từ thực tế là, do tính tuyến tính của QM, chúng ta có thể tập trung vào các trạng thái cơ bản |j,j=1,...,N , với sự phát triển của các vectơ tổng quát |x sau đó sẽ miễn phí.
  2. Nếu N=2n , người ta có thể biểu thị |j trong cơ sở hai, có |j=|j1,...,jn .
  3. Trong thuật toán QFT tiêu chuẩn, người ta khai thác thực tế rằng phép biến đổi có thể được viết là sau đó có thể được triển khai dưới dạng mạch lượng tử có dạng trong đó được triển khai với cổng tiểu học.
    |j1,...,jn2n/2l=1n[|0+exp(2πi(0.jnl+1jn))|1],
    U k O ( n )
    QFT|j1,...,jn=(k=1nUk)|j1,...,jn,
    UkO(n)

Giả sử bây giờ chúng ta có một số phép biến đổi đơn vị và chúng ta muốn tìm một mạch thực hiện hiệu quả phép biến đổi lượng tử tương đương Hai thủ thuật đầu tiên được đề cập ở trên luôn có thể được áp dụng, nhưng sau đó không cần thiết khi nào và làm thế nào điểm khác có thể được sử dụng để đạt được kết quả hiệu quả như chúng ta có cho QFT.| y = Một | x .A

|y=A|x.

Có tiêu chí được biết cho điều này là đúng? Hay nói cách khác, có thể xác định chính xác các đặc điểm của DFT là gì để có thể thực hiện hiệu quả sự biến đổi lượng tử liên quan?


1
Cấu trúc đệ quy của QFT với số lượng qubit dường như đóng góp vào hiệu quả đó.
AHusain

Câu trả lời:


12

Giới thiệu về biến đổi Fourier rời rạc cổ điển:

DFT biến đổi một chuỗi gồm số phức thành một chuỗi số phức khác được xác định bởi Chúng ta có thể nhân với các hằng số chuẩn hóa phù hợp khi cần thiết. Hơn nữa, việc chúng ta lấy dấu cộng hay dấu trừ trong công thức tùy thuộc vào quy ước chúng ta chọn.{ x n } : = x 0 , x 1 , x 2 , . . . , x NN { X k }:= X 0 , X 1 , X 2 ,. . . X k = N - 1 n = 0 x n . e ± 2 π i n{xn}:=x0,x1,x2,...,xN1{Xk}:=X0,X1,X2,...

Xk=n=0N1xn.e±2πiknN

Giả sử, đã cho rằng và .x = ( 1 2 - i - i - 1 + 2 i )N=4x=(12ii1+2i)

Chúng ta cần tìm vectơ cột . Phương pháp chung đã được hiển thị trên trang Wikipedia . Nhưng chúng tôi sẽ phát triển một ký hiệu ma trận cho cùng. có thể dễ dàng thu được bằng cách nhân trước với ma trận:X xXXx

M=1N(11111ww2w31w2w4w61w3w6w9)

trong đó là . Mỗi phần tử của ma trận về cơ bản là . đơn giản là hằng số chuẩn hóa.e - 2 π iw wij1e2πiNwij1N

Cuối cùng, hóa ra là: .1X12(222i2i4+4i)

Bây giờ, ngồi lại một lúc và nhận thấy một vài thuộc tính quan trọng:

  • Tất cả các cột của ma trận là trực giao với nhau.M
  • Tất cả các cột của có cường độ .1M1
  • Nếu bạn đăng bội số với một vectơ cột có nhiều số 0 (mức chênh lệch lớn), bạn sẽ kết thúc bằng một vectơ cột chỉ có một vài số không (mức chênh lệch hẹp). Converse cũng đúng. (Kiểm tra!)M

Có thể nhận thấy rất đơn giản rằng DFT cổ điển có độ phức tạp về thời gian . Đó là bởi vì để có được mọi hàng , cần phải được thực hiện. Và có hàng trong .X N N XO(N2)XNNX


Biến đổi Fourier nhanh:

Bây giờ, chúng ta hãy nhìn vào biến đổi Fourier nhanh. Biến đổi Fourier nhanh sử dụng tính đối xứng của biến đổi Fourier để giảm thời gian tính toán. Nói một cách đơn giản, chúng tôi viết lại biến đổi Fourier có kích thước là hai biến đổi Fourier có kích thước - các số hạng lẻ và số chẵn. Sau đó chúng tôi lặp lại điều này nhiều lần để giảm thời gian theo cấp số nhân. Để xem cách thức hoạt động của chi tiết này, chúng tôi chuyển sang ma trận của biến đổi Fourier. Trong khi chúng tôi trải qua điều này, có thể hữu ích khi có trước mặt bạn để xem xét. Lưu ý rằng số mũ đã được viết modulo , vì .N / 2 DFT 8 8 w 8 = 1NN/2DFT88w8=1

nhập mô tả hình ảnh ở đây

Lưu ý cách hàng rất giống với hàng . Ngoài ra, chú ý cách cột rất giống với cột . Được thúc đẩy bởi điều này, chúng tôi sẽ phân tách biến đổi Fourier thành các cột chẵn và lẻ.j + 4 j j + 4jj+4jj+4

nhập mô tả hình ảnh ở đây

Trong khung đầu tiên, chúng tôi đã biểu diễn toàn bộ ma trận biến đổi Fourier bằng cách mô tả hàng thứ và cột thứ : . Trong khung tiếp theo, chúng ta tách các cột lẻ và chẵn và tương tự tách vectơ sẽ được chuyển đổi. Bạn nên thuyết phục bản thân rằng sự bình đẳng đầu tiên thực sự là một sự bình đẳng. Trong khung thứ ba, chúng tôi thêm một chút đối xứng bằng cách nhận thấy rằng (vì ).k w j k w j + N / 2 = - w j w n / 2 = - 1jkwjkwj+N/2=wjwn/2=1

Lưu ý rằng cả bên lẻ và bên chẵn đều chứa thuật ngữ . Nhưng nếu là gốc Nth nguyên thủy của sự thống nhất, thì là gốc thứ nhất của sự thống nhất. Do đó, các ma trận có mục nhập thứ , thứ là thực sự chỉ là ! Bây giờ chúng ta có thể viết theo một cách mới: Bây giờ giả sử chúng ta đang tính toán biến đổi Fourier của hàm . Chúng ta có thể viết các thao tác trên như một phương trình tính toán thuật ngữ thứ j . w w 2 N / 2 j k w 2 j kw2jkww2N/2jkw2jk DFT N f ( x ) f ( j )DFT(N/2)DFTNf(x)f^(j)

nhập mô tả hình ảnh ở đây

Lưu ý: QFT trong ảnh chỉ là viết tắt của DFT trong ngữ cảnh này. Ngoài ra, M đề cập đến những gì chúng ta đang gọi N.

Điều này biến phép tính của chúng tôi về thành hai ứng dụng của . Chúng ta có thể biến ứng dụng này thành bốn ứng dụng của , v.v. Miễn là cho một số , chúng ta có thể chia nhỏ phép tính thành tính toán của . Điều này rất đơn giản hóa tính toán của chúng tôi.DFT ( N / 2 ) DFT ( N / 4 ) N = 2 n n DFT N N DFT 1 = 1DFTNDFT(N/2)DFT(N/4)N=2nnDFTNNDFT1=1

Trong trường hợp biến đổi tốc độ nhanh, độ phức tạp thời gian giảm xuống còn (hãy tự mình chứng minh điều này). Đây là một cải tiến vượt bậc so với DFT cổ điển và khá nhiều thuật toán tiên tiến được sử dụng trong các hệ thống âm nhạc hiện đại như iPod của bạn!O(Nlog(N))


Biến đổi lượng tử Fourier với các cổng lượng tử:

Điểm mạnh của FFT là chúng tôi có thể sử dụng tính đối xứng của biến đổi Fourier rời rạc thành lợi thế của chúng tôi. Ứng dụng mạch của QFT sử dụng cùng một nguyên tắc, nhưng vì sức mạnh của chồng chất nên QFT thậm chí còn nhanh hơn.

QFT được thúc đẩy bởi FFT vì vậy chúng tôi sẽ làm theo các bước tương tự, nhưng vì đây là thuật toán lượng tử nên việc thực hiện các bước sẽ khác nhau. Đó là, trước tiên chúng ta lấy biến đổi Fourier của các phần lẻ và chẵn, sau đó nhân các số hạng lẻ với pha .wj

Trong một thuật toán lượng tử, bước đầu tiên khá đơn giản. Các thuật ngữ lẻ và chẵn được kết hợp với nhau trong sự chồng chất: các thuật ngữ lẻ là những thuật ngữ có bit có ý nghĩa nhỏ nhất là và chẵn với . Do đó, chúng ta có thể áp dụng cho cả hai điều khoản lẻ và chẵn. Chúng tôi thực hiện điều này bằng cách áp dụng đơn giản là chúng tôi sẽ áp dụng cho các bit quan trọng nhất và kết hợp lại số lẻ và thậm chí một cách thích hợp bằng cách áp dụng Hadamard cho bit có trọng số thấp nhất.0 QFT ( N / 2 ) QFT ( N / 2 ) n - 110QFT(N/2)QFT(N/2)n1

Bây giờ để thực hiện phép nhân pha, chúng ta cần nhân mỗi số hạng lẻ với pha . Nhưng hãy nhớ rằng, một số lẻ trong nhị phân kết thúc bằng trong khi số chẵn kết thúc bằng . Do đó, chúng ta có thể sử dụng sự dịch pha được kiểm soát, trong đó bit có trọng số thấp nhất là điều khiển, để nhân các số hạng lẻ với pha mà không làm gì với các số hạng chẵn. Hãy nhớ lại rằng sự dịch pha được điều khiển tương tự như cổng CNOT ở chỗ nó chỉ áp dụng một pha cho mục tiêu nếu bit điều khiển là một.w j 1 0jwj10

nhập mô tả hình ảnh ở đây

Lưu ý: Trong hình ảnh M đề cập đến những gì chúng ta đang gọi là N.

Pha được liên kết với mỗi lần dịch pha được kiểm soát phải bằng trong đó được liên kết với bit thứ bởi . Do đó, áp dụng sự dịch pha được kiểm soát cho từng qubit đầu tiên , với bit có ý nghĩa ít nhất là điều khiển. Với sự dịch chuyển pha được kiểm soát và biến đổi Hadamard, đã được giảm xuống thành . j k j = 2 k n - 1 QFT N QFT ( N / 2 )wjjkj=2kn1QFTNQFT(N/2)

nhập mô tả hình ảnh ở đây

Lưu ý: Trong hình ảnh, M đề cập đến những gì chúng ta đang gọi là N.

Thí dụ:

Cho phép xây dựng . Theo thuật toán, chúng tôi sẽ biến thành và một vài cổng lượng tử. Sau đó, tiếp tục theo cách này, chúng tôi biến thành (chỉ là một cổng Hadamard) và một vài cổng khác. Cổng pha được điều khiển sẽ được đại diện bởi . Sau đó chạy qua một lần lặp khác để thoát khỏi . Bây giờ bạn có thể trực quan hóa mạch cho trên nhiều qubit hơn một cách dễ dàng. Hơn nữa, bạn có thể thấy rằng số lượng cổng cần thiết để thực hiện cần chính xácQFT 3 QFT 2 QFT 2 QFT 1 R ϕ QFT 2 QFT QFT N log ( N ) i = 1 i = log ( N ) ( log ( N ) + 1 ) / 2 = O ( log 2 N )QFT3QFT3QFT2QFT2QFT1RϕQFT2QFTQFTN

i=1log(N)i=log(N)(log(N)+1)/2=O(log2N)

Nguồn:

  1. https://en.wikipedia.org/wiki/Discittle_Fourier_transform

  2. https://en.wikipedia.org/wiki/Quantum_Fourier_transform

  3. Cơ học lượng tử và tính toán lượng tử MOOC (UC BerkeleyX) - Ghi chú bài giảng: Chương 5

PS: Câu trả lời này là trong phiên bản sơ bộ của nó. Như @DaftWillie đề cập trong các bình luận, nó không đi sâu vào " bất kỳ cái nhìn sâu sắc nào có thể đưa ra một số hướng dẫn liên quan đến các thuật toán có thể khác ". Tôi khuyến khích câu trả lời thay thế cho câu hỏi ban đầu. Cá nhân tôi cần thực hiện một chút về đọc và đào tài nguyên để tôi có thể trả lời khía cạnh đó của câu hỏi.


Về cấu trúc đệ quy: người ta có thể lấy điều đó ít nhiều theo định nghĩa. Nếu bạn muốn nói về việc chia tỷ lệ của một thuật toán, bạn cần một họ các mạch cho các đầu vào có kích thước khác nhau. Cách thức này thường được thực hiện là xây dựng mạch cho kích thước n + 1 ra khỏi mạch cho kích thước n. Điều tôi không thực sự thấy ở đây là bất kỳ cái nhìn sâu sắc nào có thể đưa ra một số hướng dẫn liên quan đến các thuật toán có thể khác (không phải là tôi tuyên bố đó là một điều dễ dàng để làm)
DaftWullie

@DaftWullie "Điều tôi không thực sự nhìn thấy ở đây là bất kỳ cái nhìn sâu sắc nào có thể đưa ra một số hướng dẫn liên quan đến các thuật toán có thể khác (không phải tôi cho rằng đó là một điều dễ làm)" Vâng, vâng! Tôi cũng đã suy nghĩ về điều đó. Đây là nhiều hơn một câu trả lời sơ bộ. Tôi sẽ bổ sung thêm vào đó khi tôi học về thêm một chút (và khi tôi có nhiều thời gian rảnh hơn). Tôi sẽ rất vui mừng khi thấy câu trả lời thay thế cho câu hỏi này. :-)
Sanchaya Dutta

Un=Un1xU

Xin chào, trong QFT, nó mặc nhiên giả định rằng a, giả sử 8 x 1, vectơ đầu vào x_groupical là biên độ được mã hóa với 3 qubit? Sau đó, các hoạt động QFT được thực hiện trên các qubit được mã hóa? Ngoài ra, bạn có thể vui lòng giải thích "... và kết hợp lại số lẻ và thậm chí một cách thích hợp bằng cách áp dụng Hadamard cho bit ít quan trọng nhất."?
Abdullah Ash- Saki

10

F2n=12nk,x{0,1}nexp(iQ(k,x))|kx|,
Q(z)=1jk2nθj,kzjzk2n
θj,k={π/22njk,if 1jn<k2nj+10,otherwise.
  1. Có một hàm sao cho cho mỗi (trong đó trong trường hợp QFT);f:{1,2,,n}{n+1,n+2,,2n}θj,k=π1jnf(j)=2nj+1
  2. Với bất kỳ mà , chúng ta có .1h,jnθh,f(j)0θj,f(h)=0

Chúng ta có thể nghĩ các chỉ số của là dây đầu vào và đầu ra của mạch lượng tử, trong đó nhiệm vụ của chúng ta là hiển thị mạch ở giữa là gì trong đó cho thấy làm thế nào các đầu vào kết nối với đầu ra. Hàm ở trên cho phép chúng ta thấy sự liên kết của dây đầu ra với dây đầu vào, trong mỗi trường hợp có một cổng Hadamard kết nối hai đầu với nhau và ngoài Hadamards (và cổng SWAP có sự đảo ngược của thứ tự của các chỉ số giữa và ), tất cả các hoạt động khác đều là pha điều khiển hai qubit cổng cho các pha tương đối của . Điều kiện thứ hai trên f ( 1 , 2 , ... , n ) ( f ( 1 ) , f ( 2 ) , ... , f ( n ) ) exp ( i θ j , k ) fz=(k,x){0,1}2nf(1,2,,n)(f(1),f(2),,f(n))exp(iθj,k)f phục vụ để đảm bảo rằng các cổng pha được kiểm soát này có thể được cung cấp theo thứ tự thời gian được xác định rõ.

Có nhiều điều kiện chung hơn mà người ta có thể mô tả khi mở rộng dạng bậc hai tạo ra một mạch có thể thực hiện được, dọc theo các đường tương tự. Trên đây mô tả một trong những trường hợp đơn giản nhất, trong đó không có chỉ số nào trong tổng trừ các trường hợp cho cơ sở tiêu chuẩn của trạng thái đầu vào và đầu ra (trong trường hợp đó các hệ số của đơn vị liên kết đều có cùng độ lớn).


Tôi không chắc chắn tôi hoàn toàn hiểu. Bạn có nói rằng bất kỳ sự tiến hóa nào được biểu diễn dưới dạng mở rộng dạng bậc hai với dạng bậc hai thỏa mãn hai điều kiện đó có thể được thực hiện một cách hiệu quả không? Rất thú vị
glS

@gIS: có, và hơn nữa cấu trúc về cơ bản giống như mạch QFT của Coppersmith (hay đúng hơn, thực tế là QFT có dạng đó là lý do tại sao cấu trúc mạch Coppersmith đủ để nhận ra QFT).
Niel de Beaudrap

8

Điều này sai lệch một chút so với câu hỏi ban đầu, nhưng tôi hy vọng sẽ cung cấp thêm một chút cái nhìn sâu sắc có thể liên quan đến các vấn đề khác.

Người ta có thể hỏi "Điều gì về việc tìm kiếm đơn hàng cho vay để thực hiện hiệu quả trên máy tính lượng tử?". Tìm kiếm đơn hàng là thành phần chính của các thuật toán bao thanh toán và bao gồm biến đổi Fourier như là một phần của nó.

Điều thú vị là bạn có thể đặt những thứ như tìm kiếm đơn hàng và vấn đề của Simon, trong một bối cảnh chung gọi là "Vấn đề nhóm con ẩn" .

Ggf(g)KGkgGkKf(g)=f(gk)KGnK{0,s}

log|G|G{0,1}n,s


Một số chi tiết

|0|0

1|G|gG|g|0,
1|G|g|g|f(g)=1|G|gKkK|gk|f(g),
KKGKf(g)
1|K|gKk,kK|gkgk|.
G
|K||G|gK|gg|.
|gK|K|/|G|KK

3

Một trong nhiều công trình có thể cung cấp một số cái nhìn sâu sắc về câu hỏi này, ít nhất là với tôi, như sau. Sử dụng CSD (phân tách cosine-sin), bạn có thể mở rộng bất kỳ toán tử đơn vị nào thành một sản phẩm của cổng V hiệu quả phù hợp độc đáo với mô hình cây nhị phân. Trong trường hợp của QFT, cây nhị phân đó sụp đổ thành một nhánh duy nhất của cây, tất cả V không nằm trong nhánh là 1.

Tham khảo: Biến đổi Fourier nhanh lượng tử được xem như là một trường hợp đặc biệt của ứng dụng đệ quy của phân tách Cosine-Sine .


thú vị, cảm ơn Bạn có thể bao gồm một bản phác thảo của đối số trong câu trả lời, nếu có thể?
glS

1
Những gì tôi đã trình bày là phiên bản "phác họa" của tôi. Nếu bạn muốn tìm hiểu sâu hơn, với các phương trình và hình ảnh, tốt nhất bạn nên đến phần giới thiệu arxiv được đưa ra vào cuối
rrtucci
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.