NP - це клас проблем, в якому ви можете перевірити випадки "так". Не дається гарантія, що ви можете перевірити випадки "ні".
Клас задач, за допомогою яких можна перевірити випадки "ні" в поліноміальному часі, є co-NP . Будь-яка мова в ко-НП є доповненням якоїсь мови в НП , і навпаки. Приклади включають такі речі, як не-3-забарвлення. Проблема, яку ви описуєте, "Чи немає шляху TSP довжиною не більше ?" також в co-NP : якщо ви зніміть подвійне заперечення, "не" екземпляр цієї проблеми є "так", екземпляр TSP, і ми можемо перевірити їх у поліноміальний час.С
Існують деякі проблеми, такі як цілочисельна факторизація та будь-яка проблема в P , які ми знаємо як в NP, так і в co-NP . (Дякуємо користувачеві21820, що вказав на це.)
Невідомо, чи NP і co-NP - однаковий набір проблем. Якщо вони однакові, ми можемо перевірити як "так", так і "ні" випадки TSP. Якщо вони різні, то P≠NP , оскільки ми знаємо, що P=co-P (оскільки ми можемо просто заперечувати відповідь детермінованої машини, даючи відповідь на проблему доповнення).