Tôi sẽ tham gia cuộc thảo luận khá muộn, nhưng tôi sẽ cố gắng giải quyết một số câu hỏi đã được hỏi trước đó.
Đầu tiên, theo quan sát của Aaron Sterling, điều quan trọng trước tiên là quyết định ý nghĩa của chúng ta bằng những con số "thực sự ngẫu nhiên", và đặc biệt nếu chúng ta đang xem xét mọi thứ từ góc độ tính toán phức tạp hoặc tính toán.
Tuy nhiên, để tôi tranh luận rằng trong lý thuyết phức tạp, mọi người chủ yếu quan tâm đến giả ngẫu nhiên và máy phát điện giả , tức là các chức năng từ chuỗi đến chuỗi sao cho phân phối chuỗi đầu ra không thể được phân biệt với phân phối đồng đều bởi một quy trình hiệu quả (trong đó một số ý nghĩa của hiệu quả có thể được xem xét, ví dụ: mạch đa thời gian tính toán, mạch kích thước đa thức, v.v.). Đây là một lĩnh vực nghiên cứu rất hay và rất tích cực, nhưng tôi nghĩ hầu hết mọi người sẽ đồng ý rằng các đối tượng mà nó nghiên cứu không thực sự ngẫu nhiên, điều đó đủ để họ chỉ nhìn ngẫu nhiên (do đó thuật ngữ "giả").
Trong lý thuyết tính toán, một sự đồng thuận đã xuất hiện một khái niệm tốt về "tính ngẫu nhiên thực sự", và đó thực sự là khái niệm về tính ngẫu nhiên của Martin-Löf (những người khác đã được đề xuất và rất thú vị để nghiên cứu nhưng không trần trụi các tính chất tốt đẹp ngẫu nhiên Martin-Löf có). Để đơn giản hóa các vấn đề, chúng tôi sẽ xem xét tính ngẫu nhiên cho các chuỗi nhị phân vô hạn (các đối tượng khác như hàm từ chuỗi đến chuỗi có thể dễ dàng được mã hóa bằng chuỗi đó).
Chuỗi nhị phân vô hạn là ngẫu nhiên Martin-Löf nếu không có quá trình tính toán (ngay cả khi chúng tôi cho phép quá trình này có thể tính toán được trong thời gian theo cấp số nhân ba hoặc cao hơn) có thể phát hiện lỗ hổng ngẫu nhiên.α
(1) Ý nghĩa của "lỗ hổng ngẫu nhiên" là gì? Phần đó là đơn giản: nó là một tập hợp các biện pháp 0, tức là một tài sản mà hầu hết các trình tự không có (ở đây chúng ta nói về Lebesgue đo tức là biện pháp mà mỗi bit có khả năng là 0 độc lập với tất cả các khác bit). Một ví dụ về lỗ hổng như vậy là "có một phần ba số không và 2/3 số không có triệu chứng", vi phạm luật số lượng lớn. Một ví dụ khác là "với mỗi n, các bit 2n đầu tiên của được phân phối hoàn hảo (có nhiều số 0)". Trong trường hợp này, luật số lượng lớn được bão hòa, nhưng không phải là định lý giới hạn trung tâm. Vân vân.1 / 20k w k , 0 w k , 1 U k w k , i 2 - k G = ⋂ k U k 0 αα
(2) Làm thế nào để kiểm tra quá trình tính toán mà một chuỗi không thuộc về một bộ số đo cụ thể 0? Nói cách khác, những bộ số đo 0 nào có thể được mô tả một cách tính toán? Đây chính xác là những gì Martin-Löf kiểm tra. Thử nghiệm Martin-Löf là một quy trình có thể tính toán được, với k đầu vào, có thể tính toán được (nghĩa là thông qua máy Turing có đầu vào ) tạo ra một chuỗi các chuỗi , , ... sao cho tập hợp của các chuỗi vô hạn bắt đầu bởi một trong những có số đo tối đa là (nếu bạn thích cấu trúc liên kết, hãy lưu ý rằng đây là một tập hợp mở trong cấu trúc liên kết sản phẩm cho tập hợp chuỗi nhị phân vô hạn). Sau đó, bộkwk , 0wk , 1Bạnkwk , tôi2- kG = ⋂kBạnkcó số đo và được gọi là nullset Martin-Löf . Bây giờ chúng ta có thể định nghĩa tính ngẫu nhiên của Martin-Löf bằng cách nói rằng một chuỗi nhị phân vô hạn là ngẫu nhiên Martin-Löf nếu nó không thuộc về bất kỳ nullset Martin-Löf nào . 0α
Định nghĩa này có vẻ kỹ thuật nhưng nó được chấp nhận rộng rãi là đúng vì nhiều lý do:
- nó đủ hiệu quả, nghĩa là định nghĩa của nó liên quan đến các quá trình tính toán
- nó đủ mạnh: bất kỳ thuộc tính "gần như chắc chắn" nào bạn có thể tìm thấy trong sách giáo khoa lý thuyết xác suất (luật số lượng lớn, luật logarit lặp, v.v.) có thể được kiểm tra bằng phép thử Martin-Löf (mặc dù điều này đôi khi khó chứng minh)
- nó đã được đề xuất một cách độc lập bởi một số người sử dụng các định nghĩa khác nhau (đặc biệt là định nghĩa Levin-Chaitin sử dụng độ phức tạp Kolmogorov); và thực tế là tất cả chúng đều dẫn đến cùng một khái niệm là một gợi ý rằng đó phải là khái niệm đúng (hơi giống khái niệm hàm tính toán, có thể được định nghĩa thông qua máy Turing, hàm đệ quy, lambda-compus, v.v.)
- lý thuyết toán học đằng sau nó là rất tốt đẹp! xem ba cuốn sách xuất sắc Giới thiệu về Độ phức tạp và ứng dụng của Kolmogorov (Li và Vitanyi), Tính ngẫu nhiên và độ phức tạp của thuật toán (Downey và Hirschfeldt) Tính toán và tính ngẫu nhiên (Nies).
Một chuỗi ngẫu nhiên Martin-Löf trông như thế nào? Vâng, lấy một đồng tiền hoàn toàn cân bằng và bắt đầu lật nó. Ở mỗi lần lật, viết 0 cho đầu và 1 cho đuôi. Tiếp tục cho đến khi hết thời gian. Đó là những gì một chuỗi Martin-Löf trông giống như :-)
Bây giờ trở lại câu hỏi ban đầu: có cách tính toán nào để tạo chuỗi ngẫu nhiên Martin-Löf không? Theo trực giác, câu trả lời là KHÔNG , bởi vì nếu chúng ta có thể sử dụng quy trình tính toán để tạo chuỗi , thì chúng ta chắc chắn có thể sử dụng quy trình tính toán để mô tả singleton { }, vì vậy không phải là ngẫu nhiên. Chính thức điều này được thực hiện như sau. Giả sử một chuỗi có thể tính toán được. Hãy xem xét thử nghiệm Martin-Löf sau đây: với tất cả , chỉ cần xuất tiền tố của có độ dài và không có gì khác. Điều này có số đo nhiều nhất (trên thực tế, chính xác)α α α k một k α k 2 - k U k αααααkmộtkαk2- kvà giao điểm của các tập hợp như trong định nghĩa là chính xác { }. QED !!Bạnkα
Trong thực tế, một chuỗi ngẫu nhiên Martin-Löf so sánh được theo nghĩa mạnh hơn nhiều: nếu một phép tính orory nào đó với oracle (chính nó là một chuỗi nhị phân vô hạn) có thể tính toán , sau đó cho tất cả các bit , của là cần thiết để tính bit đầu tiên của (trên thực tế đây là một đặc điểm của tính ngẫu nhiên của Martin-Löf, điều không may hiếm khi được nêu trong tài liệu).β α n n - O ( 1 ) β n ααβαnn - O ( 1 )βnα
Ok, bây giờ là phần "chỉnh sửa" trong câu hỏi của Joseph: Có phải trường hợp một TM có quyền truy cập vào một nguồn ngẫu nhiên thuần túy (một lời sấm truyền?), Có thể tính toán một chức năng mà một TM cổ điển không thể?
Từ góc độ tính toán, câu trả lời là "có và không". Nếu bạn được cấp quyền truy cập vào một nguồn ngẫu nhiên như một nhà tiên tri (trong đó đầu ra được trình bày dưới dạng một chuỗi nhị phân vô hạn), với xác suất 1, bạn sẽ nhận được một lời sấm ngẫu nhiên Martin-Löf, và như chúng ta đã thấy trước đó Martin-Löf có nghĩa là không có thể tính toán được, vì vậy nó đủ để xuất ra lời tiên tri! Hoặc nếu bạn muốn một hàm , bạn có thể xem xét hàm mà với tất cả cho bạn biết có bao nhiêu số 0 trong số bit đầu tiên của nhà tiên tri của bạn. Nếu nhà tiên tri là Martin-Löf ngẫu nhiên, chức năng này sẽ không thể tính toán được. f n nđụ: N → Nđụnn
Nhưng tất nhiên bạn có thể lập luận rằng đây là gian lận: thực sự, đối với một nhà tiên tri khác, chúng ta có thể có một chức năng khác, do đó có một vấn đề không thể tái tạo. Do đó, một cách khác để hiểu câu hỏi của bạn là như sau: có một hàm không thể tính toán được, nhưng có thể được "tính toán với xác suất dương", theo nghĩa là có một máy Turing có quyền truy cập vào một nhà tiên tri ngẫu nhiên, với xác suất dương (vượt qua lời sấm), tính . Câu trả lời là không, do một định lý về Sacks có bằng chứng khá đơn giản. Trên thực tế, điều này chủ yếu đã được Robin Kothari trả lời: nếu xác suất TM chính xác lớn hơn 1/2, thì người ta có thể tìm tất cả ở tất cả các tính toán tiên tri có thể có với đầu vàof n n f ε > 0 σđụđụnnvà tìm kết quả đầu ra nhận được "phiếu bầu đa số", tức là được tạo ra bởi một tập hợp các phép đo hơn 1/2 (điều này có thể được thực hiện một cách hiệu quả). Đối số thậm chí còn mở rộng đến xác suất nhỏ hơn: giả sử TM xuất ra với xác suất . Theo định lý mật độ của Lebesgue, tồn tại một chuỗi hữu hạn sao cho nếu chúng ta sửa các bit đầu tiên của nhà tiên tri thành chính xác σ , và sau đó lấy các bit khác một cách ngẫu nhiên, thì chúng ta tính f với xác suất ít nhất là 0,99. Bằng cách lấy một ví dụ σ , chúng ta có thể áp dụng đối số trên một lần nữa.đụϵ > 0σσđụσ