≠∧∨¬n 1,9mod6вентили, которые не могут решить SAT (с точки зрения непрофессионала, возможно, что существует параллельный алгоритм с постоянным временем с полиномиальным числом процессоров, который решает SAT, и каждый процесс вычисляет только один из этих вентилей). Лучшие нижние оценки, которые мы имеем для машин Тьюринга, решающих SAT, не могут даже показать, что не существует алгоритма, чье время работы, умноженное на используемое им пространство, равно . Я могу немного рассказать о довольно смущающем состоянии доказательства нижних границ (но имейте в виду, что у нас также есть барьерные результаты, которые объясняют, почему так трудно доказать нижние границы). Некоторые эксперты считают, что программа GCT Кетана Малмулей является наиболее вероятным решением проблемы P vs. NP, и сам Малмулей повторил, что, по его мнению, для достижения этой цели, вероятно, потребуется более ста лет.n1.9
Однако, некоторые недавние работы Райана Уильямса и других показали, что между доказательством нижних границ и алгоритмами поиска существуют внутренние связи. Например, он показал, что алгоритм немного лучше, чем алгоритм грубой силы для конкретной ограниченной задачи SAT, предполагает нижние границы схемы, а затем он разработал такой алгоритм. Поэтому я думаю, что люди немного менее пессимистичны и, похоже, не разрабатывают алгоритм и не доказывают, что нижние границы являются отдельными, как люди привыкли думать, что они есть.
Теперь давайте вернемся к вопросу и попытаемся взглянуть на него более религиозно. Чтобы ответить на вопрос, нам нужно формализовать то, что мы подразумеваем под трудностью доказательства утверждения. Для этого мы можем использовать теорию доказательств и сложность доказательств, которая точно рассматривает различные способы определения сложности доказательства. Итак, позвольте мне дать краткое объяснение того, что такое сложность доказательства. Система доказательств - это по существу алгоритм верификатора для доказательств. Мы даем строку и строку и спрашиваем, является ли доказательствомφ π φπφπφи алгоритм возвращает да или нет. Таким образом, вы можете думать о любой проверке корректности. Вы также можете думать о доказательствах в математической системе, такой как ZFC, как таковой. Сам процесс проверки может быть выполнен за полиномиальное время в размере доказательства, потому что это синтаксическая задача.
Теперь рассмотрим формулу . Что значит для быть трудно доказать? Одна возможность состоит в том, что самое короткое доказательство очень большое. Если он слишком велик, скажем, число битов, необходимых для его представления, больше тогда мы даже не сможем сформулировать доказательство. Вторая возможность состоит в том, что доказательство не слишком велико, но его трудно найти. Позвольте мне объяснить это немного: подумайте об алгоритме поиска доказательства. Большинство правил являются детерминированными в такой системе, как LKφ φ 2 65536φφφ265536в том смысле, что вы можете определить предыдущие строки из текущей строки в доказательстве и правиле. Важным исключением является правило обрезки. Это важно, потому что, хотя нам не нужно правило сокращения для доказательства утверждений, оно может значительно уменьшить размер кратчайшего доказательства. Однако правило разреза не является детерминированным: мы должны угадать формулу разреза. Вы можете думать о срезанном правиле как о проверке лемм и их использовании. Формула разреза похожа на лемму. Но какую лемму мы должны доказать, что она нам поможет? Это сложная часть. Зачастую результат подтверждается в математике путем нахождения хорошей леммы. Также, когда вы используете ранее проверенные результаты, вы, по сути, используете правило сокращения. Другим важным компонентом в доказательстве утверждений являются определения. Часто мы определяем новую концепцию, а затем доказываем утверждения об этом, и, наконец, применить его в нашем конкретном случае. Использование определений уменьшает размер формул (попробуйте расширить некоторые математические формулы до чисто теоретического языка множеств, расширив определения, чтобы получить представление о том, насколько важны определения). Опять же, какие новые определения мы должны использовать? Мы не знаем Это подводит меня к третьему смыслу утверждения, которое трудно доказать. Утверждение может быть трудно доказать, потому что вам нужны сильные аксиомы. Взять например Утверждение может быть трудно доказать, потому что вам нужны сильные аксиомы. Взять например Утверждение может быть трудно доказать, потому что вам нужны сильные аксиомы. Взять напримерСН . Это не может быть доказано в ZFC и не может быть опровергнуто в ZFC. Это крайний случай, но это случается чаще, чем вы думаете. Например, нужны ли нам большие кардинальные аксиомы (чтобы иметь возможность работать во вселенных Гротендика ), чтобы доказать FLT, или мы можем доказать это в гораздо более слабой теории, такой как PA ? Это еще одна концепция, касающаяся сложности доказывания утверждений.
Теперь давайте вернемся к P против NP. У нас нет результатов, которые утверждают, что проблема не может быть решена так или иначе в довольно слабых арифметических теориях. Александр Разборов в 1995 году написал статью под названием «Недоказуемость нижних границ размера контура в некоторых фрагментах ограниченной арифметики», в которой показано, что доказать это невозможно в некоторой слабой теории, но теория действительно очень слабая. Насколько мне известно, не было большого прогресса в распространении этого на значительно более сильные теории, такие как ограниченные арифметические теории Сэма Бусса, и даже если результат распространяется на них, они все еще далеки от чего-то вроде PA или ZFC. Короче говоря, мы не только не можем доказать, что SAT не находится в классах очень маленькой сложности, мы не можем даже доказать, что не можем доказать P≠ ≠ ≠≠НП в очень слабых теориях. Формальная причина, по которой мы имеем в виду, почему трудно доказать P NP, - это барьерные результаты, утверждающие, что такие и такие методы сами по себе не могут доказать, что P NP. Это хорошие результаты, но они даже не исключают возможности объединения этих техник для показа P NP.≠≠≠