To było zabawne pytanie do przemyślenia. Jak opisano w drugiej odpowiedzi i komentarzach poniżej, występuje redukcja Turinga od problemu Haltinga do obliczania złożoności Kołmogorowa, ale w szczególności nie ma takiej redukcji wielu, przynajmniej dla jednej definicji „obliczania złożoności Kołmogorowa”.
Formalnie zdefiniujmy, o czym mówimy. PozwolićH.A L Toznacza standardowy język baz TM, który zatrzymuje się, gdy na wejściu zostanie podany ich opis. PozwolićK.O oznaczać { ⟨ X , k ⟩ | x ma Złożoność Kołmogorowa dokładnie k }.
Zakładać, że H.A L T≤ KOprzez pewną redukcję wielu. Pozwolićfa: { 0 , 1}∗→ { 0 , 1}∗oznacza funkcję obliczaną przez tę redukcję. Zastanów się nad obrazemH.A L T pod f, które oznaczę f(HALT).
Uwaga f(HALT) składa się z ciągów formularza ⟨x,k⟩ gdzie x ma dokładnie złożoność Kołmogorowa k. Twierdzę, żekktóre występują w f(HALT) są nieograniczone, ponieważ istnieje tylko skończona liczba ciągów o złożoności Kołmogorowa k, i f(HALT) jest nieskończony.
Od HALT jest rekurencyjnie wyliczalny (znany również jako Turing w niektórych książkach), z tego wynika f(HALT)jest rekurencyjnie wyliczalny. W połączeniu z faktem, żeksą nieograniczone, możemy wyliczyć f(HALT) dopóki nie znajdziemy ⟨x,k⟩ z ktak duże, jak chcemy; tzn. istnieje TMM to na wejściu k wyprowadza jakiś element ⟨x,k⟩∈f(HALT).
Napisz nową bazę TM M′ który wykonuje następujące czynności: po pierwsze, oblicz |M′|za pomocą twierdzenia o rekurencji Kleene'a. PytanieM z wejściem |M′|+1 dostać ⟨x,|M′|+1⟩∈f(HALT). Wynikx.
Wyraźnie wynik x z M′ jest łańcuchem o najwyżej złożoności Kołmogorowa |M′| ale ⟨x,|M′|+1⟩∈f(HALT) co jest sprzecznością.
Wierzę, że można również zastąpić problem „złożoności Kołmogorowa” k„z” co najmniej złożonością Kołmogorowa k„z niewielkimi zmianami.