Dołączam do dyskusji dość późno, ale postaram się odpowiedzieć na kilka pytań, które zostały zadane wcześniej.
Po pierwsze, jak zauważył Aaron Sterling, ważne jest, aby najpierw zdecydować, co rozumiemy przez „prawdziwie losowe” liczby, a zwłaszcza, jeśli patrzymy na rzeczy z perspektywy złożoności obliczeniowej lub obliczalności.
Argumentuję jednak, że w teorii złożoności ludzie są zainteresowani głównie pseudo- losowością i pseudo- losowymi generatorami, tj. Funkcjami od ciągów do ciągów, tak że rozkładu sekwencji wyjściowych nie można odróżnić od rozkładu równomiernego za pomocą wydajnego procesu (gdzie można wziąć pod uwagę kilka znaczeń wydajności , np. obliczalny czas policyjny, obwody wielomianowe itp.). Jest to piękny i bardzo aktywny obszar badawczy, ale myślę, że większość ludzi zgodzi się, że badane przez niego obiekty nie są naprawdę przypadkowe, wystarczy, że wyglądają po prostu losowo (stąd termin „pseudo”).
W teorii obliczeń pojawił się konsensus, który powinien być dobrym pojęciem „prawdziwej przypadkowości”, i faktycznie to właśnie dominowało pojęcie losowości Martina-Löfa (inne zostały zaproponowane i są interesujące do zbadania, ale nie ujawniają wszystkich ładne właściwości przypadkowości Martina-Löfa). Aby uprościć sprawy, rozważymy losowość nieskończonych sekwencji binarnych (inne obiekty, takie jak funkcje od ciągów do ciągów, można łatwo zakodować za pomocą takiej sekwencji).
Nieskończona sekwencja binarna jest losowa Martin-Löf, jeśli żaden proces obliczeniowy (nawet jeśli pozwalamy na obliczenie tego procesu w potrójnym czasie wykładniczym lub wyższym) nie może wykryć błędu losowości.α
(1) Co rozumiemy przez „wadę losowości”? Ta część jest prosta: jest to zbiór miary 0, czyli właściwość, że niemal wszystkie sekwencje nie mają (tutaj mówimy o miary Lebesgue'a czyli środka, gdzie każdy bit ma prawdopodobieństwa być 0 niezależnie od wszystkich innych bitów). Przykładem takiej wady jest „posiadanie asymptotycznie 1/3 zer i 2/3 jedynek”, co narusza prawo wielkich liczb. Innym przykładem jest „na każde n pierwsze 2n bitów α są idealnie rozłożone (tyle zer, ile zer)”. W tym przypadku prawo wielkich liczb jest usatysfakcjonowane, ale nie centralne twierdzenie graniczne. Itd itd.1 / 20α
(2) W jaki sposób obliczalny proces może sprawdzić, czy sekwencja nie należy do określonego zestawu miary 0? Innymi słowy, jakie zestawy miary 0 można opisać obliczalnie? Właśnie o to chodzi w testach Martina-Löfa. Test Martin-Löf obliczeniowy jest procedura, która, ze względu an k computably wejściowego, (czyli przez maszynę z wejściem Turingowi ) generuje sekwencję łańcuchów w k , 0 , w k , 1 , ... taki sposób, że zestaw u K nieskończonych sekwencji począwszy od jednego z tych, w k , i ma środki najwyżej 2 - kkwk , 0wk , 1Ukwk , ja2)- k(jeśli lubisz topologię, zwróć uwagę, że jest to otwarty zestaw w topologii produktu dla zestawu nieskończonych sekwencji binarnych). Następnie zestaw ma miarę 0 i jest nazywany zerowym Martin-Löf . Możemy teraz zdefiniować losowość Martina-Löfa, mówiąc, że nieskończona sekwencja binarna α jest losowa Martina-Löfa, jeśli nie należy do żadnego zerowego zestawu Martina-Löfa . G = ⋂kUk0α
Ta definicja może wydawać się techniczna, ale jest powszechnie akceptowana jako odpowiednia z kilku powodów:
- jest wystarczająco skuteczny, tzn. jego definicja obejmuje procesy obliczalne
- jest wystarczająco silny: każdą „prawie pewną” właściwość, którą można znaleźć w podręczniku teorii prawdopodobieństwa (prawo dużych liczb, prawo iterowanego logarytmu itp.), można przetestować za pomocą testu Martina-Löfa (chociaż czasem trudno to udowodnić)
- zostało niezależnie zaproponowane przez kilka osób posługujących się różnymi definicjami (w szczególności definicją Levina-Chaitina stosującą złożoność Kołmogorowa); a fakt, że wszystkie prowadzą do tej samej koncepcji, jest wskazówką, że powinno to być właściwe pojęcie (trochę podobne do pojęcia funkcji obliczalnej, którą można zdefiniować za pomocą maszyn Turinga, funkcji rekurencyjnych, rachunku lambda itp.)
- matematyczna teoria jest bardzo ładna! zobacz trzech doskonałych książek wstępem do Złożoność Kołmogorowa i jej zastosowań (Li i Vitanyi) Algorithmic przypadkowości i złożoności (Downey i Hirschfeldt) obliczalności i FORUMOWA (Nies).
Jak wygląda losowa sekwencja Martina-Löfa? Weź doskonale wyważoną monetę i zacznij ją rzucać. Przy każdym przerzuceniu napisz 0 dla głów i 1 dla ogonów. Kontynuuj do końca czasu. Tak wygląda sekwencja Martina-Löfa :-)
Wracając do początkowego pytania: czy istnieje obliczalny sposób na wygenerowanie losowej sekwencji Martina-Löfa? Intuicyjnie odpowiedź powinna brzmieć NIE , ponieważ jeśli możemy użyć obliczalnego procesu do wygenerowania sekwencji , to z pewnością możemy użyć obliczalnego procesu do opisania singletonu { α }, więc α nie jest losowy. Formalnie odbywa się to w następujący sposób. Załóżmy, że sekwencja α jest obliczalna. Rozważmy następujący test Martin-LOF: dla wszystkich k , tylko wyjście przedrostek k od alfa o długości k , i nic więcej. Ma to co najwyżej (a właściwie dokładnie) 2 - kααααkzakαk2)- k, a przecięcie zbiorów jak w definicji wynosi dokładnie { α }. CO BYŁO DO OKAZANIA!!Ukα
W rzeczywistości losowa sekwencja Martina-Löfa jest nieporównywalna w znacznie silniejszym sensie: jeśli jakieś obliczenie wyroczni z wyrocznią β (która sama jest nieskończoną sekwencją binarną) może obliczyć α , to dla wszystkich n , n - O ( 1 ) bitów β są potrzebne do obliczenia pierwszych n bitów α (w rzeczywistości jest to charakterystyka losowości Martina-Löfa, która niestety jest rzadko podawana, jak ma to miejsce w literaturze).αβαnn - O ( 1 )βnα
Ok, teraz część „edytująca” pytania Józefa: Czy jest tak, że TM z dostępem do czystego źródła losowości (wyrocznia?) Może obliczyć funkcję, której nie potrafi klasyczna TM?
Z punktu widzenia obliczalności odpowiedź brzmi „tak i nie”. Jeśli otrzymasz dostęp do losowego źródła jako wyrocznia (gdzie wynik jest przedstawiany jako nieskończona sekwencja binarna), z prawdopodobieństwem 1 otrzymasz losową wyrocznię Martin-Löf, a jak widzieliśmy wcześniej, przypadek Martin-Löf oznacza brak obliczalny, więc wystarczy wyprowadzić samą wyrocznię! Lub jeśli chcesz funkcji , możesz wziąć pod uwagę funkcję f, która dla wszystkich n mówi, ile zer jest wśród pierwszych n bitów twojej wyroczni. Jeśli wyrocznia jest losowa Martin-Löf, tej funkcji nie da się obliczyć.fa: N → Nfann
Ale oczywiście można argumentować, że jest to oszustwo: w rzeczywistości dla innej wyroczni możemy uzyskać inną funkcję, więc istnieje problem braku powtarzalności. Stąd innym sposobem na zrozumienie twojego pytania jest: czy istnieje funkcja której nie można obliczyć, ale którą można „obliczyć z prawdopodobieństwem dodatnim”, w tym sensie, że istnieje maszyna Turinga z dostępem do losowej wyroczni, która: z prawdopodobieństwem dodatnim (nad wyrocznią) oblicza f . Odpowiedź brzmi „nie” z powodu twierdzenia Sacksa, którego dowód jest dość prosty. Właściwie odpowiedział na to głównie Robin Kothari: jeśli prawdopodobieństwo poprawności TM jest większe niż 1/2, wówczas można szukać wszystkich n we wszystkich możliwych obliczeniach Oracle z wejściem nfafanni znajdź wyniki, które otrzymają „większość głosów”, tj. które są wytwarzane przez zbiór wyroczni miar większych niż 1/2 (można to zrobić skutecznie). Argument rozciąga się nawet na mniejsze prawdopodobieństwa: załóżmy, że wyjścia TM mają prawdopodobieństwo ϵ > 0 . Według twierdzenia o gęstości Lebesgue'a istnieje łańcuch skończony σ, taki że jeśli poprawimy pierwsze bity wyroczni na dokładnie σ , a następnie uzyskamy losowo pozostałe bity, to obliczymy f z prawdopodobieństwem co najmniej 0,99. Przyjmując takie σ , możemy ponownie zastosować powyższy argument.faϵ > 0σσfaσ