Он вроде бы принадлежит

- при проверке мы можем просто применить сами провести всю конструкцию с диагонализацией и проверить, что она выдаст ровно

.
Да, точно.
И еще раз выпишите - в каких из языков

мы даем число в бинарном виде, а в каких в унарном? (и я тогда запишу их определения сюда
)
Вообще-то и в бинарном (типа десятичного?

- заглавная) и в унарном (по размеру строки?

- прописная) надо бы оставить в языке

- иначе не понятно, как быстро отличить слова из

от слов из

- и чем является

-прописная - "мусором", который не используется при вычислении или чем-то содержательным. Да я бы везде (то есть, и в

тоже) оставил число в бинарном виде. А соответствующее ему "унарное" при корректном слове будет

.
Почему я бы оставил

везде - потому что унарное

является в семантическом отношении вспомогательным и обслуживающим формализм, а не смысл проблемы:
Зависимость размера сертификата (доказательства в разбираемом случае) именно от размера слова является условностью, которая (так сложилось) стала частью формализма класса

. И для соответствия этой условности добавляется аналог

-заглавной, который выражает то же самое, что

-заглавная, но - своим размером (

-прописная).
Но дело вообще-то не в размере слова и полиномиальности времени проверки относительно размера слова. Дело лишь в вопросе о возможности узнать, принадлежит ли слово

языку

, притом узнать за время (количество шагов) в полиномиальных пределах относительно предельно допустимого размера доказательства (сертификата). Но раз уж принят формализм, опирающийся на размер слова (а не сертификатов), то и мы будем опираться на размер слова. Поэтому кроме части

-заглавная наше слово содержит и его примитивный аналог

-прописная. Но благодаря

-заглавному мы сразу знаем предельное ограничение на размер доказательства, не проходя всю длину значения

-прописная.
То есть "на всякий случай" я бы оставил везде

-заглавная. Может, это и избыточно, но вроде, категоричности от нас никто не просит. С практической стороны, кстати, в языках программирования ситуация аналогична - в памяти, которая соответствует строке, хранится не только строка, как последовательность символов, но и отдельно от неё ещё и размер строки в бинарном виде. И время на вычисление размера строки - это время на получение этого готового числа, а не время перебора всех её символов.