Следущий ниже текст является конспектом главы из книги американского физика, профессора университета Делавера Стивена Барра "Современная физика и древняя вера", которая, к сожалению, не переведена на русский язык, но которую  читатель может либо купить здесь, либо взять на две недели в электронной библиотеке

........................................

 

Существуют ли проблемы, которые компьютер не может решить, а человек может? Философ Джон Лукас предложил положительный ответ на этот вопрос, несколько позже математик и физик Роджер Пенроуз предложил более строгие аргументы. И тот и другой, опирались на теорему, доказанную в 30х годах прошлого века австрийским логиком и математиком Куртом Геделем. В своей первоначальной формулировке эта теорема говорила  не о компьютерах, а о так называемых «формальных системах», т.е. об отраслях математики, полностью сводимых к механическим операциям над символами. Однако, через несколько лет после Геделя Алан Тьюринг обобщил его теорему так, что она стала непосредственно относиться к компьютерам. 

John Lucas (philosopher) - Alchetron, the free social encyclopediaДжон Лукас.

 

Роджер Пенроуз.

Суть аргументации Лукаса-Пенроуза проста. Они заметили, что из теоремы Геделя следует, что если мы знаем программу, по которой действует компьютер, то мы всегда можем его перехитрить. Далее, говорят нам Лукас и Пенроуз, если мы сами являемся лишь компьютерами, то, узнав программу, по которой мы работаем, мы были бы способны перехитрить ее, что явно невозможно. К этому, по сути, и сводится их аргументация. Ниже я объясню ее более подробно.

                                        ......................................

Курт Гедель и Альберт Эйнштейн. Принстон. 1946 г.

Теорема, доказанная  Геделем в 1931 г. относится к формальным системам, следующим по крайней мере правилам арифметики  и простой логики. Существует важное различие: системы такого рода могут быть либо «самопротиворечивыми» или «непрот

иворечивыми». Теорема относится только к непротиворечивым формальным системам. Что имеется в виду? Самопротиворечивой системой, по определению, называется система, правила которой позволяют доказать какое либо утверждение вместе с обратным ему. Например, арифметика была бы самопротиворечивой, если б удалось доказать, что a и равно и не равно b. В непротиворечивой системе таких парадоксов не возникает. 

 Важно понять, что если система самопротиворечива в чем-то, то она самопротиворечива во всем, что в ней можно доказать все, что угодно, иными словами, ничего доказать нельзя. Например, если правила моей арифметики позволяют доказать, что 1 =0, то можно доказать, например, что 13=7. В самом деле, умножим обе части равенства 1=0 на 6, получим 6=0, теперь прибавим к обоим частям равенства 7 – получится 13=7. Иными словами, формальная система не может быть лишь слегка самопротиворечивой, если такие противоречия где то возникли, то они распространятся по всей системе, как вирус. 

                                                                                                 ………………………..

 Из того, что в самопротиворечивой системе можно доказать все, что угодно, следует один довольно неожиданный вывод, а именно, что если нам встретилось утверждение, которое в данной системе доказать нельзя, то это система непротиворечива.

 Имея в своем распоряжении определения самопротиворечивых и непротиворечивых систем, мы может теперь сформулировать положения, доказанные Геделем. 

 

  • В любой непротиворечивой формальной системе, подчиняющейся правилам арифметики и простой логики, существуют арифметические утверждения, которые нельзя ни доказать, ни опровергнуть в рамках правил данной системы, но которые, тем не менее, истинны. Такие утверждения называются «формально неразрешимыми». 
  • Гедель не просто доказал, что такие утверждения существуют, но привел конкретные примеры.
  • Доказательство Геделя можно применить к компьютерным программам. Для непротиворечивой компьютерной программы P, достаточно мощной для того, чтобы совершать арифметические и логические операции, можно найти утверждение G(P), которое программа не может ни доказать, ни опровергнуть. При этом можно показать, что G(P) истинно и в этом смысле «перехитрить» компьютер, сделав то, что он сделать неспособен. 
  • Гедель показал, что непротиворечивость формальной системы не может быть доказана в рамках ее правил. Другими словами, компьютер сам не способен определить, является ли его программа непротиворечивой. 
  •  Перейдем теперь к аргументам Лукаса и Пенроуза. В 1961 Джон Лукас, философ из университета Оксфорда, написал следующее:

     « Я думаю, что теорема Геделя доказывает ложность концепции Механизма, т.е. умы нельзя приравнять к машинам. Такой вывод представляется правдоподобным множеству людей: практически каждый математический логик, с которым мне приходилось обсуждать этот предмет, признавался, что разделяет мои сомнения, не решаясь впрочем высказаться определенно до тех пор, пока аргументы за и против не сформулированы ясно. Что я и собираюсь сделать». 

     Следует сказать, что и сам Гедель, не сделавший никаких публичных заявлений, по- видимому пришел к тем же самым выводам. Он не верил в то, что человеческий ум объясним в чисто материальных терминах, называя эту идею «современным предрассудком». И в самом деле, этот предрассудок во многих умах отвердел до превращения в непререкаемую догму. Поэтому нет ничего удивительного в том, что аргументация Лукаса была отвергнута теми, кто работает в сфере искусственного интеллекта. 

     Аргументы Лукаса были заново сформулированы оксфордским математиком и физиком Роджером Пенроузом в его книге «Новый ум короля», опубликованной в 1989 г. и повторены в книге «Тени разума». 

                                               ……………………………………………

     Вернемся к аргументу Лукаса. Представим себе, что некто показал мне компьютерную программуP, способную совершать арифметические и логические операции. Я знаю, что она непротиворечива и знаю правила, по которым она действует. Далее, следуя Геделю, я могу найти утверждение G(P), которое эта программа, следуя своим правилам,  не может ни доказать, ни опровергнуть, но истинность которого я, следуя тому же Геделю, доказать могу. Тем самым я сделал то, что компьютер, следуя заложенным в нем правилам,  сделать не может. 

     До этого момента все более менее тривиально. Программисту ничего не стоит дополнить программу несколькими аксиомами так, что в модифицированной форме она докажет G(P). Назовем модифицированную программу P’ . У этой новой программы будет свое недоказуемое истинное утверждение G(P’). Модифицируем программу снова, включив туда истинность  G(P’), как аксиому. И так далее. На каждом шагу мне удается «перехитрить» программу, но программист продолжает ее совершенствовать так, что соревнование между мной и программами никогда не кончится. Казалось бы, нам ничего не удалось доказать, но тут-то Лукас и преподносит свой блестящий аргумент. Предположим, говорит Лукас, что компьютерная программа – это я сам. Т.е. когда я что-то доказываю, это делает некая программа в моем мозгу. Назовем эту программу H(human). И пусть кто-то показал мне эту программу так, что я знаю все ее детали. Предполагая, что H непротиворечива, я могу сформулировать утверждение G(H), которое не может быть ни доказано, ни опровергнуто моей программой H, т.е. мною, но истинность которого я же, следуя рассуждениям Геделя, могу доказать. Таким образом, мы пришли к противоречию. Я не могу «перехитрить» самого себя, доказав то, что не могу доказать. Получается, что какие то предположения, сделанные по ходу рассуждения были  неверны. Мы предполагали, что а.) занимаясь математикой, я следую компьютерной программе, б.) я знаю, что эта программа непротиворечива, в.) мы можем знать структуру этой программы во всех деталях и г.) для этой программы я способен сконструировать геделевское утверждение. Если удастся показать, что б.,в.,г.) выполнены, то это будет означать, что а.) ложно, т.е. я не являюсь компьютерной программой. 

                                              ………………………………….

     Для тех, кто не может расстаться с идеей о том, что они являются машинами, открыты следующие возможности опровергнуть аргумент Лукаса. 

     Начнем с утверждения в.) о том, что человек не может знать своей компьютерной программы. В практическом отношении это, конечно, верно. Однако, можно представить себе, что, не будучи способен извлечь из себя самого свою программу, я мог бы узнать программу другого человека и поделиться с ним этим знанием. Однако, можно возразить и лучше. Если наше мышление равносильно исполнению компьютерной программы, то неважно, на какой машине эту программу гонять. Ту же программу можно прогнать на машине, сделанной из силиконовых чипов или чего-нибудь еще. И такая машина была бы безусловно открыта для самоисследования. И, если следовать материалистической логике, такая машина могла бы доказать все то, что могу доказать я, не разрушив при этом саму себя, что было бы неизбежно, если б я начал копаться в своих мозгах. 

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

      Более серьезное возражение состоит в том, что задача построения геделевского утверждения G(H) может оказаться не по плечу человеческому разуму. Проблема о том, насколько сложно G(H) можно проанализировать математически, что и было сделано Пенроузом, который заключил, что G(H) будет примерно настолько же сложно, как само H, так что если мозг сможет выучить свою собственную программу, он будет вполне способен сконструировать G(H). 

                                                …………………………………………………..

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

     Возразить на это можно двояко. Во-первых, есть разница между компьютером, оперирующем на основе самопротиворечивой программы, и компьютером с непротиворечивой программой, который время от времени ломается и потому выдает неверные результаты. В таком случае можно себе представить, что многие ошибки, совершаемые нами, имеют именно такую природу, являясь плодами утомления или невнимания. Во-вторых, как уже было сказано, программы не могут быть самопротиворечивыми лишь отчасти, время от времени. Уж если они самопротиворечивы, то на всю катушку, будучи способны доказать все, что угодно. Такая программа была бы, на первый взгляд, намного мощнее непротиворечивой, но, на самом деле, она была бы совершенно бессильная, не будучи в состоянии распознать свои собственные ошибки. Справедливости ради, надо сказать, что с людьми дело обстоит не настолько плохо. Хоть и не всегда, но мы можем распознать свои ошибки, по крайней мере в арифметике. Как сказал Лукас:

     « Если б мы были самопротиворечивыми машинами, наши противоречия нас бы не беспокоили и нас в равной мере устраивали бы обе стороны противоречия. Более того, мы были бы готовы говорить все, что угодно – что совсем не так… Безусловными характеристикой ментальной деятельности человека является то, что она селективна, она различает между избранными – истинными – и отвергаемыми ею – ложными утверждениями; когда кто либо готов сказать все, что угодно, а после без всякого колебания  самому же себе противоречить, к нему относятся как к «утратившему разум». Хотя мы, люди, и не являемся примерами непротиворечивости, нас можно скорее назвать склонными к ошибкам. Такая ошибающаяся машина, способная тем не менее корректировать свои ошибки, является объектом, к которому применима аргументация Геделя. «

     Итак, в отличие от машин с самопротиворечивой программой, люди обладают способностью к строгим рассуждениям. Эту способность  такая машина не была бы способна имитировать. 

                                               ………………………………………….

     Дело тут не в том, что люди часто бывают иррациональны, а в том, что человек обладает способностью к разумному мышлению, которым самопротиворечивый компьютер обладать не может.                                          ………………………………………….

     Интересно, что наиболее распространенные возражения против аргумента Лукаса-Пенроуза сводятся к тому, что человеческие существа фундаментально противоречивы. Странно здесь то, что те, кто так утверждает, думают, что тем самым борются с суеверной верой в существование «души». Было время, когда это делалось во имя разума и соответственно называлось рационализмом. Однако, чтобы покончить с духовным в человеке, новый скептицизм готов отказаться и от разума. Получается, что мы не можем доверять себе даже в простейших вопросах арифметики. Г. К. Честертон предвидел такой поворот событий почти сто лет назад:

     « Хаксли [знаменитый биолог, друг Дарвина. – А.Ц.] проповедовал смирение, с которым нам надлежит учиться у Природы. Но новый скептик исполнен смирения настолько, что сомневается даже в том, способен ли он учиться… Мы на пути к созданию расы людей, чья умственная скромность не позволяет им верить даже в таблицу умножения. У нас появятся философы, сомневающиеся в законе всемирного тяготения на том основании, что он может оказаться их фантазией. Насмешники прошлых лет не позволяли себя убедить из гордости, эти же не позволяют себя убедить из смирения». 

      Читателя может удивить, что дискуссия все время крутится вокруг арифметики, которая многим людям совсем даже не интересна. Однако и Гедель, и Лукас и Пенроуз намеренно рассматривают простейший пример, а именно соревнование между человеком и компьютером в области арифметики и простой логики. Разобрав этот простой пример, мы можем перейти к чему то более сложному. Нам нужно не терять этот аспект из виду.

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

     Возьмем простой пример из арифметики. Допустим, у нас есть программа, которая умеет складывать и вычитать числа. Такая программа может доказать, что четное число можно получить, сложив два не четных, например, 20 = 7+13. Однако, доказать, что этого нельзя сделать, сложив три нечетных числа, она уже не в состоянии. Конечно, каждая конкретная попытка будет давать отрицательный результат, но, оперируя с положительными и отрицательными числами, можно делать бесконечное количество таких попыток. Однако тот, кто может не только складывать и вычитать, но и понимать общие принципы построения чисел, быстро поймет, почему три нечетных числа никогда не дадут в сумме число четное. 

     И этот пример, и пример блуждания по лабиринту, даваемый в книге Барра, говорят об одном и том же: наш интеллект отличается от компьютера способностью не действовать пошагово, а охватить проблему целиком, уяснив себе  принципы действия той или иной формальной системы. Иными словами, человеческий интеллект обладает способностью к абстрактному мышлению, которая и дает нам понимание. 

     Компьютерные энтузиасты продолжают верить, что способность есть просто следствие сложности нашего мозга, но аргументы Лукаса-Пенроуза позволяют нам усомниться в этом.  Далеко не все акты абстрактного мышления сложны. 

     «Далеко отстоит Отец от всего того, что действует между людьми, от аффектов и страстей. Он прост, не имеет ни частей, ни структуры, полностью похож на Себя и равен только Себе. Он весь ум, весь дух, весь мысль, весь разумение, весь разум… Так все, кто религиозен и благочестив привыкли думать о Боге.» (Св. Ириней Лионский, Adversus Haeresis.)