Вот возможная альтернатива дополнительному аргументу, основанному на обобщении теоремы Леднера Шёнингом. Чтобы понять аргумент, вам нужен доступ к этому документу (который, к сожалению, для многих будет за стеной оплаты):
Уве Шенинг Единый подход для получения диагональных множеств в классах сложности. Теоретическая информатика 18 (1): 95-103, 1982.
Мы применим основную теорему из этой статьи для языков и являющихся языками, а и - классов сложности следующим образом:A 2 C 1 C 2A1A2C1C2
- PA1=∅ (или любой язык в )P
- A2=SAT
- C1=NPC
- C2=NP∩P/poly
Для ясности мы докажем тот факт, что подразумевает .Н Р Я ⊈ Р / р ö л уNP⊈P/polyNPI⊈P/poly
В предположении, что у нас есть и . Ясно, что и замкнуты при конечных вариациях. Статья Шенинга включает доказательство того, что является рекурсивно презентабельным (точное определение которого можно найти в статье), и самая сложная часть аргумента состоит в том, чтобы доказать, что рекурсивно презентабельно.1 ∉ С 1 2 ∉ С 2 С 1 С 2 С 1 С 2NP⊈P/polyA1∉C1A2∉C2C1C2C1C2
При этих предположениях из теоремы следует, что существует язык , которого нет ни в ни в ; и учитывая, что , он считает, что сводится по к , и, следовательно, . Учитывая, что находится в но не является ни -полным, ни , из этого следует, что .C 1 C 2 A 1 ∈ P A A 2 A ∈AC1C2A1∈PAA2Н Р Н Р Н Р ∩ Р / р о л у Н Р Я ⊈ Р / р о л уA∈NPANPNPNP∩P/polyNPI⊈P/poly
Осталось доказать, что рекурсивно презентабельно. В основном это означает, что существует явное описание последовательности детерминированных машин Тьюринга которые все останавливаются на всех входах и таковы, что . Если в моем аргументе есть ошибка, это, вероятно, здесь, и если вам действительно нужно использовать этот результат, вы захотите сделать это осторожно. Во всяком случае, путем согласования всех недетерминированных машин Тьюринга за полиномиальное время (которые могут быть смоделированы детерминистически, потому что мы не заботимся о времени работы каждогоM 1 , M 2 , …NP∩P/polyM1,M2,…M k M k M kNP∩P/poly={L(Mk):k=1,2,…}Mkи все полиномы, представляющие верхние границы размера семейства булевых цепей для данного языка, я считаю, что нетрудно получить перечисление, которое работает. По сути, каждый может проверять, соответствует ли его соответствующий NTM за полиномиальное время некоторому семейству схем полиномиального размера вплоть до длины входной строки, которую он задает путем поиска по всем возможным логическим схемам. Если есть соглашение, выводит как NTM, в противном случае он отклоняет (и в результате представляет конечный язык).MkMk
Основная интуиция, лежащая в основе аргумента (который скрыт внутри результата Шенинга), состоит в том, что у вас никогда не может быть двух «хороших» классов сложности (то есть классов с рекурсивными представлениями), которые не пересекаются друг с другом. «Топология» сложных классов не позволит этого: вы всегда можете правильно построить язык между двумя классами, каким-то образом чередуя их для очень длинных отрезков входных длин. Теорема Ладнера показывает это для и , а обобщение Шенинга позволяет вам сделать то же самое для многих других классов.N P CPNPC