На экзамене по мат. логике и теории алгоритмов задавались интересные вопросы... Приведу часть из них, постараюсь привести дословно.
1. Про машину Тьюринга. Путь есть алфавит

, есть множество состояний

.
Вопрос экзаменатора: «Сколько существует машин Тьюринга для данных множеств?» (слова «для данных множеств» могут быть неточными). Мой ответ был

, т.к. кол-во элементов матрицы состояний содержит

ячеек, а каждая ячейка матрицы может быть заполнена

способами (3 — кол-во возможных движений головки по ленте — влево, вправо, остаться на месте). В итоге матрицу можно заполнить

способами. Но экзаменатор сказал, что это неверно, правильный ответ
![$$ [3 (n + 1) (m + 1)]^{(n + 1)(m + 1)} $$ $$ [3 (n + 1) (m + 1)]^{(n + 1)(m + 1)} $$](https://dxdy-04.korotkov.co.uk/f/f/e/c/fecfbc216902bb6d05821afc00ab547882.png)
(вроде так). Как он получил такое число?.. Машина Тьюринга определяется только матрицей состояний, так?
2. Про теорему Яблонского, где говорится, что

представима в виде многочлена по модулю

тогда и только тогда, когда

— простое. Т.е. вопрос, связанный с k-значной логикой.
Вопрос экзаменатора: «А как определить представима ли функция в виде многочлена, если

не является простым?». А действительно — как?
3.
Вопрос экзаменатора: «Сколько существует биективных функций в k-значной логике?». Вопрос привожу со слов одногруппника. Я не понимаю самого вопроса: биекция между чем и чем?
4. Как найти, например,

, где

— класс афинных булевых функций, а

— класс монотонных булевых функций?
Буду благодарен за какие-то подсказки.