Gdy projektuję algorytm dla nowego problemu, jeśli po pewnym czasie nie mogę znaleźć algorytmu wielomianowego czasu, mogę spróbować udowodnić, że jest to trudny NP. Jeśli mi się uda, wyjaśniłem, dlaczego nie mogłem znaleźć algorytmu czasu wielomianowego. Nie chodzi o to, że wiem na pewno, że P! = NP, to po prostu, że jest to najlepsze, co można zrobić przy obecnej wiedzy, i rzeczywiście istnieje konsensus, że P! = NP.
Podobnie powiedzmy, że znalazłem rozwiązanie czasu wielomianowego dla jakiegoś problemu, ale czas działania wynosi . Po wielu wysiłkach nie robię postępów w ulepszaniu tego. Zamiast tego mogę spróbować udowodnić, że jest to 3SUM-hard. Zazwyczaj jest to zadowalający stan rzeczy, nie z powodu mojego najwyższego przekonania, że 3SUM rzeczywiście wymaga czasu, ale ponieważ jest to obecny stan techniki, a wielu inteligentnych ludzi próbowało poprawić i zawiodło. Więc to nie moja wina, że to najlepsze, co mogę zrobić.Θ ( n 2 )
W takich przypadkach najlepszym, co możemy zrobić, jest wynik twardości zamiast rzeczywistej dolnej granicy, ponieważ nie mamy żadnych superliniowych dolnych granic dla maszyn Turinga dla problemów w NP.
Czy istnieje jednolity zestaw problemów, które można zastosować dla wszystkich wielomianowych czasów działania? Na przykład, jeśli chcę udowodnić, że jest mało prawdopodobne, że jakiś problem ma algorytm lepszy niż , to czy jest jakiś problem X, który mogę pokazać, że jest X-trudny i na tym zostawić?
Aktualizacja : To pytanie pierwotnie dotyczyło rodzin problemów. Ponieważ nie ma tak wielu rodzin problemów, a to pytanie otrzymało już doskonałe przykłady indywidualnych trudnych problemów, odsuwam pytanie do każdego problemu, który można zastosować do wyników twardości w czasie wielomianowym. Dodam również nagrodę za to pytanie, aby zachęcić do dalszych odpowiedzi.