Czy komputer może symulować się jako część symulowanego świata?

17

Załóżmy, że budujesz komputer, który będzie obliczał stan wszystkich atomów we Wszechświecie w pewnym momencie w przyszłości. Ponieważ Wszechświat jest z definicji wszystkim, co istnieje (i wszystkim, co wchodzi w interakcję z resztą), obejmuje także komputer, który budujesz. Czy potrafisz obliczyć stan wszystkich atomów we Wszechświecie za pomocą komputera, w tym atomów samego komputera?

Jeśli taki komputer nie jest możliwy z innego teoretycznego lub praktycznego powodu, to co to jest?

mojuba
źródło
2
być może nie odpowiedź na twoje pytanie, ale coś w duchu twojego pytania, to rozważania Scotta na temat kosmologii i złożoności. scottaaronson.com/democritus/lec20.html
gabgoh
8
Istnieje kilka powodów, dla których taki komputer nie mógłby istnieć we wszechświecie fizycznym: zasada nieoznaczoności Heisenberga ogranicza precyzję pomiaru, więc komputer musiałby koniecznie zastosować przybliżenie. Drugi problem polega na tym, że symulacja wymaga narzutu. Ale ponieważ symulujesz wszechświat, nie masz miejsca na koszty ogólne. W rzeczywistości potrzebujesz ujemnego narzutu! Trzecim i być może najprostszym zarzutem jest to, że Twój komputer podlega diagonalizacji: po prostu sprawdzam, co według mnie zrobię za 10 sekund i zrobię coś innego.
Mark Reitblatt
1
Wydaje się, że powinien on przynajmniej naruszać teorię względności.
Mark Reitblatt,
5
@mojuba Nie, wolna wola nie jest obiekcją dźwiękową. To jest okrągłe rozumowanie. Zakładasz, że wszechświat jest przewidywalny przez twój komputer, dlatego nie mogę naruszyć prognoz twojego komputera.
Mark Reitblatt,
2
@mojuba być może jest to dobra okazja, aby przerwać czat CSTheory, zamiast grać w komentarz.
Mark Reitblatt,

Odpowiedzi:

23

Nie, komputer nie może idealnie symulować siebie oprócz czegoś innego bez naruszenia podstawowej teorii informacji : istnieją ciągi, które nie są ściśliwe.

Oto najprostszy możliwy dowód: załóżmy, że komputer ma w sumie możliwych stanów i załóżmy, że istnieje coś poza komputerem we wszechświecie, więc wszechświat ma co najmniej N + 1 możliwych różnych stanów. Przy zerowym obciążeniu każdy stan komputera może odpowiadać stanowi wszechświata, ale ponieważ wszechświat ma więcej stanów niż komputer, niektóre stany wszechświata zostaną odwzorowane na ten sam stan komputera, w którym to przypadku symulacja nie być w stanie ich rozróżnić.NN+1

Ian
źródło
1
Ian, czy nie możemy myśleć o samym wszechświecie jako o maszynie, która spełnia swoje zadanie?
Kaveh
@Kaveh: Nawet jeśli tak, to dlaczego taka symulacja powinna być interesująca?
M. Alaggan,
2
@Kaveh, zawsze możemy myśleć o komputerze lub systemie jako o „symulacji”, po prostu będąc sobą, ale mówię tylko, że nie może symulować siebie i czegoś innego .
Ian
@M. Alaggan: Cóż, możesz powiedzieć to samo o symulacji, która nie jest szybsza niż czekanie do tego momentu i obserwowanie wyniku? (spójrz na komentarze poniżej posta OP)
Kaveh
@Kaveh: Myślę, że staramy się unikać dyskusji o możliwości takiego komputera, argumentując, że byłby on bezużyteczny. Nie jestem pewien, do którego komentarza mnie odnosisz.
M. Alaggan,
8

Nie jestem pewien, czy to odpowiada na twoje pytanie, ale mam nadzieję, że może mieć sens i prowadzić do wglądu.

Załóżmy, że istnieje maszyna Turinga która może symulować każdy atom we wszechświecie, w tym siebie, a następnie koniecznie może symulować siebie.X

Teraz sprowadzenie tego do problemu zatrzymania jest banalne:

Niech weźmie maszynę Turinga M za swój sygnał wejściowy i zdecyduje, czy zatrzyma się, symulując wszechświat (ponieważ M jest zawarty we wszechświecie), a następnie zrobi coś przeciwnego (np. X zatrzyma się, jeśli M nie będzie, i zapętli się na zawsze, jeśli M się zatrzyma. ). Następnie X ( X )XMMXMMX(X) wykazuje sprzeczność.

Zasadniczo oznacza to, że najlepszy może zrobić, aby zdecydować, czy XXX przystankach czy nie jest po prostu uruchamiając się (czyli niech działa wszechświat swój sposób), więc symulowanie wszechświat nie daje przewagę.

To samo dotyczy sytuacji, gdy chcemy mieć stan wszechświata po czasie . Ponieważ X nie może zdecydować, czy zatrzyma się w czasie t, czy nie w czasie t (ten sam argument), pozwoli mu to zrobić we wszechświecie. Próba symulacji wszechświata, który to robi, nie może skrócić czasu na podjęcie decyzji. A jeśli decydując jak wszechświat będzie wyglądać w t czas trwa dłużej niż t wówczas symulacja będą się różnić (jak ttXttttt przechodzi w nieskończoność).

Prowadzi to do wniosku, że tylko przydatny symulator, który decyduje o tym, jak będzie wyglądał wszechświat w czasie musi zająć dokładnie czas t , tzn. Pozwalając wszechświatowi działać. Ten symulator jest więc naprawdę trywialnym symulatorem.tt

M. Alaggan
źródło
Maszyny Turinga nie są częścią świata fizycznego, są obiektami matematycznymi i nie muszą być fizycznie możliwe do zrealizowania.
Kaveh
Jest to nawet lepsze, ponieważ wtedy ich realizacja (komputery) ma więcej ograniczeń. Jeśli jednak po prostu przetłumaczysz pracę „Maszyna Turinga” w moim poście na „komputer”, myślę, że nadal będzie działać.
M. Alaggan,
Nie jestem pewien, dane wejściowe są bardziej ograniczone, możesz nie być w stanie podać danych, które chcesz.
Kaveh
@Kaveh: Czy możesz opracować więcej?
M. Alaggan,
2
-1: Ta odpowiedź jest po prostu błędna. Nawet jeśli komputer mógłby się symulować, nie wiedziałby, czy się zatrzyma, ponieważ aby to zrobić, musiałby symulować się przez nieskończony czas.
Peter Shor,
6

Myślę, że moglibyśmy spróbować potraktować to jako problem modelowania : w jaki sposób możemy ponownie sformułować pytanie, aby stało się ono informatyką, a nie fizyką? Spróbuję podać prosty, konkretny przykład tego, jak możemy to zrobić, aby wszystko zaczęło ...


Zastąpmy „wszechświat” czymś bardzo dyskretnym i prostym (i skończonym!). Powiedzmy, że nasz wszechświat jest skończonym automatem komórkowym. W szczególności cały świat jest n × nWn×n siatką .

Załóżmy, że początkowa konfiguracja świata jest dowolna. Teraz pytanie wydaje się być następujący: możemy wybrać ścisłego podzbioru C z W. ( „Komputer”) oraz początkowego stanu C , który spełnia następujące warunki:WCWC

  • Nie zmieniamy stan początkowy . (To znaczy, po prostu „budujemy nasz komputer C ”, bez ingerowania w świat poza nim).WCC

  • Następnie możemy uruchomić dowolną liczbę kroków automatu komórkowego (cały świat , w tym C i wszelkie interakcje między W C i C ).WCWCC

  • Możemy odczytać aktualny stan świata jedynie poprzez kontrolowanie C . (To znaczy, C musi być „symulacją” W.) Zauważ, że musimy być w stanie odczytać stan całej W , nie tylko W C. W pewnym sensie C musi być w stanie symulować zarówno swoje zewnętrzne, jak i wewnętrzne !)WCCWWWCC

Czy to jest wykonalne? Kuszące może być użycie argumentu liczącego (w jest więcej stanów niż w C ) i powiedzenie, że jest to niemożliwe. Ale niekoniecznie tak jest!WC

Załóżmy, że nasz automat komórkowy jest totalistyczny . Następnie możemy po prostu pozwolić, aby była prawą połową naszej siatki W , i niech początkowa konfiguracja C będzie lustrzanym odbiciem W C , aby wszystko było symetryczne. Otóż ​​to.CWCWC

Uruchom automat i zobacz, co się stanie. Bieżący stan będzie zawsze równy stanowi C + jego odbicie lustrzane. Oznacza to, że jedynie kontrolę C wystarczy powiedzieć jaki jest stan całego W .WCCW

(Oczywiście tutaj komputer wchodzi w interakcje z i wpływa na przyszły stan W C. Ale to samo dzieje się również w świecie rzeczywistym.)WWC


Teraz może być interesujące sprawdzić, czy istnieje nietrywialna odpowiedź na to pytanie. Na przykład, które urzędy certyfikacji dopuszczają komputery o rozmiarze mniejszym niż połowa ?W

Jukka Suomela
źródło
Czy nie sądzisz, że ten sam argument symetrii sprawia, że ​​jakaś n-krotna symetria jest trywialna, a nie tylko połowa? Zakładasz również, że „obserwator” wie, że jest lustrem (funkcją) C , co jeśli funkcja różni się od funkcji lustra? Jest to związane ze złożonością Wszechświata Kołomogrowa i mocą obliczeniową obserwatora. W CC
M. Alaggan,
Jeśli początkowa konfiguracja jest lustrzanym odbiciem W C , to zastąpiłeś wewnętrzny stan C ! więc C się nie symulujeCWCCC
Deyaa,
@Deyaa: A kiedy zbudujesz i zaprogramujesz komputer fizyczny, z pewnością zmienisz stan świata w granicach komputera ...
Jukka Suomela,
Twierdziłbym, że nie jest to odpowiednia symulacja, ponieważ może symulować tylko niewielki podzbiór stanów wszechświata. Nawet jeśli wolno ci dokonywać dowolnych zmian we „prawdziwym” wszechświecie podczas ustawiania stanu komputera, nie powinieneś ograniczać się tylko do symulacji rzeczywistego stanu wszechświata.
Ian
Co to jest „CA”? Nie jestem też pewien co do totalistycznej natury wszechświata, ale splątanie kwantowe jest interesującą właściwością w tym sensie. Weźmy na przykład, że komputer jest wszystkim : przepowiada przyszłość w miarę upływu czasu. Czy może być mniej niż wszystko, abyśmy mieli część wszechświata poza komputerem? Tak, może to być wszystko minus splątane cząstki. Tak więc komputer już działa i wykonuje dobrą robotę.
Trylks,
3

Oto prosty (nieformalny) dowód. Powiedzmy, że jest rok 2115, a ja mam 100-letni komputer, który nazywam Mac, i superkomputer o nazwie Bóg. Bóg może łatwo symulować i przewidywać Maca, dopóki nie zrobię następujących rzeczy:

Najpierw dołączam kamerę internetową do komputera Mac i kieruję ją na ekran Boga. Następnie uruchamiam na komputerze Mac program, który w nieskończonej pętli przechowuje każdą liczbę wykrytą na ekranie Boga oraz generuje i wyświetla liczbę, która nie znajduje się na liście przechowywanych liczb. Na koniec proszę Boga, aby pokazał mi numer, który Mac pokaże za minutę. Bez względu na to, jaką liczbę pokazuje Bóg, Mac wyprodukuje i pokaże inną, więc Bóg nie będzie w stanie udzielić poprawnej odpowiedzi.

Jest to równoważne z faktem, że jeśli superkomputer przewiduje mnie, cokolwiek mi powie, że zrobię, będę mógł zrobić coś przeciwnego (jak w komentarzu Marka ). Odbywa się to również niezależnie od procesu, jaki superkomputer stosuje do przewidywania przyszłości (symulacja, podróż do przyszłości i powrót, proszenie o wyrocznię itp.).

Juan
źródło
Innymi słowy, Bóg wpływa na rzeczywistość podczas obliczania przyszłości, a zatem nie może obliczyć przyszłości. Z drugiej strony, jeśli całkowicie odizolujemy Boga od tego Wszechświata, nie będzie on w stanie odczytać stanu Wszechświata. Zgadzam się, to brzmi jak dowód.
mojuba,
@mojuba W rzeczywistości, jeśli Bóg byłby w pełni odizolowany i mógłby w jakiś sposób odczytać stan naszego wszechświata (na przykład, gdyby nasz wszechświat był symulacją działającą w umyśle Boga), mógł przewidzieć naszą przyszłość. Ale jeśli w jakiś sposób poinformuje nas o naszej przyszłości, przestanie to być dokładną prognozą, ponieważ my (lub program) możemy zrobić coś wręcz przeciwnego. I z tego samego powodu nie mógł przewidzieć własnego wszechświata, w tym siebie.
Juan
pytanie z symulowanym światem brzmi, czy można go uznać za całkowicie odizolowany, niezależny Wszechświat, czy nie. Maszyna symulacyjna utrzymuje stany wszystkich cząstek symulowanego świata i modeluje ich interakcje zgodnie z niektórymi prawami fizyki. Jeśli Bóg ingeruje w jakikolwiek sposób, oznaczałoby to, że prawa gdzieś zostaną złamane (ponieważ jeśli nie zostaną złamane, to nie będzie to ingerencja Boga). Przynajmniej ten rodzaj interferencji oznacza, że ​​symulowany Wszechświat nie jest izolowany, więc myślę, że pierwotne pytanie go nie dotyczy.
mojuba