Próbuję wymyślić dowód na następujące kwestie:
Dla każdego języka istnieje język , tak że a B .
Myślałem o pozwoleniu być , ale zdaję sobie sprawę, że nie wszystkie języki Turing można zredukować do , więc nie wytrzyma. Jaki mam inny wybór , który pozwoliłby mi napisać TM, która użyłaby wyroczni, aby zdecydował się na ?
Dzięki!
computability
reductions
undecidability
użytkownik1354784
źródło
źródło
Odpowiedzi:
Niech , skok Turing od . Jest to podstawowy wynik w teorii stopni Turinga.B=A′ A
źródło
Przed zanurzeniem się w dobrą odpowiedź - mianowicie, że możemy relatywizować problem zatrzymania, aby przypisać każdemu językowi język taki, że (między innymi) - warto zobaczyć głupią odpowiedź:X X′ X<TX′
Cantor pokazał, że istnieje niezliczona ilość języków.
Ale każdy konkretny język może obliczyć tylko policzalnie wiele języków: pojedyncza maszyna Turinga może przynieść tylko jedną redukcję z danego języka , a istnieje tylko policzalnie wiele maszyn Turinga.A A
Tak więc wiemy, nie wykonując żadnej poważnej pracy, że:
Teraz łączymy to z Turinga join : podane języki , łączenia składa się z „przeplatania” i . Istnieją różne sposoby jego zdefiniowania - np. Myśląc o i jako zbiorach naturali, zwykle pozwalamy - ale ważną cechą jest to, że (i tak naprawdę to ich -najmniejsza górna granica) .X,Y X⊕Y X Y X Y X⊕Y={2i:i∈X}∪{2i+1:i∈Y} X⊕Y≥TX,Y ≤T
Możemy więc zastosować powyższe, aby uzyskać:
Rodzi to następnie pytanie o nie-głupi dowód, a mianowicie naturalny sposób na stworzenie języka znacznie bardziej skomplikowanego niż dany, i do tego właśnie służy skok Turinga; ale warto zrozumieć ten niekonstruktywny argument sam w sobie.
źródło