Czy są jakieś dowody na nierozstrzygalność problemu zatrzymania, który nie zależy od samoreferencji lub diagonalizacji?


40

To pytanie jest z tym związane . Po wielu rozmowach po raz kolejny, w znacznie prostszej formie, wydawało się, że to zupełnie inne pytanie.

Klasyczny dowód nierozstrzygalności problemu zatrzymania zależy od wykazania sprzeczności przy próbie nałożenia na siebie hipotetycznego decydenta HALT. Myślę, że oznacza to po prostu niemożność posiadania decydenta HALT, który decyduje o tym, czy sam się zatrzyma, czy nie, ale nie podaje żadnych informacji poza tym o możliwości rozstrzygania jakichkolwiek innych przypadków.

Pytanie brzmi:

Czy istnieje dowód, że problem zatrzymania jest nierozstrzygalny, co nie zależy od wykazania, że ​​HALT nie może sam zdecydować, ani nie zależy od argumentu diagonalizacji?

Mała edycja: zobowiązuję się do pierwotnego sformułowania pytania, które wymaga dowodu, który w ogóle nie zależy od diagonalizacji (zamiast po prostu wymaganie, aby nie zależała od diagonalizacji zależnej od HALT).


Czy szukasz takiego, który nie zależy od argumentu diagonalizacji, czy tylko takiego, który nie diagonalizuje bezpośrednio przy użyciu HALT? Nie jestem pewien, czy dowód, który proponuje Bjørn, spełnia ten pierwszy.
Mark Reitblatt,

@Mark: W rzeczywistości nie jestem pewien. Jeśli argument diagonalizacji nie odpowiada samoreferencji, ale innym aspektom, takim jak niedopasowanie liczności, naprawdę mam nadzieję, że dałby pewien wgląd w to, dlaczego zakończenie HALT (Q) (gdzie Q! = HALT) jest nierozstrzygalne .
M. Alaggan,

1
W takim razie mogę podać prostszy argument. Zacznij od spostrzeżenia, że ​​występują problemy nierozstrzygalne (prosty argument liczności), a ponadto, że istnieje problem nierozstrzygalny P, który ma TM M, który rozpoznaje jego członków (ale może nie kończyć się na nie-członkach). Teraz rozwiązywanie HALT (M) daje ci decyzję o P. Najpierw sprawdzamy, czy M zatrzymuje się na x. Jeśli tak, uruchamiamy go i zwracamy tak samo jak M. W przeciwnym razie odrzucamy, ponieważ M zatrzymuje się na każdym elemencie P. To jest teraz sprzeczność, ponieważ przyjęliśmy, że P jest językiem bez decydującego.
Mark Reitblatt,

Ten argument jest w rzeczywistości dowodem na to, że HALT jest RE-zupełny.
Mark Reitblatt,

1
Mam cię. Jeśli wszystkie bazy TM były decydujące, HALT jest trywialny. Jeśli zatrzymanie nie jest trywialne (istnieją rozpoznające), to (poprzez przeciwwskazanie) istnienie nietrywialnego HALT powoduje, że rozpoznające TM decydują, co oznacza, że ​​HALT jest trywialny, sprzeczny. Taki HALT nie może istnieć dla wszystkich urządzeń rozpoznających. To jest wspaniałe, dziękuję za wspaniały komentarz; możesz ponownie
wysłać

Odpowiedzi:


31

Tak, istnieją takie dowody w teorii obliczalności (aka teoria rekurencji).

Możesz najpierw pokazać, że problem zatrzymania (zbiór ) może być użyty do obliczenia zbioru który jest 1-ogólny, co oznacza, że ​​w pewnym sensie każdy fakt o jest określony przez skończony przedrostek . Łatwo jest zatem udowodnić, że taki zestaw nie może być obliczalny (tj. Rozstrzygalny). G N Σ 0 1 G G G0GNΣ10GGG

Możemy zastąpić tutaj 1- generyczny 1-losowym, tj. Losowym Martin-Löf , dla tego samego efektu. Wykorzystuje to twierdzenie Jockusch-Soare Low Basis .

(Ostrzeżenie: można rozważyć tylko pokazanie, że oblicza Chaitina , która jest 1 losowa, ale tutaj musimy uważać, czy dowód, że jest 1 losowy, polega na nierozstrzygnięciu problemu zatrzymania! bezpieczniej jest po prostu użyć twierdzenia o niskiej podstawie).Ω Ω0ΩΩ


Bardzo interesujące! Czy możesz podać mi odniesienie lub zestaw słów kluczowych do wyszukiwania, aby móc je lepiej zrozumieć? Wielkie dzięki!
M. Alaggan,

6
@M. Alaggan: Najlepszym odniesieniem może być ostatnia książka André Nies, Computability and Randomness , Oxford Logic Guides, Oxford University Press, 2009. Istnieje również artykuł w Wikipedii na temat twierdzenia o niskiej podstawie oraz artykuł Scholarpedia o losowości algorytmicznej: scholarpedia.org / article /
Al

@M. Alaggan, to zależy od ciebie, ale głosy sugerują, że powinna to być zaakceptowana odpowiedź.
Mohammad Al-Turkistany

Zapytałem o meta (sprawdź meta.cstheory.stackexchange.com/questions/642/when-is-it-ap Odpowiednia-to-change-the-accepted-answer). Wiem, że ta odpowiedź jest rzeczywiście świetna i bardzo przydatna. Zaakceptowałem jednak drugą, ponieważ łatwiej było mi ją zrozumieć dzięki bardziej intuicyjnemu podejściu. Wydaje się jednak, że powyżej dyskutowano o jego poprawności (!). Więc jeśli okaże się to niepoprawne, rzeczywiście zmienię tę odpowiedź. Powstało ze mnie nieporozumienie w pierwotnym pytaniu, że chciałem uniknąć diagonalizacji za pomocą HALT, a nie wszystkich diagonalizacji.
M. Alaggan,

Do tej pory jestem bardzo zdezorientowany, na którą należy się zgodzić, ponieważ wybieram między wybitną świetną odpowiedzią a odpowiedzią łatwą / intuicyjną (moje pochodzenie nie jest zbyt solidne / dojrzałe). Więc proszę, nie odczuwaj ciężkich uczuć :) Możemy to przedyskutować i podjąć satysfakcjonującą decyzję dla wszystkich. Dzięki.
M. Alaggan,

5

Przesłane z mojego komentarza na żądanie:

Zacznij od spostrzeżenia, że ​​istnieją nierozstrzygalne problemy (prosty argument liczności), a ponadto, że istnieje nierozstrzygalny problem P, który ma TM M, który rozpoznaje jego członków (ale może nie kończyć się na nie-członkach). Teraz rozwiązywanie HALT (M) daje ci decyzję o P. Najpierw sprawdzamy, czy M zatrzymuje się na x. Jeśli tak, uruchamiamy go i zwracamy to samo co M. W przeciwnym razie odrzucamy, ponieważ M zatrzymuje się na każdym elemencie P. To jest teraz sprzeczność, ponieważ zakładamy, że P jest nierozstrzygalny.

Uwaga: Wyjaśnił, że szuka argumentu, który unikałby diagonalizacji za pomocą HALT bezpośrednio, a nie argumentu, który unikałby całkowicie diagonalizacji.

EDYCJA: Ten argument utknął. Czy możesz bezpośrednio pokazać, że RE - REC nie jest pusty, oprócz pokazania, że ​​HALT tam jest?


Argument policzalności wykorzystuje bardzo podobną (tylko nieco prostszą) diagonalizację niż standardowy dowód problemu zatrzymania. (To znaczy, aby pokazać, że liczebność języków jest większa niż w TM używa diagonalizacji.) :)
Joshua Grochow

@Joshua Przeczytaj komentarze. Zapytałem, czy szuka dowodu, który pozwoli uniknąć diagonalizacji, czy takiego, który właśnie uniknął diagonalizacji za pomocą HALT. On szuka tego drugiego.
Mark Reitblatt,

@Mark: Ach, tęskniłem za tym. Dzięki. +1
Joshua Grochow

4
@ Mark: Czy mógłbyś coś wyjaśnić? Zaczynasz od stwierdzenia, że ​​istnieje nierozstrzygalny problem P, który jest rozpoznawalny, a następnie zauważ, że gdyby HALT był rozstrzygalny, moglibyśmy skonstruować decydującego dla P. Jednak w tekstach, które przeczytałem, rzeczy są udowodnione w innej kolejności - nierozstrzygalność HALT służy do wykazania istnienia takich problemów P. Czy możesz wykazać istnienie nierozstrzygalnych, ale rozpoznawalnych problemów bez korzystania z nierozstrzygalności HALT?
Kurt

2
Fakt, że istnieje rozpoznawalny, ale nierozstrzygalny problem, być może najłatwiej udowodnić, pokazując problem zatrzymania, jest takim problemem, w którym to przypadku wracasz tam, gdzie zacząłeś. Istnieje tylko niezliczona ilość rozpoznawalnych języków.
Bjørn Kjos-Hanssen

2

Kolejny plakat nawiązywał do tego (odnosząc się do Chaitin), ale możesz użyć paradoksu Berry, aby udowodnić, że problem zatrzymania jest nierozstrzygalny. Oto krótki szkic dowodu:

Niech HALT będzie maszyną, która decyduje, czy jakakolwiek maszyna M zatrzyma się na wejściu I. Pokażemy, że sam HALT nie zatrzymuje się na określonym wejściu, co pokazuje, że nie jest w stanie zdecydować o języku.

Rozważ następującą funkcję f:

f (M, n) = a, gdzie a jest najmniejszą liczbą całkowitą dodatnią nieobliczalną przez maszynę M na żadnym wejściu I z | I | <n

Zakładając, że HALT jest funkcją obliczalną, f jest również funkcją obliczalną; po prostu symuluj HALT (M, I) dla każdej maszyny M i ciąg wejściowy I o długości I mniejszej niż n. Jeśli symulacja się zatrzyma, symuluj M (I) i zapisz, co to jest wyjście, i znajdź najmniejsze wyjście a, które nie jest wyprowadzane przez żadną z par M, n.

Teraz pokazujemy, że f nie jest obliczalny: rozważmy f (f, 10000000 * | f | +10000000). Cokolwiek wyprowadza, powinna być (dodatnią) liczbą całkowitą, która nie może być obliczona przez maszynę obliczającą f na wejściu I o długości mniejszej niż podana ... a jednak właśnie wyprowadziliśmy taką liczbę całkowitą zf i znacznie krótszym wkład.

Zatem f nie jest obliczalne, a zatem nasze założenie, że HALT był obliczalny, jest fałszywe. Nie wierzę, że ten dowód w jakikolwiek sposób korzysta z przekątnej.


Ten dowód jest nieważny. Whatever it outputs, it ought to be an integer that is not computable by the machine computing f on input I with length less than that given. Odwołanie do arytmetyki modułowej pokazuje, że jest to trywialnie nieprawdziwe. Błąd znajduje się na założeniu, że urządzenie musi być zdolne do reprezentowania wielkości numery w kolejności, aby móc wykonać arytmetyka na nich, gdy w rzeczywistości jest to możliwe do wykonania arytmetyczny modulo . n>nn
johne

5
Nie staram się być niegrzeczny, ale twój sprzeciw nie ma sensu. Funkcja f jest zdefiniowana jako funkcja, która generuje liczbę całkowitą, której M nie może obliczyć na żadnym wejściu o długości mniejszej niż n. Tak więc, bezsensowne odwołania do arytmetyki modułowej na bok, będziesz miał trudności z pokazaniem, że zdanie, które zaznaczyłeś, jest nieprawidłowe.
Philip White

@johne Zgadzam się z Filipem. Nie ma założeń dotyczących granic reprezentacji maszyny. To jest TM.
Mark Reitblatt,

@Philip Drobne poprawki techniczne: należy zmienić liczbę całkowitą na naturalną lub dodatnią.
Mark Reitblatt,

1
@Philip, na przekątnej na , to po prostu inny od klasycznego dowodufff
Mark Reitblatt

0

Nie jestem pewien, czy to się liczy, ale możesz to udowodnić za pomocą twierdzenia o rekurencji. Twierdzenie o rekurencji mówi, że jeśli jest skutecznym listowaniem wszystkich maszyn Turinga, a jest funkcją rekurencyjną, to jest takie , że na wszystkich wejściach. Jeśli mógłbyś zdecydować, czy dana maszyna zatrzymuje się na powiedzmy wejściu możesz napisać rekurencyjną która na wejściu wypisuje indeks maszyny Turinga, która zatrzymuje się na iff nie zatrzymuje się na . Przez twierdzenia rekursji istnieje tak, że = f e W e = W f ( e ) 0 f e 0 W e 0 e W e ( 0 ) W f ( e ) ( 0 ){We}e=1feWe=Wf(e)0fe0We0eWe(0)Wf(e)(0) co jest sprzecznością.


6
Jest to standardowy dowód przekątnej.
Yuval Filmus,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.