We wstępie i wyjaśnieniach klasy złożoności P i NP często podawane przez maszynę Turinga. Jednym z modeli obliczeń jest rachunek lambda. Rozumiem, że wszystkie modele obliczeń są równoważne (i jeśli możemy wprowadzić coś w kategoriach maszyny Turinga, możemy wprowadzić to w kategoriach dowolnego modelu obliczeń), ale nigdy nie widziałem wyjaśnienia klasy złożoności P i NP za pomocą rachunku lambda . Czy ktoś może wyjaśnić pojęcia klasy złożoności P i NP bez maszyny Turinga i tylko za pomocą rachunku lambda jako modelu obliczeniowego.
36
Odpowiedzi:
Maszyny Turinga iλ rachunek są równoważne tylko z funkcjami N → N które mogą zdefiniować.
Z punktu widzenia złożoności obliczeniowej zachowują się inaczej. Głównym powodem, dla którego ludzie używają maszyn Turinga, a nieλ rachunku w celu uzasadnienia złożoności, jest to, że naiwne użycie λ rachunku powoduje nierealistyczne miary złożoności, ponieważ można swobodnie kopiować terminy (o dowolnej wielkości) w pojedynczych krokach redukcji β , np. ( λ x . x x x ) M→ MM.M.. Innymi słowy, pojedyncze kroki redukcji w λ -kalkulus to kiepski model kosztów. Natomiast pojedyncze kroki redukcji maszyny Turinga działają świetnie (w sensie dobrego przewidywania czasu działania programu w świecie rzeczywistym).
Nie wiadomo, jak w pełni odzyskać konwencjonalną teorię złożoności opartą na maszynie Turinga wλ rachunku. W ostatnim (2014) przełomowym Accattoli i Dal Lago
udało się wykazać, że dużym klasom złożoności czasowej, takim jak P. , N.P. i miXP. można nadać naturalny preparat λ rachunek różniczkowy. Ale mniejsze klasy, takie jak O ( n2)) lub O ( nl o gn ) nie można przedstawić za pomocą technik Accattoli / Dal Lago.
Jak odzyskać konwencjonalną złożoność przestrzeni za pomocąλ rachunek jest nieznany.
źródło
Wklejam część odpowiedzi, którą napisałem na inne pytanie :
Istnieją charakterystyki (przynajmniej) za pomocą λ- rachunku.FP λ
źródło
Nie wiem, czy to (częściowo) odpowiada na twoje pytanie, ale rzeczywiście istnieją alternatywne charakterystyki klas złożoności (zwłaszczaP. i N P. ) pod względem logiki (logika pierwszego rzędu, logika drugiego rzędu itp.).
Na przykład praca z R. Fagina (et al.) W tym obszarze jest znaczący (i imo może zapewnić wgląd związane zP. vs N P. emisji i stosunków z opisowy i algorytmicznej złożoności)
Niektóre dalsze charakterystyki klas złożoności obliczeniowej pod względem złożoności algorytmicznej (Kolmogorov-Solomonov) można znaleźć (na przykład) tutaj i tutaj .
źródło