Zastrzeżenie: Wiem bardzo mało o teorii złożoności.
Przepraszam, ale tak naprawdę nie ma sposobu, aby zadać to pytanie bez (strasznie) zwięzłego:
Jakie powinny być morfizmy w „kategorii” maszyn Turinga?
Jest to oczywiście subiektywne i zależy od interpretacji teorii, więc odpowiedź na to pytanie powinna idealnie dać pewne dowody i uzasadnienie również na poparcie tej odpowiedzi.
Chciałbym podkreślić, że szukam kategorii maszyn Turinga, a nie na przykład języków formalnych . W szczególności uważam, że moje morfizmy powinny zawierać dokładniejsze informacje niż redukcje itp. (Choć nie jestem pewien).
Oczywiście, jeśli w literaturze jest już dobrze znana i używana kategoria, chciałbym wiedzieć, co to jest.
cc.complexity-theory
turing-machines
ct.category-theory
Saal Hardali
źródło
źródło
Odpowiedzi:
Saal Hardali wspomniał, że chce, aby kategoria maszyn Turinga wykonywała geometrię (lub przynajmniej teorię homotopii). Istnieje jednak wiele różnych sposobów osiągnięcia podobnych celów.
Istnieje bardzo silna analogia między obliczalnością a topologią. Intuicja jest taka, że zakończenie / nieterminacja jest jak przestrzeń Sierpińskiego, ponieważ zakończenie jest możliwe do zaobserwowania (tj. Otwarte), a nieterminacja nie jest (nie otwarta). Zobacz notatki z wykładu Martina Escardo Syntetyczna topologia typów danych i klasycznych przestrzeni, aby uzyskać umiarkowanie łagodne, ale wszechstronne wprowadzenie do tych pomysłów.
W obliczeniach współbieżnych i rozproszonych często warto pomyśleć o możliwych wykonaniach programu jako przestrzeni, a następnie różne ograniczenia synchronizacji można wyrazić jako homotopiczne właściwości przestrzeni. (Fakt, że egzekucja odbywa się w określonym czasie wydaje się wymagać bardziej ukierunkowanej teorii homotopii niż zwykłej teorii homotopii).
Zobacz artykuł Erica Goubaulta Niektóre geometryczne perspektywy dotyczące teorii współbieżności, aby uzyskać więcej szczegółów. Zobacz także artykuł Maurycego Herlihy i zdobywcy nagrody Nir Shavita Goedel, Topologiczna struktura asynchronicznego obliczania , w którym rozwiązano pewne długotrwałe otwarte problemy w teorii programowania rozproszonego.
Trzecia idea pochodzi od teorii typu homotopii, poprzez odkrycie, że teoria typu Martina-Löfa jest (prawdopodobnie?) Syntaktyczną prezentacją (w sensie generatorów i relacji) teorii omega-grupoidów - tj. Modeli abstrakcyjnych teoria homotopii. Najlepszym wprowadzeniem do tych pomysłów jest teoria homotopii .
Pamiętaj, że wszystkie te pomysły bardzo się od siebie różnią, ale wszystkie nadal używają intuicji geometrycznych! Są jeszcze inne, których nie znam, takie jak zastosowania w teorii złożoności geometrycznej oraz sposób, w jaki teorie obwodów można opisać w kategoriach (ko) homologii grafów .
Zasadniczo, gdy wykonujesz CS, geometria jest narzędziem - używasz go do sformalizowania intuicji, abyś mógł uzyskać efekt dzięki ogromnemu nakładowi pracy, który został na nim wykonany. Ale to wzmacniacz pomysłów, nie zastępujący pomysłów!
źródło
Jeśli twoje obiekty to maszyny Turinga, istnieje kilka rozsądnych możliwości morfizmów. Na przykład:
1) Rozważ maszyny Turinga jako automaty i rozważ zwykłe morfizmy automatów (mapy między alfabetami a stanami, które są ze sobą zgodne), które albo zachowują ruchy głowicy (głowic) taśmy, albo dokładnie odwracają się je (np. za każdym razem, gdy źródłowa TM idzie w lewo, docelowa TM idzie w prawo i odwrotnie).
2a) Rozważ symulacje lub bisimulacje .
3) Rozważ wykres przejścia maszyny Turinga (każdy wierzchołek to pełny opis stanu maszyny i taśm, z ukierunkowanymi krawędziami odpowiadającymi przejściom, które wykonałaby TM) i rozważ morfizmy wykresów. W przypadku baz TM jest to jednak bardzo gruba zależność, ponieważ zasadniczo ignoruje lokalny charakter obliczeń (ignoruje na przykład, jaka jest zawartość taśm).
Myślę, że prawdziwe pytanie brzmi: co chcesz wiedzieć o bazach TM lub co z nimi zrobić ? W przypadku braku tego trudno jest argumentować za jedną definicją nad drugą, poza naturą (w zwykłym znaczeniu tego słowa, a nie kategorycznym).
źródło
Mogą Cię zainteresować kategorie Turinga autorstwa Robina Cocketta i Pietera Hofstry. Z punktu widzenia teorii kategorii na pytanie „co to jest kategorii maszyny Turinga” jest mniej interesująca niż „co jest kategoryczny struktura, która stanowi podstawę obliczenia”. W ten sposób Robin i Pieter określają ogólny rodzaj kategorii, która jest odpowiednia do opracowania teorii obliczalności. Następnie istnieje kilka możliwości zdefiniowania takiej kategorii, zaczynając od maszyn Turinga. Po co mieć jedną kategorię, skoro można mieć całą kategorię?
źródło