Powiedzmy, że istnieją maszyny Turinga M1, M2, M3, języki, które uznają, odpowiednio, L (M1), L (M2) i L (M3). Następujący język L = {(M1, M2, M3): L (M1), L (M2) i L (M3) nie są równe} Czy język jest rozstrzygalny? Rekursywnie przeliczalne? Albo nie?Rozstrzygalność i rekursywna enumerability
Odpowiedz
Niech M M i, być maszyna, która symuluje uruchomiony jakiś inny maszynowy M i na wejściu I
i zwraca true
jeśli M i ostatecznie przystaje na I
i pętle zawsze inaczej.
Niech M ∞ będzie trywialną maszyną, która po prostu zapętla się na zawsze.
Następnie (M M i, że M ∞ M ∞) jest L IFF M ı postojów na wejściu I
.
Zmniejsza to rozstrzygalność problemu zatrzymania do rozstrzygalności L, a zatem L jest nierozstrzygalny.
=============
Następnie niech udowodnić, że L nie jest rekurencyjnie przeliczalny przez sprzeczności.
Załóżmy, że L jest rekurencyjnie przeliczalny, więc istnieje Maszyna Turinga M takie, że jeśli M i, M j i M k są trzy Maszyna Turinga, których odpowiednie języki nie są sobie równe, a następnie M będzie w końcu wypluł potrójny (M i, M j, M k).
Rozważmy teraz modyfikację M, zwaną M ', która jest definiowana przez przyjęcie M i dodanie wartości (M, M', M ') do L (M'). Ważne pytanie, które należy zadać, to czy (M, M ', M') znajduje się w L? Cóż, jeśli (M, M ', M') jest w L, to L (M) nie może być równe L (M ') (w przeciwnym razie nie pasowałoby do definicji L), więc L (M) nie może zawierać (M, M ', M') (ponieważ jest to jedyna modyfikacja, którą wprowadziliśmy). I odwrotnie, jeśli (M, M ', M') nie ma w L, to L (M)! = L (M ') (ponieważ dodaliśmy tę flankę do L (M')), więc musi ona być w L (M), ponieważ języki nie są równe.
Tak więc doszliśmy do paradoksu, który sugeruje, że M nie może istnieć, a zatem L nie jest rekurencyjnie przeliczalne.
Huh ... interesujące. Czy powiedziałbyś, że ten język L jest rekurencyjnie przeliczalny? –
Zaktualizowałem odpowiedź, aby odpowiedzieć na pytanie rekursywnie przeliczalne. To był naprawdę zabawny problem :) –
Twoje rozwiązanie jest bardzo interesujące, dużo się uczę o rekursywnej enumerability i decidability.Cieszę się, że dobrze się z tym bawiłeś. Mam jednak jedno pytanie, jeśli język nie jest RE, czy to automatycznie nie oznacza, że jest nierozstrzygalny? Czy może czegoś brakuje? –
- 1. rekursywna array_diff()?
- 2. Rekursywna replaceAll java
- 3. Inicjalizacja rekursywna hibernacji
- 4. ANN: Rekursywna backpropagacja
- 5. Manipulacja ciągiem lub funkcja rekursywna?
- 6. Czy rekursywna jest funkcja Block_copy?
- 7. Funkcja rekursywna ze zmienną statyczną
- 8. Rekursywna funkcja trwająca kilka lat do uruchomienia
- 9. Javascript - Funkcja rekursywna do iteracji poprzez elementy
- 10. funkcja rekursywna, aby uzyskać wszystkie kategorie podrzędne
- 11. Jak działa (co) definicja rekursywna w Haskell?
- 12. proste przykłady funkcji filtrowania, opcja rekursywna konkretnie
- 13. mysql rekursywna (drzewo) nadrzędna kategoria dziecka
- 14. Rekursywna iteracja nad obiektem w szablonie Jade?
- 15. Dlaczego funkcja nieskończenie rekursywna w PHP powoduje błąd segfault?
- 16. Konstrukcja bazy danych SQL, rekursywna relacja rodzic-dziecko?
- 17. funkcja rekursywna python, która drukuje od 0 do n?
- 18. Rekursywna -flattenMap: z Reaktywnym kakao + OctoKit (pobieranie dynamicznego wykresu obiektów z usługi WWW)
- 19. Metoda rekursywna działa w java z konsolą, ale nie z Androidem
- 20. Funkcja rekursywna, aby sprawdzić, czy wszystkie cyfry w zmiennej int są równe
- 21. Co to jest adnotacja Scala, aby upewnić się, że funkcja rekursywna ogona jest zoptymalizowana?
- 22. Rekursywna lista katalogów używająca Ruby z chińskimi znakami w nazwach plików
- 23. Jak skopiować i wkleić węzeł SVG przy użyciu jQuery
- 24. podzieli listę połączoną na dwie równe listy zawierające najmniejsze i największe liczby
- 25. Zapytanie rekursywne w ulu
- 26. Dlaczego Math.sqrt (i * i) .floor == i?
- 27. "İ" .toLowerCase()! = "I"
- 28. CSS "i" i "lub"
- 29. UILabel i numberOfLines i sizeToFit:
- 30. Jack i Jill i destinationDir
Może przenieść się do teoretycznej informatyki? Czy to zadanie domowe? –
Czy nie jest to problem "czy dwa równoważne automaty"? NP-trudne? –
Myślę, że problem równoważności maszyny Turinga mówi, że języki muszą być równe? W takim przypadku jest to nierozstrzygalne. W tym pytaniu języki nie są równe. –