Вот-вот, со мной то же самое: с одной стороны, верю, вопреки логике, что найдется научное объяснение, почему человек -- не машинка, а с другой, допускаю, что все-таки машинка, только со сложной программой.
По наблюдениям в том числе за участниками этого форума, можно подметить, что вопрос о свободе воли человека и законах природы в частности, связан с такой практической убежденностью некоторых людей, что вот математика есть тот единственно допустимый язык, на котором возможно описание природы. Понятно: математика представляет собой в своей самой строго-формализуемой части некоторый список формально-аксиоматических систем, к которым предъявляются ряд требований строго алгоритмического характера. Например, требуется, существование эффективной процедуры (алгоритма) позволяющего судить о том, какие комбинации символов алфавита её принадлежат а какие нет. Так же формализуется сама процедура доказательства, которая сводится по сути также к алгоритмическому процессу. Любопытно также то, что все теоремы которые могут быть получены в той или иной формально-аксиоматической системе (далее ФАС) человеком могут быть получены и «куском железа» (компьютером), который рано или поздно получит нам вообще все теоремы какие только возможно в ней получить. Это создает эффект некоей «объективности» математических истин, способных быть полученных без участия человека. Может возникнуть иллюзия, что ФАС пригодны для обсуждения всех явлений природы. Особенно это может понадобиться тем, кто кроме математических рассуждений о природе никаких других не признает ( и люто ненавидит философию). Понятно: если существуют явления, которые в принципе не могут быть объяснены с использование ФАС, то тогда сам запал, о рассуждении над природой только и исключительно на мат. языках – снимается. А этого не хочется…
Но давайте посмотрим: а допустима ли вообще сама посылка о том, что математика является единственным языком на котором «разговаривает природа»?
Любая формальная система есть прежде всего некоторый формальный язык. Язык естественно содержит в себе алфавит и некоторый набор строгих правил, действуя в соответствии с которыми мы из букв алфавита можем образовывать различные комбинации ( слова языка) часть из которых могут быть нами содержательно интерпретированы как предложения что-то говорящие, например, о натуральных числах или какой-то физической системе. Так вот: НЕ существует формального языка способного делать утверждения даже о всех математических объектах т.е. ни на каком формальном языке невозможно «разговаривать» на любой математический предмет. Некоторые объекты просто слишком сложны, чтобы смоли бы быть адекватным образом описаны на этом языке.
Приведу тому объяснение. Для простоты понимания, я буду под формальным языком понимать компьютерный язык ( по существу они одно и тоже, компьютерный язык - это и есть пример формального языка) .
! |
whiterussian: |
Ну очень строгое замечание за неиспользование тегов math и code. В следующий раз пойдете на отдых для изучения правил. |
Покажем, что не может существовать компьютерного языка на котором можно запрограммировать даже все арифметические функции.
Пусть такой язык существует, обозначим его за P.
Всякая функция реализуемая в этом языке, будет представлять из себя некоторую последовательность символов выстроенных по определённым синтаксическим правилам действующим в этом языке. Здесь ограничимся рассмотрением функций содержащей
лишь одну переменную. Уже в таком простейшем случае возникают непреодолимые трудности.
Покажем, что язык P "достаточно беден" то есть его средства не позволяют запрограммировать любую арифметическую функцию действующую из области натуральных чисел в неё же. Оставляя вне рассмотрения конкретный синтаксис языка!, будем пользоваться просто условными схемами записи функций (по аналогии я языком Pascal, так как этот язык учебный и самый простой) . Так, например, функцию y=2x+1 (уравнение прямой) будем считать записанной в виде:
function pramaya(x:integer):integer;
Begin
Result:=2*x+1;
end;
Замечание1: количество параметров функции в общем случае не важно, поскольку всегда можно заменить эти параметры одним. Например, если дана функция трёх переменных:
function pr(x,y,z:integer):integer;
Begin
Result:=x^2+y-5*z;
end;
То от неё можно построить сопряженную функцию от одной переменной -"pr_*" действующую по правилу:
pr_*(x)=pr(x,x,x);
Т.е. вместо разных переменных x,y,z – мы подставляем одно значение а не разные, так что по сути у нас функция остается от одной переменной, и действует она из множества натуральных чисел в неё же.
Замечание 2: То, что написано в функции между словами «Begin» и «end» - называется кодом функции. Таким образом, кодами в указанных двух примерах функций будут выражения «Result:=2*x+1» и «Result:=x^2+y-5*z» соответственно.
Замечание 3. Код, очевидно – это также языковое выражение, т.е. некоторая совокупность знаков языка (слово). Пробелу тоже можно предать определенный символ, так что все тело функции (код) будет собою в прямом смысле представлять некоторое слово языка.
Итак, мы исходим из того, что наш язык P -богат настолько, что позволяет запрограммировать любую арифметическую функцию. Заметим, что все наши функции можно эффективно занумеровать
(без док-ва).
Значит, каждая способная быть запрограммированной на нашем языке функция получает конкретный уникальный номер, и все мы их можем расположить в список:
func1 ~ 1
func2 ~ 2
...
funcD ~ D
Теперь рассмотрим другую функцию: H(x,y) - она действует из N*N в N по следующему правилу:
function H(x,y:integer):integer;
Begin
Result:=funcx(y);
end;
То есть, мы берём функцию за номером "x" из нашего только что полученного списка - и подставляем в неё значение "y". Таким образом
каждая функция которая способна быть запрограммирована на в нашем языке, имеющая номер "k" тождественно совпадает с функцией
H(k,x). То есть H(k,x)=funcnk(x).
Наконец введём в рассмотрение ещё одну функцию: G(x)=H(x,x)+1 - эта функция уже одной переменной (см. замечание 1) и также действует из области натуральных чисел в неё же. Но эта функция не может быть запрограммирована на нашем языке.
Действительно, ведь если она может быть запрограммирована, то, следовательно, она должна лежать в нашем списке и следовательно
должна иметь некоторый номер, например "n". Это означает, что H(n,x)=G(x) для любого "x". Теперь подставим вместо "х" значение "n".
Получим: H(n,n)=G(n).
Но ведь G(n)=H(n,n)+1 (т.к. G(x)=H(x,x)+1 )
, следовательно H(n,n)=H(n,n)+1.
Но последнее не имеет места ни для одного натурального числа, поскольку ни одно натуральное число не равно следующему за ним. (на этот случай можете специально открыть для проверки аксиомы арифметики Пеано).
Итак, для любого языка существует арифметическая функция которая на нем не может быть запрограммирована. А посему никакие предикаты связанные с этой функцией также не могут быть представлены в этом языке.
Т.е. наш формальный язык попросту не умеет обсуждать эту предметную область. Он слишком слаб для этих целей, не в состоянии вообще сделать хоть одно утверждение на сию тематику.
Далее: количество таких функций не просто бесконечно, а вообще не счетно. (так как множество биективных отображений N в себя – не счетно). Множество же всех предложений любого формального языка – счетно, множество всех формальных языков также счетно. Но счетное множество счетных множеств – счетно, поэтому существуют функции которые вообще не могут быть предметом обсуждения ни одного формального языка. В них невозможна например формула Vx: F(x).
Теперь заметим, что все явления природы обладают такой особенностью, что они ВСЕ до одного могут быть описаны числами. Всем потокам ощущений – соответствуют всегда те или иные числа. Чтобы не вдаваться в длительные философские рассуждения почему это так, мы обратимся к такому известному всем в наше время феномену как компьютер. Все мы знаем, и наверное имеем целую массу фотографий в компе. Понятно, что качество можно улучшать, можно улучшать и разрешение экрана, и тогда все воспроизводимые на экране образы будут ничем не отличаться от тех, которые, мы, видим когда гуляем, например, по лесу. Но что такое фотография в компе? Это просто именованная последовательность нулей и единиц на диске - файл т.е. число двоичной системы счисления. Точно также и фильмы к которым помимо зрения добавляется ещё и слух представляют собой такие же файлы. Поэтому не только все зрительные образы можно «занумеровать» но и также все слуховые ощущения. Так вот, в итоге – все наши воспринимаемые ощущения, могут быть адекватным образом переведены на язык чисел, и все явления природы мы можем занумеровать. Специальным образом построенная нумерация всех явлений природы в физике как я понял читая А.А. Фридмана «Мир как пространство и время» называется «арифметизацией физического пространства», результатом её является пространство геометрическое, составленное из 4-к различных чисел, и заданных над ними метрических и порядковых отношений (насколько предложенная физиками арифметизация удачна – это другой вопрос). И затем мы имеем дело только с числами – объектами математики, и можем с ними проделывать все то, что законно в последней. (этим кстати объясняется «непостижимая эффективность применения математики к описанию явлений физического мира»).
Так вот: для описания явлений природы у нас есть вполне законное средство – числа. И рассуждения над явлениями природы, есть уже рассуждения над числами. Теперь встает вопрос: является ли множество этих чисел перечислимым?
Известно, что множество всех истинных суждений арифметики – неперечислимо, поэтому, если язык нашей системы таков, что он способен представить в себе арифметику Пеано, то множество явлений природы будет также неперечислимым множеством.
А это в частности значит, что некоторые явления природы существовать будут, но объяснения им в рамках принятого формализма – никакого не будет. Просто потому, что они не будут вытекать ни из какого наперед заданного набора начальных условий системы. Поэтому вопрос сводится к такому: является ли арифметика Пеано необходимым условием для объяснения явлений мира? Если мы включаем самого человека в мир, то тогда, поскольку в его уме есть арифметика Пеано то очевидно, что для объяснения его мышления об арифметике Пеано нужны средства не слабее последней. А раз так, то существуют явления, которые будут необъяснимы в рамках принятого формализма. Если человека мы не включаем как часть мира, то тогда, мы признаём, , что человек не объясним никакими математическими рассуждениями в принципе (так как ему не соответствуют никакие числа). И признаем, также, что человек не подвластен во всем законом природа этого мира раз он ему не принадлежит…
Итак в мощь математических формализмов – даже верить нельзя. Сама попытка захапать себе рассуждение о природе как обязательное рассуждение в математических терминах – абсурдна. Т.е. существует что-то, что не вписывается в прокрустово ложе вот этих подходов.
-- Пн июл 09, 2012 01:10:54 --Вот не очевиден. Может, программа слишком сложная - и больше ничего особенного.
Не может быть человек программой. Нет никакой возможности объяснить человека на компьютерном языке. (а всякая программа должны таким свойством обладать).
Верю. Но полагаю, что точная теория будет относиться к реальному человеку как механика относится к термодинамике. Вроде законы есть, а описать точно не получится: придется упрощать, ставить подпорки и костыли и прочее.