Просто опубликовать небольшую детализацию ответа Джеффа.
Мы знаем, что существуют две функции / случаи, которые могут вычислить функцию f (n):
- Функция, которая всегда возвращает истину (для всех n существует n чисел подряд 0)
- Функция, которая будет возвращать истину, если n меньше целого числа N, где N определяется как максимальная длина последовательных 0, которые существуют в данном иррациональном числе (в противном случае она возвращает ложь).
Одна и только одна из этих функций может быть правильной. Мы не знаем, какой, но мы точно знаем, что ответ существует. Вычислительность требует наличия функции, которая может определить ответ за конечное количество шагов.
Количество шагов в случае 1 тривиально связано с просто возвращением 1.
В случае 2 количество шагов также конечно. Для каждого целого числа мы можем построить машину Тьюринга которая принимает, если
и иным образом отклоняет ее за конечное время. Так что незнание верхней границы не имеет значения. Для каждого существует машина Тьюринга, а именно , которая правильно вычисляет, является ли (мы не знаем, какие из них являются правильными, но это не имеет значения, существует один).NTN(n)n<NNNTN(n)n<N
Хотя может быть невозможно выбрать между этими двумя случаями (хотя один кажется более вероятным, чем другой), мы знаем, что именно один из них должен быть правильным.
В качестве примечания: наше решение предполагает, что, хотя мы не можем определить, какая функция будет вызывать правильное значение, суть вычислимости не зависит от конструктивности доказательства. Чистого Существования достаточно.