Czytałem w Wikipedii i innych tekstach, które
Problem zatrzymania jest [...] rozstrzygalny dla automatów z ograniczeniami liniowymi (LBA) [i] deterministycznych maszyn ze skończoną pamięcią.
Ale wcześniej napisano, że problem zatrzymania jest problemem nierozstrzygalnym, a zatem TM nie może go rozwiązać! Ponieważ LBA są zdefiniowane jako rodzaj bazy TM, czy to samo nie powinno ich obowiązywać?
turing-machines
automata
undecidability
halting-problem
linear-bounded-automata
użytkownik5507
źródło
źródło
Odpowiedzi:
Problem zatrzymania można rozwiązać dla dowolnej maszyny Turinga, która wykorzystuje znaną ograniczoną ilość miejsca, poprzez uogólnienie argumentu podanego przez Yonatan N. Jeśli ilość miejsca to , wielkość alfabetu to , a liczba stanów to , to liczba możliwych konfiguracji jest . Jeśli maszyna zatrzymuje się, musi zatrzymać się w obrębie kroków , ponieważ w przeciwnym razie, zgodnie z zasadą szuflady, ma powtarzalną konfigurację i dlatego utknie w nieskończonej pętli. Dlatego, aby ustalić, czy maszyna się zatrzymuje, po prostu uruchamiamy ją dla kroków i sprawdzamy, czy zatrzymuje się w tym czasie.A Q Q S A S Q S A S Q S A SS A Q QSAS QSAS QSAS
źródło
Wydajesz się mieć problem z logiką.
Z faktu, że istnieją książki, których nie można przeczytać, nie można wnioskować, że nie można przeczytać żadnej książki.
Mówienie, że problem zatrzymania jest nierozstrzygalny dla Maszyn Turinga, oznacza tylko, że istnieją maszyny, dla których nie można ustalić, czy zatrzymają się, czy nie za pomocą jakiejś jednolitej procedury, która zawsze się zatrzyma.
Istnieją jednak maszyny Turinga, które zatrzymują się. Teraz weź podzbiór Maszyn Turinga, zwanych Ładnymi Maszynami Turinga (NTM), tak że zawiera on tylko Maszyny Turinga, które zatrzymują się tylko wtedy, gdy taśma zawiera parzystą liczbę symboli. Jeśli wiadomo, że maszyna M pochodzi z tego zestawu, możesz w prosty sposób zdecydować, czy M się zatrzyma: sprawdzasz, czy liczba symboli na taśmie jest parzysta (wymaga tylko dwóch palców).
Ale ta procedura nie będzie działać dla TM, które nie są w zestawie NTM. (szkoda!)
Problem zatrzymania jest więc rozstrzygalny dla NTM, ale ogólnie nie dla TM, mimo że zestaw NTM jest zawarty w zestawie TM.
Jest to w rzeczywistości krytyczne, a czasem zapomniane, przy interpretacji wyniku nierozstrzygalności.
Może się okazać, że można udowodnić, że ważna właściwość jest nierozstrzygalna dla bardzo dużej rodziny obiektów matematycznych lub obliczeniowych.
Nie oznacza to, że powinieneś przestać szukać rozwiązania, ale tylko, że nie znajdziesz takiego rozwiązania dla całej rodziny.
Następnie możesz zidentyfikować odpowiednie podrodziny, dla których rozwiązanie problemu jest nadal ważne, i spróbować dostarczyć algorytmy, aby zdecydować, czy właściwość dotyczy członków tej mniejszej rodziny.
Zazwyczaj zatrzymanie jest nierozstrzygalne w przypadku TM, ale jest rozstrzygalne, często bardzo prosto, w przypadku dużych i przydatnych rodzin automatów, które wszystkie mogą być postrzegane jako specjalne przypadki TM.
źródło
Krótko mówiąc, LBA ma skończoną liczbę konfiguracji, powiedzmy D. Dlatego możemy uruchomić kroki D i zakończyć wynik. Jeśli działa więcej niż kroki D, zgodnie z zasadą szuflady, możemy powiedzieć, że utknie w nieskończonej pętli.
źródło