Phần lượng tử của thuật toán của Shor về cơ bản là một phép lũy thừa mô-đun duy nhất được thực hiện dưới sự chồng chất theo sau là một phép biến đổi Fourier và sau đó là phép đo. Các lũy thừa mô-đun là phần đắt nhất.
Chúng ta hãy giả sử rằng [...] mỗi hoạt động logic cơ bản của nhân tố toán học đều tốn thời gian như nhau trong cổ điển và trong nhân tố lượng tử
Nếu chúng ta giả sử rằng lũy thừa mô-đun mất nhiều thời gian chính xác trên máy tính lượng tử như trên máy tính cổ điển, thì quá trình chuyển đổi nơi tính toán lượng tử trở nên tốt hơn sẽ xảy ra với số lượng rất thấp. Tính toán lũy thừa mô-đun là rất nhanh, kinh điển, bởi vì bạn có thể sử dụng bình phương lặp đi lặp lại. Tôi cực kỳ ước tính sự giao nhau xảy ra ngay cả trước khi bạn thậm chí có được số 30 bit (số hơn một tỷ).
Nhưng máy tính lượng tử sẽ không làm toán nhanh như máy tính cổ điển . Ví dụ, trên máy tính xách tay của tôi, tôi có thể thực hiện phép lũy thừa mô-đun 1000 bit trong python trong một phần của giây. Nhưng trên các máy tính lượng tử có thể thấy trước, sẽ mất hàng giờ hoặc nhiều ngày. Vấn đề là sự khác biệt lớn ( lớn ) trong chi phí của cổng AND.
|T⟩
Vì vậy, giả sử chúng ta nhận được một triệu trạng thái T mỗi giây và chúng tôi muốn chuyển đổi trạng thái này thành tỷ lệ bổ sung 64 bit để so sánh với máy cổ điển. Một bổ sung 64 bit yêu cầu 64 cổng AND, mỗi cổng yêu cầu 4 cổng T. 1 triệu chia cho 4 chia cho 64 cho ... khoảng 4KHz. Ngược lại, một cỗ máy cổ điển sẽ dễ dàng thực hiện một tỷ lần bổ sung mỗi giây. Bộ cộng lượng tử chậm hơn một triệu lần so với bộ cộng cổ điển (một lần nữa, ước tính một cách điên cuồng và hãy nhớ rằng con số này sẽ được cải thiện theo thời gian).
Một yếu tố khác đáng xem xét là chi phí khác nhau của máy tính lượng tử và cổ điển. Nếu bạn có một trăm triệu đô la và bạn đang chọn giữa một máy tính lượng tử và một nghìn máy tính cổ điển, thì yếu tố 1000 đó phải được tính đến. Theo nghĩa này, chúng ta có thể nói các bộ cộng lượng tử có hiệu suất thấp hơn hàng tỷ lần so với các bộ cộng cổ điển (tính theo FLOPS / $).
Một hình phạt yếu tố không đổi của một tỷ thường là một công cụ thỏa thuận ngay lập tức. Và đối với các thuật toán lượng tử với một lợi thế bậc hai (như Grover), tôi cho rằng trên thực tế nó là một công cụ giải quyết thỏa thuận. Nhưng thuật toán của Shor trở nên tốt hơn theo cấp số nhân so với chiến lược cổ điển khi bạn tăng số lượng bit trong số thành yếu tố. Có bao nhiêu bit trước khi chúng ta ăn đi "hằng số" 10 ^ 9 với lợi thế tăng trưởng theo cấp số nhân của chúng ta?
Hãy xem xét rằng RSA-640 đã được trang bị vào năm 2005 bằng cách sử dụng ~ 33 năm CPU. Một máy tính lượng tử sẽ có thể thực hiện số đó dưới một ngày. Nếu bạn có một ngàn máy tính cổ điển giải quyết vấn đề, chúng sẽ hoàn thành sau khoảng hai tuần. Vì vậy, có vẻ như lượng tử đang chiến thắng 640 bit, nhưng chỉ bằng một thứ tự cường độ hoặc ba. Vì vậy, có thể việc cắt sẽ xảy ra ở đâu đó khoảng 500 bit?
Dù sao, tôi biết đây không phải là một câu trả lời khó và nhanh. Nhưng hy vọng tôi đã truyền đạt một số ý nghĩa về số lượng mà tôi sẽ nghĩ về khi so sánh cổ điển và lượng tử. Thực sự không ai biết các yếu tố liên tục được nêu ra, vì vậy tôi sẽ ngạc nhiên nếu có ai có thể đưa ra cho bạn một ước tính đúng đắn hơn là "đâu đó trong hàng trăm bit".