Он вроде бы принадлежит
- при проверке мы можем просто применить сами провести всю конструкцию с диагонализацией и проверить, что она выдаст ровно
.
Да, точно.
И еще раз выпишите - в каких из языков
мы даем число в бинарном виде, а в каких в унарном? (и я тогда запишу их определения сюда
)
Вообще-то и в бинарном (типа десятичного?
- заглавная) и в унарном (по размеру строки?
- прописная) надо бы оставить в языке
- иначе не понятно, как быстро отличить слова из
от слов из
- и чем является
-прописная - "мусором", который не используется при вычислении или чем-то содержательным. Да я бы везде (то есть, и в
тоже) оставил число в бинарном виде. А соответствующее ему "унарное" при корректном слове будет
.
Почему я бы оставил
везде - потому что унарное
является в семантическом отношении вспомогательным и обслуживающим формализм, а не смысл проблемы:
Зависимость размера сертификата (доказательства в разбираемом случае) именно от размера слова является условностью, которая (так сложилось) стала частью формализма класса
. И для соответствия этой условности добавляется аналог
-заглавной, который выражает то же самое, что
-заглавная, но - своим размером (
-прописная).
Но дело вообще-то не в размере слова и полиномиальности времени проверки относительно размера слова. Дело лишь в вопросе о возможности узнать, принадлежит ли слово
языку
, притом узнать за время (количество шагов) в полиномиальных пределах относительно предельно допустимого размера доказательства (сертификата). Но раз уж принят формализм, опирающийся на размер слова (а не сертификатов), то и мы будем опираться на размер слова. Поэтому кроме части
-заглавная наше слово содержит и его примитивный аналог
-прописная. Но благодаря
-заглавному мы сразу знаем предельное ограничение на размер доказательства, не проходя всю длину значения
-прописная.
То есть "на всякий случай" я бы оставил везде
-заглавная. Может, это и избыточно, но вроде, категоричности от нас никто не просит. С практической стороны, кстати, в языках программирования ситуация аналогична - в памяти, которая соответствует строке, хранится не только строка, как последовательность символов, но и отдельно от неё ещё и размер строки в бинарном виде. И время на вычисление размера строки - это время на получение этого готового числа, а не время перебора всех её символов.