Допустим на некоторое время, что наш робот и в самом деле является, по существу, машиной Тьюринга
(хотя и с конечной емкостью запоминающего устройства). Строго говоря, учитывая, что робот непрерывно взаимодействует со своим окружением, а это окружение, как мы предполагаем, также допускает численное моделирование, было бы правильнее принять за единую машину Тьюринга робота вместе с окружением. Однако в целях удобства изложения я все же предлагаю рассматривать отдельно робота, как собственно машину Тьюринга, и отдельно окружение, как источник информации, поступающей на входную часть ленты машины. Вообще-то такую аналогию нельзя считать вполне приемлемой по одной формальной причине — машина Тьюринга есть устройство фиксированное и по определению неспособное изменять свою структуру «по мере накопления опыта». Можно, конечно, попытаться изобрести способ, посредством которого машина Тьюринга сможет-таки изменить свою структуру, — например, заставить машину работать безостановочно, модифицируя структуру в процессе работы, для чего непрерывно подавать на ее вход информацию от окружения. К нашему разочарованию, этот способ не сработает, поскольку результат работы машины Тьюринга можно узнать только после того, как машина достигнет внутренней команды STOP (см. §2.1 и Приложение А, а также НРК, глава 2), после чего она не будет ничего считывать с входной части своей ленты до тех пор, пока мы не запустим ее снова. Когда же мы ее запустим, для продолжения работы ей придется возвратиться в исходное состояние, т.е. «обучиться» таким способом она ничему не сможет.Впрочем, эту трудность можно обойти при помощи сложной технической модификации. Наша машина Тьюринга так и остается фиксированной, однако после каждого рабочего цикла, т.е. после достижения команды STOP, она дает на выходе два результата (формально кодируемые в виде одного-единственного числа). Первый результат определяет, каким в действительности будет ее последующее внешнее поведение, тогда как второй результат предназначен исключительно для внутреннего
использования — в нем кодируется весь опыт, который машина получила от предыдущих контактов с окружением. В начале следующего цикла с входной части ее ленты сначала считывается «внутренняя» информация и только после нее все «внешние» данные, которыми машину снабжает окружение, включая и подробную реакцию упомянутого окружения на ее предшествующее поведение. Таким образом, все результаты обучения оказываются записанными на, скажем так, внутреннем участке ленты, который машина в каждом рабочем цикле считывает заново (и который с каждым циклом становится все длиннее и длиннее).3.12. Способен ли робот на «твердые математические убеждения»?
Воспользовавшись вышеописанным способом, мы и в самом деле можем представить себе в высшей степени обобщенного самообучающегося вычислительного «робота» в виде машины Тьюринга. Далее, предполагается, что наш робот способен судить об истинности математических утверждений, пользуясь при этом всеми способностями, потенциально присущими математикам-людям. И как же он будет это делать? Вряд ли нас обрадует необходимость кодировать каким-нибудь исключительно «нисходящим» способом все математические правила (все те, что входят в формальную систему ZF
, плюс все те, что туда не входят, о чем мы говорили выше), которые понадобятся роботу для того, чтобы иметь возможность непосредственно формировать собственные суждения подобно тому, как это делают люди, исходя из известных им правил, — поскольку, как мы могли убедиться, не существует ни одного сколько-нибудь приемлемого способа (за исключением, разумеется, «божественного вмешательства» — см. §§3.5, 3.6), посредством которого можно было бы реализовать такой неимоверно сложный и непознаваемо эффективный нисходящий алгоритм. Следует, очевидно, допустить, что какими бы внутренними «нисходящими» элементами ни обладал наш робот, они не являются жизненно важными для решения сложных математических проблем, а представляют собой всего лишь общие правила, обеспечивающие, предположительно, почву для формирования такого свойства как «понимание».