Dlaczego P i P / poli nie są takie same?

10

Definicja P jest językiem, o którym decyduje algorytm wielomianowy. Definicja P / poly może być rozumiana jako język, który może być ustalony przez obwód wielkości wielomianowej (patrz http://pages.cs.wisc.edu/~jyc/02-810notes/lecture09.pdf ). Dlaczego więc nie można symulować obwodu wielomianowego w czasie wielomianowym?

dcw
źródło
4
P / poli potrafi obliczać nierozstrzygalne języki (ćwiczenie).
Yuval Filmus
Dzięki, ale co jest nie tak z moim argumentem - że obwód wielomianowy może być symulowany w czasie wielomianowym?
dcw
3
To jest źle. Obwody wielomianowe dla różnych długości wejściowych mogą być radykalnie różne, a zatem nie wszystkie mogą być opisane przez jedną maszynę Turinga.
Yuval Filmus
Dzięki, ale gdzie w definicji P mówi się, że jesteśmy ograniczeni do jednej maszyny Turinga? Wszystkie definicje, które widziałem, są jak w mathworld.wolfram.com/PolynomialTime.html
dcw
3
@dcw języka jest w P jeśli istnieje maszyna Turinga takie, że ...
David Richerby

Odpowiedzi:

19

Chodzi o to, że obwody mają stałą liczbę wejść. Oznacza to, że do zdefiniowania języka potrzebujemy rodziny obwodówC0,C1,C2, taki, że obwód Ci mówi ci, które ciągi długości i są w każdym języku i. Nie wymaga to żadnego związku między obwodamiCidoja+1: mogą być zupełnie inne. W szczególności dla każdego zestawu S.N., możesz ustawić deklaruj doja=trumi gdyby jaS. i doja=fazalsmi dla iS. Nawet jeśliS jest nierozstrzygalny!

Natomiast język jest w Pjeśli istnieje jedna maszyna Turinga, która powie ci, czy każde możliwe wprowadzenie każdej możliwej długości jest w języku. Teraz nie możesz grać w śmieszne gry o wejściach o różnej długości.

Masz rację, że możemy ocenić dowolny obwód stały P. Ale to niekoniecznie wystarcza do wyboru językaP/poly. Aby to zrobić, musielibyśmy najpierw obliczyć długość wejścia, a następnie użyć tego do ustalenia, który obwód Cimusimy ocenić, a następnie ocenić obwód. Jak pokazuje powyższy przykład, część „określ, który obwód” może nawet nie być obliczalna, a tym bardziej obliczalna w czasie wielomianowym.

David Richerby
źródło
1
Minęły lata, odkąd wszystko to przestudiowałem i (prawie) zapomniałem definicji P/poly, ale przeczytanie tej odpowiedzi przywróciło to wszystko: pamiętam to samo zamieszanie, kiedy po raz pierwszy spotkałem się z definicją i osiągnąłem tę samą rozdzielczość / zrozumienie. :-)
ShreevatsaR