1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Một số phương pháp mã hóa lượng tử và mô phỏng trên máy tính

137 29 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 137
Dung lượng 1,13 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Luận văn gồm có phần mở đầu, kết luận và 04 chương đềcập tới các nội dung chính như sau:  Chương 1: Các khái niệm cơ bản nghiên cứu các cơ sở của lý thuyết tính toán lượng tử, các khái

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

PHẠM VIỆT HÙNG

MỘT SỐ PHƯƠNG PHÁP MÃ HÓA LƯỢNG TỬ

VÀ MÔ PHỎNG TRÊN MÁY TÍNH

LUẬN VĂN THẠC SĨ

HÀ NỘI - 2006

Trang 2

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

PHẠM VIỆT HÙNG

MỘT SỐ PHƯƠNG PHÁP MÃ HÓA LƯỢNG

TỬ VÀ MÔ PHỎNG TRÊN MÁY TÍNH

Ngành: Công nghệ thông tin

Trang 3

MỤC LỤC

LỜI CẢM ƠN 4

Danh mục các từ viết tắt 5

Danh mục các hình vẽ 6

Mở đầu 7

Chương 1 Các khái niệm cơ bản 10

1.1 Ký hiệu Bra-Ket 10

1.2 Nguyên lý cơ bản của cơ học lượng tử 11

1.3 Qubit và thanh ghi lượng tử 13

1.3.1 Khái niệm Qubit 13

1.3.2 Khái niệm thanh ghi lượng tử 14

1.3.3 Phép biến đổi Unita và phép đo 16

1.4 Nguyên lý rối lượng tử (Nguyên lý Entanglement) 17

1.5 Nguyên lý song song lượng tử 18

1.6 Nguyên lý không thể sao chép (No-Cloning Theorem) 18

1.7 Mạch và Cổng logic lượng tử 20

1.7.1 Cổng 1 qubit 21

1.7.2 Cổng 2 qubit 23

1.7.3 Cổng 3 qubit 25

1.7.4 Cổng phổ dụng 26

Chương 2 Một số thuật toán lượng tử 28

Trang 4

2.1 Thuật toán lượng tử 28

2.2 Thuật toán Deutsch-Jozsa 29

2.3 Biến đổi Fourier lượng tử 34

2.3.1 Phép biến đổi Fourier rời rạc 34

2.3.2 Phép biến đổi Fourier lượng tử 35

2.3.3 Phép biến đổi nhanh Fourier lượng tử 36

2.3.4 Sự thực hiện QFFT bởi các cổng lượng tử 37

2.4 Thuật toán phân tích thừa số nguyên tố của Peter Shor 38

Chương 3 Mã hoá lượng tử 47

3.1 Giao thức phân phối khoá lượng tử BB84 48

3.1.1 Giao thức phân phối khoá lượng tử BB84 trường hợp không nhiễu 48

3.1.2 Giao thức phân phối khoá lượng tử BB84 trường hợp có nhiễu 52

3.1.3 Một số nhược điểm của giao thức phân phối khoá lượng tử BB84 54

3.1.4 Về độ an toàn của giao thức phân phối khoá BB84 55

3.2 Kết luận về mã hoá lượng tử và thám mã lượng tử 58

Chương IV Xây dựng bộ công cụ mô phỏng 59

4.1 Hướng giải quyết 59

4.2 Thư viện cốt lõi cho mô phỏng tính toán lượng tử 62

4.2.1 Một số vấn đề phải giải quyết khi lập trình mô phỏng 62

4.2.2 Xây dựng các lớp cơ bản 63

4.3 Ngôn ngữ Q – Ngôn ngữ lập trình lượng tử 74

4.3.1 Cấu trúc của chương trình viết bằng ngôn ngữ Q 75

Trang 5

4.3.2 Sơ lược về ngôn ngữ Q 76

KẾT LUẬN 81

TÀI LIỆU THAM KHẢO 83

Tài liệu tiếng Việt 83

Tài liệu tiếng Anh 84

PHỤ LỤC A File Lex/Flex và YACC/Bison của ngôn ngữ Q 89

A1 File q.lex (File định nghĩa phân tích từ vựng) 89

A2 File q.y (File định nghĩa phân tích cú pháp) 96

PHỤ LỤC B Thuật toán Peter Shor viết bằng ngôn ngữ Q 103

B1 File shor.q 103

B2 File tinhtoansonguyen.q 104

B3 File biendoifourier.q 109

PHỤ LỤC C Một số màn hình kết quả chương trình 110

PHỤ LỤC D Thư đồng ý của tác giả Bernhard Ömer 111

Trang 6

Danh mục các từ viết tắt

B92 Giao thức phân phối khóa lƣợng tử B92

BB84 Giao thức phân phối khóa lƣợng tử BB84

CGI Giao diện cổng lập trình chung (Common Gateway

Interface)FFT Phép biến đổi Fourier nhanh (Fast Fourier Transform)

FT Phép biến đổi Fourier (Fourier Transform)

ISAPI Internet Server Application Programming Interface

QFFT Phép biến đổi Fourier nhanh lƣợng tử (Quantum Fast

Fourier Transform)qubit Bit lƣợng tử (Quantum bit)

qureg Thanh ghi lƣợng tử (Quantum Register)

STL Thƣ viện khuôn mẫu chuẩn (Standard Template Library)

Trang 7

Danh mục các hình vẽ

Hình 1.1 Biểu diễn cổng NOT 22

Hình 1.2 Biểu diễn cổng Z 22

Hình 1.3 Biểu diễn cổng Hadamard 23

Hình 1.4 Biểu diễn cổng CNOT 24

Hình 1.5 Biểu diễn cổng Swap 24

Hình 1.6 Biểu diễn cổng dịch pha có điểu khiển 25

Hình 1.7 Biểu diễn cổng Toffoli 26

Hình 1.8 Biểu diễn cổng Toffoli 26

Hình 2.1 Sơ đồ mạch của thuật toán Deutch-Jozsa 33

Hình 2.2 Biểu diễn cổng quay một góc 37

Hình 2.3 Phép biến đổi Fourier lƣợng tử 38

Hình 3.1 Sơ đồ của giao thức BB84 49

Hình 4.1 Mô hình xử lý của trình biên dịch Q 75

Hình 4.2 Sơ đồ biểu diễn một thuật toán lƣợng tử đƣợc xử lý trong ngôn ngữ Q 76

Trang 8

Mở đầu

Hiện nay, sự kết hợp của vật lý lượng tử và cơ sở toán học hiện đại đã tạo nềnmóng cho việc xây dựng máy tính lượng tử trong tương lai Theo các dự báo thì máytính lượng tử sẽ xuất hiện vào khoảng những năm 2010-2020 Isaac L Chuang, người

đứng đầu nhóm nghiên cứu của IBM về máy tính lượng tử cũng đã khẳng định ―Máy

tính lượng tử sẽ bắt đầu khi định luật Moore kết thúc – vào khoảng năm 2020, khi mạch được dự báo là đạt đến kích cỡ của nguyên tử và phân tử‖ (nguyên văn

―Quantum computing begins where Moore's Law ends about the year 2020, when

circuit features are predicted to be the size of atoms and molecules‖

Ở Việt Nam hiện nay, các nhà toán học cũng bước đầu có những nghiên cứu

về tính toán lượng tử và mô phỏng tính toán lượng tử trên máy tính thông thường

Ví dụ như nhóm Quantum của trường Đại học Bách Khoa Hà Nội [5] Tuy nhiênvẫn còn nhiều vấn đề để mở, và việc này cần có sự đầu tư thích đáng, tìm tòi, thựcnghiệm trên cơ sở những thành tựu về lý thuyết và kinh nghiệm sẵn có trên thế giới,đồng thời áp dụng vào thực tế

Trang 9

Mục đích, đối tượng và nội dung của luận văn

Trong khuôn khổ luận văn này, trên những cơ sở những thành tựu đã có trênthế giới và trong nước tôi sẽ trình bày tổng quan các nghiên cứu lý thuyết về tínhtoán lượng tử, đồng thời xây dựng một bộ công cụ mô phỏng tính toán lượng tử vàcác thuật toán lượng tử Luận văn gồm có phần mở đầu, kết luận và 04 chương đềcập tới các nội dung chính như sau:

Chương 1: Các khái niệm cơ bản nghiên cứu các cơ sở của lý thuyết

tính toán lượng tử, các khái niệm cơ bản như qubit, thanh ghi lượng tử, cổng và mạchlượng tử cũng như các nguyên lý cơ bản của tính toán lượng tử như nguyên lý songsong lượng tử, nguyên lý không thể sao chép…

Chương 2: Một số thuật toán lượng tử nghiên cứu một số thuật toán

lượng tử quan trọng như thuật toán Deutsch-Jozsa (thuật toán lượng tử đầu tiên), biếnđổi Fourier lượng tử và quan trọng nhất là thuật toán Peter Shor về tìm chu kỳ của hàm

số từ đó dẫn đến bài toán phân tích số ra thừa số nguyên tố Thuật toán Peter Shor chothấy sức mạnh của tính toán lượng tử so với tính toán hiện nay trên máy tính cổ điển

Chương 3: Mã hoá lượng tử Do có khả năng tính toán bùng nổ theo

cấp luỹ thừa của tính toán lượng tử dẫn đến việc phải nghiên cứu các phương pháp mãhoá mới sử dụng tính toán lượng tử để chống lại khả năng thám mã sử dụng tính toánlượng tử Mục đích của chương này là đề cập đến một ví dụ về mã hoá lượng tử và thám

mã lượng tử đối với một hệ mã lượng tử đơn giản là phân phối khoá lượng tử BB84

Chương 4: Xây dựng bộ công cụ mô phỏng Trên cơ sở các nghiên cứu

lý thuyết về tính toán lượng tử và các thuật toán lượng tử ở trên, phần này trình bày chitiết về phương pháp xây dựng mô hình mô phỏng tính toán lượng tử trên máy tính cổđiển và xây dựng một trình biên dịch Q

Trang 10

dựa trên nền tảng mã nguồn mở có hỗ trợ cú pháp tiếng Việt nhằm mô phỏng các chương trình lượng tử.

Ý nghĩa khoa học và thực tiễn của đề tài:

Bảo mật đã, đang và sẽ tiếp tục là một vấn đề sôi động trong lĩnh vực nghiêncứu khoa học cũng như ứng dụng trong thực tế Không chỉ lĩnh vực quan sự mớicần đến bảo mật mà các ứng dụng dân sự cũng cần phải có sự đảm bảo về bảo mật

và an toàn dữ liệu Đặc biệt khi các ứng dụng thương mại điện tử càng ngày càngphát triển như hiện nay thì bảo mật là vấn đề sống còn đối với các ứng dụng đó.Các hệ mã hoá công khai (như RSA) hay bí mật (như AES) và các giao thức chia

sẽ bí mật đã là một phần không thể thiếu của các ứng dụng ngày nay

Nhưng khi máy tính lượng tử xuất hiện thì các hệ mã hoá được coi là antoàn và sử dụng rộng rãi hiện nay như RSA sẽ không còn đảm bảo an toàn Do đóviệc nghiên cứu tính toán lượng tử và các hệ mã dựa trên tính toán lượng tử là mộtvấn đề cấp thiết nhằm đáp ứng nhu cầu của tương lai gần, khi mà máy tính lượng tửđược thương mại hoá Điều này không chỉ đảm bảo cho các ứng dụng dân sự màcòn đảm bảo an toàn cho các ứng dụng quân sự, nơi an toàn dữ liệu được đặt lênhàng đầu

Do đó, việc nghiên cứu tính toán lượng tử rất có ý nghĩa thực tế, là tiền đềxây dựng và ứng dụng tính toán lượng tử, không chỉ trong lĩnh vực bảo mật mà còn

có thể mở rộng ra các lĩnh vực khác Đặc biệt trong bối cảnh ―đi tắt đón đầu‖ của

Việt Nam, việc nghiên cứu tính toán lượng tử góp phần giúp CNTT nước nhà tiếpcận với nền công nghệ cao của thế giới

Trang 11

tử trong lý thuyết cơ học lượng tử.

Trong cơ học lượng tử, trạng thái của một hệ vật lý được mô tả bởi một

vector trong không gian Hilbert phức  (sẽ nói rõ hơn ở phần sau), mỗi vector đó được gọi là ket và ký hiệu là  (đọc là psi ket)

Ứng với mỗi ket có một bra và ký hiệu là  (đọc là psi bra) là ánh xạtuyến tính liên tục từ không gian Hilbert phức  tới không gian số phức được địnhnghĩa bởi  |   (  , ) với mọi ket  Trong đó (  , ) là tích vô

hướng trong không gian Hilbert  Trong ngôn ngữ ma trận, bra là ma trận chuyển

vị liên hợp với ket và ngược lại

Ký hiệu  |  được gọi là tích bra-ket (hay bracket).

Tính chất của bra-ket:

- Tính tuyến tính của bra và ket: với c 1 và c 2 là các số phức, ta có

o  c1  1  c2  2   c1  |  1  c2  | 2

oc1 1  c2 2    c1 1 |   c2 2 | 

Trang 12

- Cho ket 1 và 2 bất kỳ, c 1 và c 2 là các số phức, từ tính chất của

tích vô hướng ta có c1 1  c2 2là vector đối ngẫu với

c* 1  c* 2 trong đó c1 * và c2 * là các số phức liên hợp với c 1

- Cho bra  và ket  bất kỳ, từ tính chất của tích vô hướng trongkhông gian Hilbert ta có |  | *

1.2 Nguyên lý cơ bản của cơ học lượng tử

Trong cơ học cổ điển (hay cơ học Newton), trạng thái của một hệ n phần tử

tại thời điểm t0 được xác định bởi vị trí {x1(t0), x2(t0), …, xn(t0)} và vận tốc của hệ

là đạo hàm bậc nhất của các phần tử {x1’(t0), x2’(t0), …, xn’(t0)} Nếu trạng thái khởi

đầu được xác định, nhờ các định luật về cơ học cổ điển của Newton, chúng ta có thể

hoàn toàn xác định (ít nhất là về mặt nguyên lý) trạng thái của hệ tại bất cứ thời

điểm t nào

Tuy nhiên, cơ học lượng tử hoàn toàn dựa trên một nền tảng toán học hoàn

toàn khác so với cơ học cổ điển Dưới đây, tôi sẽ đề cập đến một số tiên đề cơ sở

của cơ học lượng tử

Tiên đề 1 Trạng thái của một hệ vật lý S được mô tả bằng một vector đơn vị

|, được gọi là vector trạng thái hoặc hàm sóng, nằm trong một không gian

Hilbert S gắn liền với hệ vật lý.

Sự tiến triển theo thời gian của vector trạng thái | của hệ tuân theo

phương trình Schrödinger

trong đó H là toán tử tự liên hợp của hệ thống (còn gọi là toán tử

Hamiltonian) và ħ là hằng số Planck-Dirac (hay còn gọi là hằng số Planck đơn

Trang 14

giản), ħ=h/2π, với h là hằng số Planck Giá trị của h ≈ 6.626x10 -34 J.s (J là Joule

và s là giây) được xác định bằng thực nghiệm.

Như ta thấy ở trên, phương trình Schrödinger là phương trình vi phân tuyến

tính bậc nhất Do đó ta có thể áp dụng nguyên lý siêu trạng thái (Superposition

principle): Nếu |1(t) và |2(t) là nghiệm của phương trình Schrödinger, khi đó

siêu trạng thái |(t) = α|1(t) + β|2(t) (với α β là số phức) cũng là nghiệm củaphương trình Do vậy toán tử phát triển theo thời gian của hệ sẽ là:

|(t) = U (t, t0) |(t0)

và U là toán tử tuyến tính.

Theo [3, 11] U sẽ là toán tử Unita Chính vì vậy trong mô hình toán học cho

cơ học lượng tử, chúng ta sẽ sử dụng các phép biến đổi Unita

Tiên đề 2 Trạng thái của một hệ vật lý S được mô tả bằng một vector đơn vị

|, được gọi là vector trạng thái hoặc hàm sóng, nằm trong một không gian Hilbert H S gắn liền với hệ vật lý.

Nguyên lý bất định Heisenberg Cho A và B là hai toán tử Hermiltian gắn

liền với các quan sát, A B là hai toán tử không giao hoán và | là hàm sóng gắn liền với trạng thái lượng tử Khi đó bất đẳng thức sau luôn thoả mãn:

2

trong đó [A,B] = AB - BA

Nguyên lý Heisenberg cho ta biết rằng khi đo một trạng thái lượng tử theo

hai đại lượng (như vị trí và vận tốc của hạt cơ bản), ta không thể đo chính xác

được đồng thời cả hai giá trị đó Nguyên lý Heisenberg được ứng dụng trong các hệphân phối khoá lượng tử như BB84 mà chúng ta sẽ xem xét ở phần sau

Trang 15

1 3

1.3 Qubit và thanh ghi lượng tử

1.3.1 Khái niệm Qubit

Trước hết ta xét cách quan niệm mới về bit - đơn vị thông tin cơ bản trong

mô hình mới này: đó là qubit

Như ta đã biết: 1 bit cổ điển có thể biểu diễn một trong hai trạng thái: 0 hoặc

1 (ở tại một thời điểm xác định) Do đó, n bit có thể biểu diễn 2 n trạng thái khác

nhau Nhưng theo cách quan niệm cổ điển, nếu một thanh ghi được tạo nên từ n bit

cổ điển, tại một thời điểm, nó chỉ có thể biểu đúng một giá trị nguyên trong khoảng

từ 02n1

Theo quan niệm mới về mô hình tính toán lượng tử dựa trên nền tảng vật lýlượng tử, chúng ta thấy rằng tại một thời điểm một thanh ghi lượng tử có thể chứađược tổ hợp nhiều giá trị

Xét theo mô hình vật lý, qubit là một vi hạt có hai trạng thái, nó có thể là:spin hạt nhân trong phân tử, ion bị bẫy (trapped ions), … Chúng ta quan tâm đếnhai trạng thái đặc biệt được ký hiệu là 0 & 1 , được coi là hai trạng thái cơ sở tínhtoán

Theo mô hình toán học, xét không gian Hilbert 2 ( là trường số phức) Nó có

cơ sở trực giao là (1, 0) và (0, 1), ta ký hiệu tương ứng là 0 & 1 Qubit cơ sở baogồm hai dạng 0 hoặc 1 Khi đó, một 1-qubit tổng quát biểu diễn một vector đơn vịtrong không gian 2 , trong đó trạng thái 0 ứng với vector (1, 0), còn trạng thái 1 sẽứng với vector (0, 1) đồng thời thoả mãn điều kiện chuẩn hoá về xác suất Như vậy,dạng tổng quát của một 1-qubit là:

0 1

, 

Trang 16

Đối với qubit có trạng thái tổng quát là  0   1 , chúng ta có thể tiến

hành đo (sẽ nói rõ hơn ở phần sau) trạng thái của qubit Khi đó, theo các nguyên lý

của cơ học lượng tử thì xác suất để nhận được trạng thái 0 là α2, xác suất để nhậnđược trạng thái 1 là β2, do đó α, β phải thoả mãn điều kiện xác suất α2 + β2 = 1

Như vậy sử dụng 0 & 1 ta có thể biểu diễn trạng thái của một qubit, cũnggiống như 0 & 1 biểu diễn trạng thái của bit cổ điển

Để đi đến khái niệm thanh ghi lượng tử (quantum register), người ta mở rộng không gian trạng thái bằng cách sử dụng tích tensor [6,23] của các không gian 2

1.3.2 Khái niệm thanh ghi lượng tử

Định nghĩa: Một thanh ghi lượng tử (quantum register) biểu diễn một

vector trong không gian Hilbert  = ( 2 )n , đã được chuẩn hoá ( ( 2 )n là tích

Tensor của n không gian 2 )

Do cơ sở của ( 2 )nlà:

0  0   0  i0  00 0  i0  0

0  0   1  i1  00 1  i1  1

Trang 18

X có toạ độ trong không gian Hilbert  là (c 0 , c 1 , c 2 , …, c n)

Trạng thái lượng tử được biểu diễn một thanh ghi được gọi là một siêu

trạng thái (Superposition) Ta cũng thấy rằng một quantum register có thể lưu trữ

đồng thời 2 n thông tin khác nhau: 02n1

Tồn tại siêu trạng thái của thanh ghi có thể mô tả bởi:

X  i1  i2   i n ; trong đó i j là qubit thứ j

Tuy nhiên cũng có những siêu trạng thái không thể biểu diễn được dưới

dạng như vậy

Ta xét hai ví dụ với thanh ghi 2-qubit có thể biểu diễn được bằng tích tensor

của hai 1-qubit:

mà không làm ảnh hưởng đến các hệ thống còn lại Ví dụ, khi tiến hành đo qubit

thứ nhất được giá trị 0 hay 1 thì qubit thứ hai luôn đo được kết quả 0 Có thể so

sánh với trạng thái rối lượng tử ở mục sau

Trang 19

1 6

1.3.3 Phép biến đổi Unita và phép đo.

Đối với tính toán lượng tử, có 2 loại phép biến đổi cơ bản là phép biến đổiUnita và phép biến đổi không Unita Đối với lớp phép biến đổi không Unita chỉ cóphép đo

Các phép biến đổi Unita là các phép biến đổi không mất năng lượng Do vậycác phép biến đổi Unita là các phép biến đổi khả nghịch Về mặt toán học có thể coi

là các ánh xạ trong các không gian Hilbert đẳng cấu

U:   '

trong đó  và ’ là hai không gian Hilbert có cùng số chiều (ở đây chúng tachỉ xét đến không gian Hilbert hữu hạn chiều, với các không gian Hilbert vô hạnchiều, sẽ có cách tiếp cận khác không được đề cập đến trong luận văn này)

Còn phép đo là phép biến đổi mất năng lượng, do đó phép đo là phép biếnđổi bất khả nghịch Về mặt toán học có thể coi là phép đo là phép ánh xạ về khônggian Hilbert có số chiều ít hơn

U:   '

trong đó  và ’ là hai không gian Hilbert, ’ có số chiều nhỏ hơn .Đối với hệ lượng tử, khi áp dụng phép đo thì ta sẽ không thể tiên đoán độxác định của kết quả (nguyên lý bất định Heisenberg) Kết quả thu được phụ thuộcvào xác suất của các trạng thái được biểu diễn bởi hệ lượng tử Đồng thời theo cácnguyên lý của cơ học lượng tử, ngay sau khi đo lập tức hệ lượng tử sẽ sụp đổ về giátrị đo được

Ví dụ: Trong trường hợp tổng quát, một n-qubit X đang ở trạng thái lượng

tử:

Trang 20

suất đo đƣợc giá trị i là c i 2 Đồng thời ngay sau khi tiến hành đo, X sẽkhông còn

q sẽ sụp đổ về trạng thái 0

1.4 Nguyên lý rối lượng tử (Nguyên lý Entanglement)

Nguyên lý rối lƣợng tử là một trong những nguyên lý quan trọng của tínhtoán lƣợng tử Nguyên lý rối lƣợng tử cho phép việc tính toán diễn ra một cáchđồng thời trên các thành phần của qubit đầu vào khi nó ở trạng thái rối lƣợng tử

Ví dụ : Ta xét ví dụ sau đây: X  1

2  0  3   1

2  00 

11 

Trang 21

Khi tiến hành đo một qubit, tuỳ theo kết quả của phép đo mà ta có ngay trạngthái của qubit còn lại Tức là phép đo đã ảnh hưởng đến toàn bộ hệ thống:

Nếu kết quả là 0 thì trạng thái qubit còn lại là 0

Trang 22

Nếu kết quả là 1 thì trạng thái qubit còn lại là 1

Suy ra: giữa hai hệ thống con có mối quan hệ nào đó Người ta gọi những

trạng thái như vậy là rối lượng tử hay vướng lượng tử (Quantum Entanglement).

Trạng thái này của hệ 2-qubit không thể phân tích thành tích tensor của hai hệ thốngcon 1-qubit

1.5 Nguyên lý song song lượng tử

Thanh ghi lượng tử cùng một lúc có thể lưu trữ nhiều trạng thái đơn lẻ khácnhau nhưng có một đặc điểm đáng chú ý là: bất kỳ một phép tác động nào lên mộtthanh ghi lượng tử thì nó sẽ tác động lên đồng thời toàn bộ các trạng thái mà thanhghi đó lưu trữ (ta không thể tách rời các trạng thái để thao tác trên chúng một cáchriêng lẻ)

2 n 1 2 n 1

Nghĩa là U c i i c i U i vớiUlà một phép biến đổiUnitanào đó Ở

đây ta có thể thấy sức mạnh của tính toán lượng tử vì nếu trong tính toán cổ điển để

thực hiện được phép biến đổi trên, chúng ta cần nhân ma trận ma trận C = (c 0 , c 1 ,

c 2 , …, c n ) với ma trận U cỡ 2 n x 2 n còn trong tính toán lượng tử, chúng ta chỉ cần

một phép biến đổi Unita (có thể biểu diễn bằng một cổng lượng tử, xem 1.7) Tức là

độ phức tạp có thể giảm theo cấp luỹ thừa

1.6 Nguyên lý không thể sao chép (No-Cloning Theorem)

Trong tính toán cổ điển, có một tính chất của bit cổ điển là chúng ta có thể dễdàng tạo một bản sao chứa cùng thông tin Tuy nhiên, đối với tính toán lượng tử,trạng thái của qubit tổng quát nói chung không thể sao chép

Định lý: Không thể tạo ra một máy thực hiện các phép biến đổi Unita có khả

năng sao chép hoàn hảo trạng thái của một qubit bất kỳ.

Chứng minh:

Trang 23

1 9

Thực vậy, giả sử ta có đƣợc một máy sao chép hoàn hảo Khi đó xét hệ bao gồm hai qubit (qubit đƣợc sao chép, qubit sao chép) và máy sao chép trạng thái

Qubit đƣợc sao chép ở trạng thái tổng quát:

Chúng ta sẽ chứng minh phép biến đổi Unita trên không thể tồn tại

Thực vậy, nếu trạng thái của qubit thứ nhất là 0 , phép biến đổi Unita U sẽ

Trang 24

U   A i   U   0   1  A i

U  0  A i   U  1  A i

 0 0 A f0   1 1 Af1

Ta thấy trạng thái (1.6.4) này khác hoàn toàn so với trạng thái (1.6.1) chúng

ta mong muốn, suy ra điều cần phải chứng minh

Ở đây, định lý này muốn khẳng định không tồn tại một máy sao chép trạngthái bất kỳ, tuy nhiên với một số trạng thái lượng tử đặc biệt như 0 hay 1 thì ta cóthể tạo được máy sao chép

1.7 Mạch và Cổng logic lượng tử

Trong mô hình máy tính cổ điển, các nhà khoa học đã mô hình hoá toán họcbằng các mô hình như cổng và mạch logic cổ điển, máy tính Turing Tương tự vậy,trong tính toán lượng tử, các nhà khoa học cũng được xây dựng các mô hình như

mô hình cổng và mạch logic lượng tử, máy tính Turing lượng tử Yao đã chỉ rarằng với mỗi máy Turing lượng tử, tồn tại mô hình mạch logic lượng tử mô phỏngmáy Turing lượng tử đó với thời gian đa thức [14] Do đó chúng ta chỉ cần nghiêncứu một mô hình cổng và mạch logic lượng tử, do mô hình này đơn giản và gần gũivới cách thiết kế máy tính lượng tử Từ đó dẫn đến kết quả tương tự trong mô hìnhmáy Turing lượng tử

Một cách tương tự như máy tính cổ điển, được xây dựng dựa trên các cổnglogic cơ bản như AND, OR, NOT, … trong mô hình tính toán lượng tử, chúng tacũng xây dựng các cổng lượng tử

Do yêu cầu của cơ học lượng tử là các phép biến đổi hệ lượng tử bắt buộc làUnita [3,11] do đó trong mô hình toán học của tính toán lượng tử, chúng ta sử dụngcác toán tử Unita

Định nghĩa: Một cổng logic lượng tử qubit được sử dụng để biến đổi

n-qubit được biểu về mặt toán học bởi một phép biến đổi Unita tác động lên

Trang 25

vector siêu trạng thái của n-qubit đó Ma trận biến đổi Unita tác động lên n-qubit là ma trận 2 n x2 n

Định nghĩa: Mạch lôgic lượng tử là một tập các cổng lôgic lượng tử liên

kết theo một đồ thị có hướng không chu trình, trong đó đầu ra của cổng này có thể là đầu vào của cổng kia.

Dưới đây là một số cổng logic lượng tử cơ bản

Trang 26

X U2(

Biểu diễn trong mạch:

Hình 1.1 Biểu diễn cổng NOT

1  1

 0  1

2

Dạng ma trận

Trang 27

Biểu diễn trong mạch:

Hình 1.3 Biểu diễn cổng Hadamard

1.7.2 Cổng 2 qubit

i/ Controlled NOT (CNOT)

Cổng CNOT này thực hiện tương tự phép toán XOR trong tính toán cổ điển.Thực hiện:

a, b   0,1 

b giữ nguyên nếu a = 0

b đảo bit nếu a = 1

Trang 29

Bit điều khiểnBit đíchHình 1.4 Biểu diễn cổng CNOT

ii/ Cổng hoán vị hai bit (Cổng Swap)

Ứng dụng cổng CNOT: hoán vị hai bit

Hình 1.5 Biểu diễn cổng Swap

iii/ Cổng dịch pha có điều khiển (Controlled phase shift gate)

Cổng dịch pha có điều khiển là cổng không có cổng tương tự trong tính toán

Trang 31

Hình 1.7 Biểu diễn cổng ToffoliCổng Toffoli áp dụng cổng Not lên qubit cuối cùng nên ta có thể biểu diễn dưới dạng mạch như sau:

Hình 1.8 Biểu diễn cổng ToffoliChúng ta có thể sử dụng cổng Toffoli và cổng CNOT để biểu diễn mạch cộng nhị phân có nhớ như sau:

Hình 1.9 Biểu diễn cổng cộng nhị phân có nhớ

1.7.4 Cổng phổ dụng

Trên thực tế, chúng ta muốn xây dựng và sử dụng chỉ một số cổng cơ bản tác

động lên một số lượng nhỏ qubit (độc lập với số lượng n qubit cần xử lý, n có thể

Trang 32

rất lớn) nhưng phải đảm bảo yêu cầu có thể tính được một hàm bất kỳ Các cổng

đó được gọi là cổng phổ dụng Trong tính toán cổ điển, ta đã biết được cổng NOT

và AND là cổng phổ dụng Tương tự, trong tính toán lượng tử, chúng ta sẽ địnhnghĩa về cổng phổ dụng

Định nghĩa: Một tập cổng lượng tử G được gọi là phổ dụng nếu   > 0

và mọi ma trận Unita U tác động trên số bít bất kì, U có thể được xấp xỉ với độ chính xác > 0 bằng một dãy cổng của G Nói cách khác nhóm con tạo nên bởi G là trù mật trong nhóm nhóm các toán tử Unita, n Tức là U,0,U' được tạo nên bằng tích các cổng của G sao choUU' .

Deutsch là người đầu tiên chỉ ra một cổng lượng tử phổ dụng 3 qubit.

Đó là cổng Toffoli dạng tổng quát [34 trang 24,25] Sau đó, Di Vincenzo chỉ

ra những cổng 2 qubit là phổ dụng Cho đến nay, có rất nhiều tập cổng phổ dụng đã được đưa ra Một ví dụ về tập cổng phổ dụng là tập cổng CNOT, Hadamard, các cổng dịch pha [32] Chi tiết về tập cổng phổ dụng có thể xem tại [20,23,31,32].

Trang 33

- Thuật toán lượng tử dạng đơn giản: bao gồm một dãy các thao tácUnita, thường kết thúc bằng một phép đo Có thể ví dụ như thuật toán lượng tử Deutsch-Jozsa Trong thuật toán lượng tử dạng đơn giản chỉ có một phép đo, thông thường là khikết thúc thuật toán.

- Thuật toán lượng tử dạng phức tạp: bao gồm một dãy các thuật toánlượng tử dạng đơn giản đi liền nhau Thuật toán lượng tử dạng phức tạp có thể có nhiềuphép đo, đầu vào của bước tiếp theo là kết quả đo của bước trước Có thể ví dụ nhưthuật toán lượng tử Peter Shor

Điểm khác biệt của thuật toán lượng tử là đã sử dụng những ưu điểm, đặcđiểm riêng biệt của máy tính lượng tử Nhờ sự áp dụng đó mà giải thuật lượng tửthật sự đã làm được những việt tưởng như không thể đối với những giải thuật cổđiển Ưu điểm chủ yếu được sử dụng ở đây là tính chất song song của tính toánlượng tử: việc cổng lượng tử tác động lên một siêu trạng thái n-qubit có nghĩa là nó

đã tác động đồng thời lên 2 n trạng thái riêng rẽ Do vậy khi thiết kế các thuật toánlượng tử chúng ta cần tuân thủ nguyên lý song song lượng tử

Công cụ toán học được sử dụng nhiều nhất trong những giải thuật lượng tửhiện nay là phép biển đổi Fourier rời rạc Phép biến đổi Fourier (FT) thực sự đã đưalại nhiều lợi ích trong lĩnh vực của tính toán lượng tử Để hiểu rõ vai trò của FTtrong những giải thuật lượng tử, chúng ta cần xem xét sơ đồ tổng quát của một giảithuật lượng tử dạng đơn giản

Trang 34

B1: Xác định trạng thái khởi đầu: S0

B2: Xác định một phép biến đổi Unita U thích hợp sao cho: U S 0 S f là một

siêu trạng thái lượng tử thoả mãn điều kiện nào đó (tuỳ thuộc vào từng vấn đề cụthể)

B3: Thực hiện ―đo‖ S f để thu được kết quả mong muốn.

Việc xác định S0 và U là phụ thuộc vào từng bài toán, từng vấn đề cụ thể

Toán tử Unita U chính là chìa khoá của mỗi giải thuật

Trong sơ đồ tổng quát này, vai trò của FT sẽ nằm ở B1 và trong phép biến

đổi U nhằm thu được Sf thoả mãn điều kiện nào đó Đối với một thanh ghi trạng

trong không gian đó có một mối tương quan nhất định nào đó Nhờ mối tương quan

đó, sau phép đo S f ta sẽ thu được những thông tin cần thiết để đưa ra kết luận vềlời giải của vấn đề

Để làm sáng tỏ ý trên, chúng ta sẽ cùng đi vào giải thuật lượng tử được coi

Trang 35

+ Trường hợp ―hằng số‖: tức là:f i  0i 1, N

+ Trường hợp ―cân bằng‖: tức là: trong tập f (1), , f ( N)  có một nửa là giá trị 1; nửa còn lại là 0

Câu hỏi đặt ra là phân biệt f trong hai trường hợp trên?

b Hướng giải quyết cổ điển:

Với giải thuật thuần tuý, chúng ta cần xác định giá trị của f(x) tại ít nhất

Trang 36

Như vậy, giải thuật xác suất có thể giải quyết bài toán tương đối tốt

c Hướng giải quyết dùng lý thuyết tính

toán lượng tử:

Dùng giải thuật lượng tử, chúng ta có thể giải quyết bài toán trên chỉ với một

vài lệnh (cho mọi giá trị của N)

Giải thuật của Deutch và Jozsa cần dùng 2 thanh ghi lượng tử Thanh ghi thứ

nhất gồm n-qubit lưu trữ các số từ (có thể coi giả thuyết là

f :  0, , N  1    0,1 ) Thanh ghi thứ hai chỉ gồm 1-qubit lưu giá trị của hàm f

 

gồm hai giá trị 0,1 Trạng thái ban đầu của thanh ghi thứ nhấtn-qubit là 0 ,trạng thái ban đầu của thanh ghi thứ hai 1-qubit là 1   n

0  N 1

Trang 37

1N 1 1 1

Trang 38

Để tạo đƣợc S0 ta tác động phép biến đổi Fourier (FT) (sẽ nói ở mục 2.3) vào

trạng thái nguyên thuỷ 0 của thanh ghi thứ nhất và tác động phép biến đổi

Trang 40

f là ―hằng số‖; ngược lại

B3: Đo thanh ghi thứ nhất: nếu kết quả là 0 thì

n

f sẽ là ―cân bằng‖

Hình 2.1 Sơ đồ mạch của thuật toán Deutch-Jozsa

Ta sẽ chỉ ra rằng trong trường hợp ngược lại f luôn là ―cân bằng‖: tức là sẽ

f là ―cân bằng‖ mà lại đo được   

Ngày đăng: 11/11/2020, 21:46

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w