2012-06-22 12 views
6

Studiowałem podstawową teorię maszyny turingowej jako licencjat. Nigdy nie widziałem żadnej wzmianki o czasowym machingowaniu. Przykład: maszyna turingowa, która zlicza liczbę sekund, które minęły od rozpoczęcia.Czy maszyna do obróbki ma pojęcie "czasu"?

Nowoczesne komputery mają oczywiście taką możliwość. Tak więc zdolność komputera jest nadzbiorem tego, co potrafi maszyna tnąca. Czy są jakieś artykuły/matematyka/dokumentacja na ten temat? A może mój argument jest błędny w pewnym momencie?

Odpowiedz

5

Maszyna Turinga nie zużywa czasu, ponieważ nie musi, jest to urządzenie czysto obliczeniowe, a obliczenia nie są pochodną czasu, ale czas jest pochodną obliczeń. Mimo to, jest to urządzenie mechaniczne, więc z tego powodu potrzeba czasu, aby podjąć kroki, aby maszyna mogła potencjalnie liczyć również ten czas, ale to wymagałoby użycia innej maszyny do wiercenia.

ps. To z powodu entropii czas wywodzi się z obliczeń. Możesz zresetować komputer w niedługim czasie - jest to w kierunku przeciwnym do entropii. Dlatego uruchamianie prawie zawsze trwa dłużej niż wyłączanie, szczególnie po odłączeniu zasilania.

+0

Hmm - to by znaczyło, że używasz dwóch maszyn tnących. Ale jeśli potrafisz to zrobić na dwóch maszynach, powinieneś być w stanie zrobić to za pomocą tylko jednego. –

+0

Cóż, pomyślałem, że do obliczenia tego czasu potrzebne będzie pewne odniesienie, a do tego może to być maszyna tnąca robiąc krok co sekundę bez żadnych warunków i aktualizując licznik. Druga maszyna nie może wykonać kroku co sekundę, ponieważ działa np. co 1/3s, więc nie może się zmierzyć. Właściwie to nawet nie powie, kiedy zawiesi się, więc druga maszyna będzie mierzyć czas i kiedy się zatrzyma. – Andrew

+0

ps. Głównym problemem związanym z maszynami do toczenia jest to, że używa koncepcji nieskończonej długości taśmy. Problem polega na tym, że to tylko teoria. Taki sam, jak zakładamy nieskończoną prędkość światła. W praktyce jest to tylko model koncepcyjny, który jest niepełny z praktycznego punktu widzenia. Więc jeśli taśma skończyłaby się na pierwszej, nie wydrukowałaby tego czasu, a to by się nie powiodło, podobnie jak w przypadku BSOD, a żeby mieć taką wartość, potrzebowałbyś innej maszyny. – Andrew

0

Czasami warto przeczytać informal definition albo, jeśli wolisz, na formal defintion co maszyna Turinga jest Wikipedia

Losowo googlowania Znalazłem również this, który wydaje się być obiecujący.

Krótko mówiąc, masz rację, komputery są wygodniejsze od niż od maszyn do toczenia, ale w zasadzie żadne urządzenie nie może kiedykolwiek rozwiązać czegoś, czego nie można rozwiązać za pomocą jednej lub więcej maszyn.

+1

... lub przez grupę maszyn tartacznych. – Andrew

+0

dziękuję, zredagowałem moją odpowiedź – marktani

1

Oczywiście maszyna Turinga może obliczyć czas.

Powiedzmy, że twoja maszyna Turinga robi krok na sekundę.

  1. Wpisz aktualny czas na taśmie maszyny Turinga (czyli ustawienie czas w BIOS lub pobierając je z internetu)

  2. Edit maszyna, więc to dodaje 1 secont do czasu na taśmie w każdym krok (czyli elektryczny „generator tick” na płycie głównej zwiększa liczbę w BIOS w każdym kleszcza)

teraz można umieścić tę maszynę Turinga na ścianie. Za każdym razem, gdy spojrzysz na taśmę, zobaczysz dokładny czas.

Pamiętaj jednak, że maszyna Turinga działa z alfabetem. Komputery pracują z alfabetem {0,1}. Maszyna Turinga (lub komputer) nie wie, czy te zera i te oznaczają litery, cyfry, zdjęcia lub filmy.

+0

W jaki sposób maszyna do toczenia wie dokładnie jedną sekundę? –

+0

Co masz na myśli przez "wiedzieć"? Lekko edytowałem swój komentarz. Komputer nie "niczego" zna. Ma tylko "stan" (dane) w swojej pamięci (taśmie). –

Powiązane problemy