О КИБЕРНЕТИЧЕСКОЙ ЭПИСТЕМОЛОГИИВалентин ТурчинВведениеЭта статья - набросок того, что может быть названо кибернетической эпистемологией, которая была развита в процессе работы над проектом Principia Cybernetica [Tur90, Hey91, Tur91]. Как продолжение этой работы, готовится к публикации статья о кибернетической метафизике и семантике основных понятий науки. Цель, естественно, включает желание иметь современную философскую систему, но также и попытку создания основы семантики естественного языка, который будет использоваться при работе над искусственным интеллектом. По мнению автора для того, чтобы преуспеть в передаче машине нашей способности понимать естественный язык, необходимо разбить значение языка на некоторые элементарные единицы - не столь мелкие, сколько реально минимальные. В этом направлении уже была проделана определенная работа, например [Sch77]. В проекте Principia Cybernetica мы пытаемся продвинуться дальше в сторону уменьшения числа примитивных понятий. Мы основываем наш подход на понятиях предсказания в эпистемологии и действия в метафизике, используемых в качестве атомов, на которые мы раскладываем наше восприятие сложных явлений. Философия призвана отвечать на такие основополагающие для каждого разумного создания вопросы как: "Кто я?", "Откуда я пришел и куда иду?", "Сколь истинно мое знание?", "Какова, в конечном счете, природа вещей?", "Что есть добро и что есть зло?". Каждое время дает свои собственные ответы на эти вопросы. Эти ответы значительно подвержены влиянию текущего состояния знания и производства. Наша философия - следствие возникновения эволюционной теории в конце 19-го века и кибернетики в середине 20-го. Это легко можно увидеть и в методе, с которым мы подходим к философским проблемам, и в ответах, которые мы предлагаем. Мы понимаем кибернетику в самом широком предложенном Норбертом Винером смысле, как науку об управлении, коммуникации и организации. Видение мира в таких терминах в какой-то мере дополняет видение мира глазами физика, для которого мир есть пространство, время и материя. Физика 19-го века естественно приводила к философии механицизма. Считалось, что мир - "реальное" трехмерное пространство с одинаково текущим везде временем и маленьким частицами, движущимися вдоль заданных траекторий, которые определяются законами механики и силами взаимодействия межу частицами. В таком мире не было места для неопределенности и свободы. Физика 20-го столетия развенчала эту картину мира, как наивную проекцию наших теорий в реальность. Ей пришлось пойти на это под давлением экспериментальных фактов. И теперь мы считаем мир намного более загадочным, чем считал физик 19-го века. Мы остерегаемся отождествлять наши теории с реальностью. Мы видим теории не более чем определенными средствами организации и предсказания потока наших ощущений. Мы обнаружили, что неопределенность неотделимая часть природы вещей. С появлением кибернетики и компьютеров, мы начали создавать модели человеческого восприятия и систематически исследовать различные пути организации сенсорных данных. Так основной акцент исследований сдвинулся от материи к организации, от компьютеров к программам. Сегодня мы считаем организацию более фундаментальной и первичной, чем ее материальное содержание, которое, в конце концов, не более чем всего лишь представление, используемое нами для организации сенсорных данных. Поэтому мы называем нашу философию кибернетической. В этой статье мы будем придерживаться формата приспособленного для проекта Principia Cybernetica, где текст представлен в виде иерархической структуры узлов по следующему правилу: одно понятие, один узел. Узлы открываются названием (выделенным жирным шрифтом) и закрываются названием следующего узла (если есть такой). Узел может содержать в себе другой узел. В этом случае внутренний узел кончается ссылкой возврата к внешнему узлу. Когда после завершения узла мы возвращаемся к родительскому узлу, строка, начинающаяся словом возврат, помогает читателю понять, в каком месте текста он находится. Прогрессивная формализацияНаш метод развития философии - прогрессивная постепенная формализация. Этот метод повсеместно используется в науке. Сначала мы полагаемся на интуитивное понимание простых идей, затем на основе этого понимания мы получаем значения более формальных и строгих, но одновременно и более сложных, понятий и идей. Это утверждение само является иллюстрацией нашего метода. В нем мы использовали слова "понимание", "значение", "формальный". Так же мы будем должны проанализировать эти понятия и придать им в свою очередь "более формальные и строгие" значения. Эти новые значения, появляются не для того, чтобы заменить первоначальные значения, а для того чтобы дополнить их. Сравним подобный подход с ситуацией в физике. Мы начинаем с области науки рассуждающей о телах и их массах, вычисляющей расстояния в пространстве при помощи линейки и т. д. Позже, когда мы изучаем структуру вещества, мы находим, что эти самые тела и линейки, всего лишь определенные структуры состоящие из огромного числа атомов. Однако понятие линейки - это новое понятие, хотя оно относится к тому же предмету. Для того чтобы перейти к понятию линейки как атомной структуры, мы должны пройти длинный путь, в начале которого линейка просто предмет, использование которого легко объяснить. Мы приходим в философию со стандартами и методами науки. Мы пытаемся определить и объяснить такие основополагающие понятия как: "значение", "понимание", "знание", "истина", "объект", "процесс" и т. д. Но для того чтобы объяснить, например, понимание, мы должны опереться на понимание в самом обычном интуитивно понятном смысле, потому что иначе мы не узнаем, понимаем ли мы сами то, о чем говорим. Так будет хотя бы небольшой шанс, что наши слова будут содержательны. Или возьмем понятие объекта. В нашей статье есть узел, посвященный этому понятию. Но мы не можем не пользоваться понятием объекта до того как мы дойдем до этого узла - это аналогично двум понятиям линейки в физике. Отношения между вещами в этом мире очень часто цикличны, поэтому мы столь часто теряемся, пытаясь начать и закончить определения. Использование различных уровней формализации позволяет нам избежать порочного круга в определениях. Допустим, мы определяем понятие A, пользуясь неформальными понятиями B и C. Затем мы желаем уточнить B. Мы определяем его, и находим, что оно зависит от новых понятий D и E, но также и от уже определенного A. Следовательно, если мы будем откладывать формализацию понятия до тех пор, пока все понятия, от которых оно зависит, не будут формально определены, мы никогда не закончим нашу работу, или ограничим область исследования строго иерархическим подмножеством всего множества понятий действительно необходимых нам. Вместо этого, мы осознаем, что имеются различные уровни формализации одного и того же понятия, и мы позволяем им сосуществовать. Так после определения A с использованием B, мы определяем B', понятие, которое является более формальным, чем B. Старое, менее формальное понятие B исключается. Теперь мы можем переопределить, а можем и не переопределить понятие A. Если мы переопределим его, используя B', мы получим понятие A'. Всякий раз, когда мы хотим понять определение, мы начинаем разворачивать цепь зависимых определений пока мы не придем к базовым интуитивным положениям, по которым не может быть разногласий. Задача физической теории дать нам картину мира отличную от наших общих ощущений для того, чтобы узнать о вещах больше и создать новые вещи, которые разительно изменят нашу жизнь. Аналогично, мы создаем формальные версии наших общих положений для того, чтобы лучше понять, как работает наш язык и сознание, и создать искусственные языки и сознания, которые будут имитировать работу нашего сознания, и наверно наступит день, когда они превзойдут наши возможности. возврат к ВведениюОбычно философия делится на три части, и соответственно мы имеем три узла - эпистемологию, метафизику и этику. Эпистемология отвечает на вопрос: "Что такое знание, и каково его отношение к реальности?". Метафизика пытается решить следующую проблему: "Какова природа вещей?". Этика позволяет ответить на вопрос: "Что хорошо и что плохо? К чему мы должны стремиться и что делать?". Ответы на эти вопросы мы пытаемся найти при помощи проекта Principia Cybernetica. Так же в рамках этого проекта мы рассматриваем логику, математику, естественные науки и социологию. Эволюция включена в качестве отдельного узла и предшествует этике, потому что этика основывается на эволюции. ЭпистемологияПеред тем как ответить на вопрос, его необходимо понять. После того, как получен ответ, он должен быть понят. Философия очень часто вызывает ответ: "Я не понимаю. Для меня это просто слова лишенные какого-либо смысла". Мы попытаемся избежать этой ситуации. В качестве первого этапа развития нашей философии мы введем точный критерий оценки осмысленности или бессмысленности текста. Конкретнее, мы связываем смысл со знанием - смысл утверждения понят, если это утверждение может увеличить наше знание (не важно верно или нет новое знание). Поэтому мы начинаем изложение нашей философии эпистемологии с обсуждения того, что есть знание. ЗнаниеВ кибернетике говорят, что целенаправленная кибернетическая система S имеет некоторые знания, если она имеет модель некоторой части мира, в которой S находится. Говоря неформально, модель какого-либо процесса - это другой процесс, который как-то воспроизводит, симулирует первичный процесс. Так используя модель, становится возможным узнать что-либо о моделируемом процессе не наблюдая его, или предсказать его результаты до того, как они появятся. МодельФормальное определение модели будет дано ниже. Начнем с наиболее часто используемого определения, а затем обобщим его. Обычно понятие моделирования, в дальнейшем схема моделирования (см. рис. 1), представляет собой следующее. Рис. 1. Схема моделирования Кибернетическая система S имеет модель (некоторой части) окружающего мира, если выполняются следующие условия. 1. S имеет подсистему, которую мы будем называть мозг, и может осуществлять процедуру R называемую функцией представления, заключающуюся в том, что если ее применить в мире находящемся в состоянии w, то она вызывает конкретное состояние мозга r, являющееся представлением w. (Отметим, что у высших животных то, что мы называем мозгом относится ко всей нервной системе). Функции представления также могут пониматься, как абстракции. 2. Пусть мир находится в состоянии w1, и предположим, что система S производит действие a. Новое состояние мира, установившееся в результате действия, будем обозначать w2 = Fa(w1). Здесь мы не утверждаем, что Fa - функция в обычном понимании, однозначно определяющая w2 по данному w1. Мы не утверждаем, что мир детерминистичен. Fa(w1) определяет лишь возможные состояния мира в результате действия a. Мы можем рассматривать эту функцию, как недетерминистическую. Математически, она есть отношение между w1 и w2. Кроме функции представления R, система S должна иметь возможность осуществлять другую процедуру, обозначим ее Ma и назовем моделирующей процедурой. Эта процедура связана с функцией Fa таким образом, что, будучи примененной к r1, она производит представление r2 состояния мира w2 являющегося результатом действия a: или, произведя подстановку: Таким образом, применяя Ma к r1, система S может предсказывать, до некоторой степени, развитие событий в мире в результате действия a. Подставляя в модели различные действия a, система может сделать выбор определенного действия наиболее отвечающего ее целям. (Конечно, мы предполагаем, что процессы представления и моделирования завершаются до того, как действие a выполнено, или хотя бы завершено.) Это определение одинаково хорошо описывает, как собаку, хватающую на лету кусок сахара, так и астронома, который вычисляет положения планет в небе. В первом случае модель воплощена в клетках мозга собаки, а во втором в знаках, которые астроном пишет на бумаге, когда он выполняет вычисления. Математически модель определяется посредством функции представления R(w) и семейства моделирующих функций Ma(r) для всех возможных действий a системы. Фиксируя действие a, мы получаем гомоморфизм Fa и Ma. Следовательно, модель - семейство гомоморфизмов. Приведем некоторые замечания по поводу данного определения модели. В качестве особого случая действие a может быть пустым, т. е. просто ничего не делать, ждать или наблюдать. То, что мы называем окружающим миром обычно очень маленькая часть его. Функция представления, используемая в начальном состоянии w1, не обязательно должна остаться той же для состояния w2. Первую будем обозначать R(w), а вторую R'(w). Очень часто модель какого-либо процесса делает предсказания непрерывно, например, мы прогнозируем погоду на часы и дни вперед (хотя и не точно). Так мы имеем ряд w1, w2, w3, … и т.д. состояний мира, и соответствующий ряд состояний модели: r1, r2, r3, … и т.д. Эта расширенная модель является устройством, которое применяет одну схему моделирования за другой - прогноз r2 для w2 на основании r1, а затем r3 для w3 на основании r2 и т.д.Так, используя термин предсказание неформально, мы можем сказать, что модель есть генератор предсказаний. Мы дадим формальное определение понятия предсказания позднее, и таким образом, формализуем общее определение модели - генератора предсказаний. Но сначала нам хотелось бы показать, что необходимо обобщенное определение для того, чтобы преодолеть некоторые ограничения схемы моделирования. Определение схемы моделирования содержит важное допущение - допущение о невмешательстве. Означающее, что процедура R (которая является последовательностью действий) воздействуя на состояние мира w, не меняет это состояние. Но из квантовой механики мы знаем, что это допущение, строго говоря, никогда не выполняется. И все же когда мы имеем дело с макроявлениями, мы можем использовать допущение о невмешательстве, потому что воздействие инструментов, используемых для осуществления R, на w обычно может быть сделано незначительным. Но на атомном и субатомном уровне, мы не можем абстрагироваться от воздействия производимого инструментом, используемым для получения информации об изучаемом объекте. Это также может быть справедливо для социологии и психологии, например, когда человек делает прогноз поведения группы, к которой сам принадлежит. Существует еще одно допущение о невмешательстве - моделирующая процедура Ma, имитирующая действие a никак не влияет на сам процесс действия, в том числе и на результат w2. Обычно, это допущение не вызывает сомнений, возьмем астронома, его вычисления, конечно, никак не влияют на движение небесных тел. Но если мы попытаемся приложить схему моделирования к самоанализу, у нас могут возникнуть проблемы. Итак, необходимо обобщенное определение, которое может быть применено в тех ситуациях, когда допущение о невмешательстве может не выполняться. Рассмотрим два процесса, которые присутствуют в схеме моделирования. Пусть они протекают параллельно так, что взаимное влияние не исключено: Первый процесс: Предсказание, произведенное моделью, r2 = r2'. Однако, мы можем пойти дальше в формализации понятия предсказания и сделать его более универсальным. Подождем пока оба процесса завершаться и запустим третий процесс C, который сравнит r2 и r2'. Вместе все три эти процесса образуют один комбинированный процесс, который является процессом проверки модели. Если наша модель правильна, то процесс C, а вместе с ним и весь комбинированный процесс, проверяющий модель, достигнет цели, то есть будет определено, что r2 и r2' идентичны. Модель предсказывает, что ее тест закончится удачно. Следовательно, мы можем ввести формально определение процесса предсказания. ПредсказаниеОпределим предсказание, как утверждение, что данный процесс, являющийся тестом, удачно завершился, то есть достиг данного, заблаговременно определенного, состояния после которого мы просто не заботимся, что происходит с процессом. Предсказание, что тест T, завершится успешно, дальше будем обозначать, как T!. Для того чтобы сделать понятие теста более точным, мы свяжем с каждым тестом T подтест останова E(ti), который можно провести в отношении каждого состояния ti теста T и который всегда имеет какой-либо результат из трех возможных: Дальше, если ti не является конечным состоянием, и тест T продолжается; Успех, если ti является конечным состоянием, и T завершился успешно; Неудача, если ti является конечным состоянием, и T завершился неуспешно. Утверждение, что T закончился неуспешно, будем обозначать T×. Это тоже предсказание. Оно утверждает об удачном завершении следующего процесса: запустить T; на каждом шаге производить подтест останова E; остановиться и объявить об успешном завершении, если результат E - Неудача. Мы формально определили обобщенную модель, как что-то, что производит одно или несколько предсказаний. Когда мы говорим о производстве предсказаний, конечно же, мы представляем себе какие-то объекты, представляющие собой предсказания, например, тексты на определенном языке, который позволяет нам воспроизвести процесс, о котором сделано предсказание. Объект представляющий процесс является его объективизацией. Формально, мы можем вместить наше обобщенное понятие предсказания в рамки схемы моделирования, даже если мы еще больше расширим спектр возможных действий a, а именно, позволим a быть произвольным процессом, который может включать, как действия системы S, содержащей модель, так и любые другие действия и процессы. Предположим, что мозг S всегда находится в одном из двух состояний, назовем их Успех и Неудача. Функция представления Ra'(w2) будет иметь результатом Успех, если w2 состояние процесса a являющееся успешным, и Неудача в противном случае. Моделирующая функция M(r) будет тогда универсальной и очень простой - она немедленно будет принимать значение Успех. Теперь построенная нами модель порождает лишь одно предсказание, что процесс a завершился успешно. возврат к ЗнаниюОднако, даже определение знания, как генератора предсказаний не является настолько общим, чтобы полностью охватить это понятие. Части нашего знания (утверждения или предложения) не обязательно производят проверяемые предсказания, они могут являться некоторыми объектами, которые могут быть использованы для получения предсказаний. Более того, они могут порождать объекты, которые породят объекты, порождающие предсказания. Подобный процесс может идти в глубь, образуя иерархию объективизируемых знаний. Простой пример из математики. Равенство x + y = y + x не может быть проверено немедленно, но оно порождает (т.е. мы знаем, как использовать его для порождения) такое равенство, как 7 + 4 = 4 + 7. Этот объект, в свою очередь, еще слишком абстрактен для прямой проверки. Однако мы можем проверить прогноз, что результат сложения четырех и семи яблок не зависит от порядка, в котором мы производим их сложение. Таким образом, мы подошли к следующему определению. Часть знания - или предсказание, или генератор, который мы можем использовать для порождения (генерирования) прогнозов или других частей знания. Это определение рекурсивно, оно определяет часть знания, используя базисный случай (предсказание) и самого себя. Результатом является некоторый вид иерархии объектов, который в отличие от более привычных типов иерархии разворачивается сверху вниз. Мы запускаем этот генератор, и оно порождает некоторые объекты. Если объект предсказание, мы принимаем его, как окончательный результат процесса. Если он генератор, мы запускаем его параллельно с другими генераторами, порожденными к этому моменту (они могут являться родителями, родителями родителей и т.д. данного объекта). Мы могли бы сказать, что предсказания полученные подобным путем являются иерархически порожденными исходным генератором. Теперь мы можем определить (часть) знания, как - иерархический генератор предсказаний. В простейшем случае генератор может породить только одно предсказание. Следовательно, предсказание можно считать частным случаем иерархического генератора. Так же, не исключена возможность, что объект, подходящий под определение части знания будет бесконечно порождать другие части, никогда не порождая конкретных предсказаний (ни в одном из "потомков"), будем называть такую часть знания пустой. Подобная возможность не исключена, потому что наше определение рекурсивного порождения носит общий характер, и мы не всегда можем заранее сказать, будет ли вообще данная часть знания порождать предсказания. Таким образом, мы формально принимаем существование пустых частей знания. Конечно, если мы можем доказать, что данная часть знания пуста, мы будем вынуждены отказаться признать ее знанием. Кибернетические системы порождают прогнозы для достижения определенных целей, в конечном счете - выживания и распространения. Истинное знание является инструментом выживания. Знание - сила. возврат к ЭпистемологииКогда мы сравниваем нашу кибернетическую эпистемологию с другими философскими подходами к этой проблеме, сразу проявляются две характерные черты нашего подхода - динамический характер знания в отличие от статических понятий классической рефлексивно-корреспондентной теории, и новый взгляд на понятие субъекта знания или понятия "Я". Классическая рефлексивно-корреспондентная теорияСравним нашу кибернетическую эпистемологию с классической рефлексивно-корреспондентной теорией значения и истины. Один из старейших вопросов философии: "Каково значение слов и фраз языка?". Наивный ответ - те вещи, которые эти слова означают. Такая точка зрения известна, как рефлексивная (отражательная) теория языка. Язык, как зеркало, создает определенные образы, отражения окружающих нас вещей. Рефлексивная теория языка приводит к корреспондентной теории истины - суждение верно, если отношения между образами объектов соответствуют отношениям между самими объектами. Ложь - неправильный, искаженный образ. В частности, создание образов, не относящихся к какому-либо реальному предмету окружающего мира, является ошибкой. При таком понимании значения и истины любое выражение нашего языка не интерпретируемое сразу в терминах наблюдаемых фактов - бессмысленно и ошибочно. В соответствии с наиболее крайней формой подобной точки зрения все ненаблюдаемые понятия должны быть исключены из науки. Такие взгляды были развиты в начале девятнадцатого века и получили название позитивизма (Огюст Конт). Однако, этот подход неприемлем для науки. Даже сила в механике Ньютона становится сомнительной в рамках такой философской позиции, потому что мы не можем ни увидеть, ни потрогать силу, а делаем вывод о ее существовании, лишь наблюдая движение материальных тел. Электромагнитное поле еще менее реально. А ситуация с волновой функцией квантовой механики просто катастрофична. История западной философии, в определенном смысле, история борьбы против рефлексивно-корреспондентной теорией. Теперь мы полагаем, что язык является материалом для создания моделей реальности. Язык - это система работающая, как единое целое, и соответственно должна рассматриваться, как целое. Работа, производимая языком - организация нашего опыта, которая включает, в частности, некоторые проверяемые предсказания о будущих событиях и их результатах. Для того чтобы хорошо справляться с это работой нет необходимости в прямом соответствии каждой его части наблюдаемой реальности. В отличие от нашего динамического понятия моделирования, как порождения предсказаний, классическое понятие отображения статично. Оно мгновенно поднимает такие вопросы, как: "Что на самом деле значит, что один предмет "отображает" другой? Как мы узнаем, что отображение имеет место?". Разделение сознания и материи запутывает еще больше и вызывает вопрос: "Как наши идеи, принадлежащие сознанию, могут отображать объекты, принадлежащие сфере материи?". Кибернетическое понимание знания значительно точнее. Точность достигается за счет введения динамики. Отображение мира в языке представленное в схеме моделирования не обязательно является прямым "отражением", у нас нет необходимости в сравнении этих двух областей реальности. Для того чтобы увидеть, что модель работает, нужно только сравнить вещи из области языка. Все, что было сказано про язык, также может быть перенесено на мышление человека. С кибернетической точки зрения, мысль работает, потому что она воплощает собой определенную модель мира, а не, потому что она как-то статически отображает его. Трудный вопрос об отношении мысли к ее объекту просто не стоит. Субъект знания - "Я"Знание одновременно является объективным и субъективным, потому что оно возникает в результате взаимодействия субъекта (кибернетической системы) и объекта (окружающего мира). Знание о каком-либо объекте всегда относительно - оно существует только как часть данного субъекта. Субъект знания использует его при принятии решений. Так мы можем обозначить субъекта, как пользователя знания. Мы можем изучить отношения между знанием и реальностью - прежде всего, является ли данная часть знания истинной или ложной. Для этого субъект знания, кибернетическая система S, должна стать частью метасистемы S', в терминах которой могут быть выражены знание S и его отношение к реальности. Но теперь знание относится к системе S'. Подобный метасистемный переход может быть повторен много раз, приводя, возможно, к углублению знания, но всегда знание будет относиться к определенной кибернетической системе, для которой оно является моделью для получения прогнозов - ни больше, ни меньше. Кибернетическое понятие знания приводит к органическому объединению объекта и субъекта. Некоторые философы 19-го века начинали свои рассуждения с разделения на "Я" и "не-Я" и рассматривали это положение, как наиболее первичный и очевидный факт бытия. Это выглядело метафизично и излишне для ученых тех лет, потому что они представляли себе мир существующим независимо от своего "Я". Также они считали свои описания явлений природы полностью объективными. Мое "Я" было просто частью окружающего мира, также как и твое "Я", его "Я", другие объекты мира, живые и неживые. Развитие физики, однако, требует особого внимания к процессу получения нашего знания. "Я" присутствует в науке, как наблюдатель в теории относительности Эйнштейна и экспериментатор в квантовой механике. Мы часто говорим о системе отсчета вместо наблюдателя, и измеряющее устройство вместо экспериментатора, но пытаться убрать "Я" бесполезно. Система отсчета и измеряющее устройство всего лишь способ описания активности "Я". В кибернетическом понимании знания и значения, "Я" крепко встроено в знание. Возможно, следующая метафора поможет понять это. Знание есть инструмент. Любой инструмент имеет ручку, за которую вы беретесь, когда используете его. Различные люди (или даже создания с других планет) могут пользоваться одним и тем же инструментом, но когда им пользуются, кто-то обязательно держит ручку, это и есть "Я" знания, смысла и истины. Семантический анализ открывает "Я" в некоторых из наших наиболее важных понятий. Возьмем причинность. Что мы подразумеваем говоря, что A является причиной В? Мы не можем наблюдать само это отношение между явлениями. Мы можем наблюдать только последовательность явлений во времени "B после A", но это могут быть как две подпоследовательности имеющие общую причину, так и просто случайно совпавшие во времени. Действительно же смысл утверждения причинности включает мою свободу позволить или нет произойти А, выбрать межу A и "не A". Тогда смысл фразы "A является причиной В" есть - если я позволю произойти A, то B тоже будет иметь место, но если я не позволю произойти A, то B не будет. Это предположение имеет смысл, оно - модель реальности, но эта модель не возможна без "Я". Для того чтобы проверить причинность должна присутствовать свобода позволить A осуществиться или нет. Единственный источник подобной свободы - "Я". ИнтуицияМы часто используем слова "интуиция", "интуитивно", подразумевая определенное действие наше мысли, которое не может быть представлено состоящим из отдельных элементов и, в частности, не может быть объяснено или проверено. Это результат активизации некоторой невербальной модели мира заключенной в нашем мозге. Иногда мы безусловно уверены в том, что подсказывает нам наша интуиция, иногда мы ощущаем сомнение. СомнениеСомнение является результатом присутствия в сознании нескольких моделей применимых к текущей ситуации. Некоторые из моделей нашего мозга существуют с рождения, другие вырабатываются в течение короткого срока после. Мы можем предположить, что эти модели имеют свойство быть почти уникальными для определенной ситуации, таким образом, они практически никогда не вызывают сомнения. Другие модели развиваются в течение нашей жизни и определяются опытом. Может случиться, что в разные времена две, три или больше невербальных моделей было построено, каждая из которых может быть применена к текущей ситуации. Мы воспринимаем это как сомнение. Это значение слова сомнение отражается в эго этимологии. Так слово "сомнение" можно представить как "со-мнение", т.е. одновременное, параллельное размышление. Английское слово "doubt", очевидно, произошло от слова "double", т.е. двойное мнение.ЯзыкЯзык - это система, которая при управлении ей должным образом, может порождать объекты называемые сообщениями.СообщениеСообщение - это объект, имеющий определенное значение (см. ниже) для некоторого агента.СинтаксисПод синтаксисом языка мы подразумеваем метод, позволяющий отделить объекты являющиеся сообщениями данного языка от остальных объектов. Этот метод может быть неформальным, когда необходим человек, для того чтобы осуществить его, или формальным, когда он может быть реализован при помощи машины. РазборЧасто синтаксис языка определяется недетерминистической процедурой G, которая порождает все разрешенные сообщения. Процедура, которая для любого данного объекта решает, мог ли он быть порожден G, и если да, то каким образом, называется разбором. возврат к СинтаксисуРазличные языки имеют значительно различающиеся правила синтаксиса, каждые для своего специфического языка, если язык формальный, то они обычно могут быть легко описаны. Нам нет больше особого смысла обсуждать синтаксис с общей точки зрения. Мы только хотели бы упомянуть две синтаксические единицы, которые почти всегда присутствуют в языке, даже если и называются по-другому - это символы и предложения. СимволСимвол - это минимальная единица (подсистема) языка, которая не может быть разделена на части. Например, в естественном человеческом языке роль символов играют морфемы (такие как корень слова, приставки, суффиксы и т.д.). В языках программирования символы обычно называются знаки (tokens). ПредложениеПредложение - это минимальная единица языка, которая может иметь собственное значение, будучи отделена от остального сообщения. Очень часто сообщение языка представлено последовательностью или деревом предложений. Предложения естественного человеческого языка, с некоторыми оговорками (например, по поводу использования местоимений), являются в наших построениях предложениями в формальном смысле. В языках программирования предложения часто называются утверждениями, здесь существует различие, вызванное широким пониманием значения термина утверждение, как некоторого описания ситуации, похожего на суждение в логике. Это более широкое понимание мы и подразумеваем при формализации понятия утверждение. Утверждения языков программирования в нашей терминологии обозначаются как команды (см. ниже). СемантикаДанное нами определение знания, позволяет определить понятия значения и истины. ЗначениеПо определению сообщение должно иметь смысл или значение. Но что такое значение? Прежде всего, сообщения всегда адресуются конкретному агенту, в частном случае, это может быть сам отправитель. Также предполагается, что они влияют на действия, совершаемые агентом, иначе отсутствовал бы смысл в их порождении и передаче. Нам известно только два способа изменить действия агента. Первый - изменить состояние мира, с которым объект связан. Второй - изменить модель агента об окружающем мире (если возможно). Так можно разбить все сообщения на две семантические категории: команды и утверждения. КомандаКоманда или повелительное сообщение - сообщение, напрямую изменяющее состояние мира, с которым связан получатель, то есть множество его возможных действий. Изменяя состояние окружающего мира, источник сообщения может исключить возможность осуществления получателем некоторых действий, или наоборот создать новые возможности. Значением команды является то, как она изменяет состояние получателя. В предельном классическом случае команда вообще не оставляет получателю выбора, его действия однозначно определяются командой. Компьютерные языки могут служить иллюстрацией подобного типа семантики. Другой пример управление ракетой с земли. Это управление осуществляется при помощи языка электромагнитных сигналов посылаемых ракете. В этом случае команды почти не оставляют выбора для ракеты, потому что невозможно достигнуть абсолютной точности при использовании в управлении непрерывных величин. Подобная ситуация типична, а количество почти варьируется от случая к случаю. УтверждениеДля простейшей кибернетической системы, не имеющей модели мира, язык команд - единственный язык который может быть понят. Если система имеет модель мира, например, как человек или робот, полученное сообщение не ограничивает действия системы непосредственно, но изменяет ее модель мира. Очевидно, что это будет влиять на действия системы, но не напрямую, и возможно не сразу. Мы называем такие сообщения утверждениями. Содержание и значение утверждения есть знание, которое оно передает получателю. Заметим, что когда мы просто говорим "знание", мы имеем в виду лишь воздействие на порождение предсказаний и не делаем различия между истинностью или ложностью (ошибочностью) знания. Так для того чтобы быть содержательным, предложение должно отвечать требованиям, предъявляемым к знанию, мы должны знать, как порождать на его основе предсказания или инструменты для порождения предсказаний, или порождать инструменты для порождения инструментов и т.д. Ели мы можем охарактеризовать путь от утверждения до предсказаний в строгих терминах, то значение утверждения является строгим. Если мы представим этот путь нечетко, то и значение является нечетким. Если мы не можем увидеть путь от утверждения до предсказаний, то это утверждение бессмысленно. ПонятиеПонятие - любая часть языка, используемая для придания значения языковому объекту. В человеческом языке мы разделяем нейронные и логические понятия (см. Человеческий язык ниже). АбстракцияФункции или отображения R состояний мира wi в их представления ri (состояния мозга системы субъекта S) представлены в схеме моделирования вертикальными линиями. Такое отображение всегда является абстракцией, некоторые стороны состояния мира обязательно исключаются, абстрагируются, при скачке от реальности к ее описанию. Роль абстракции очень важна и состоит в том, чтобы уменьшить количество информации, которое необходимо обработать S для принятия решения. Мы часто используем одно и тоже слово для обозначения процесса и его результата. Так все представления ri полученные отображением с абстракцией называются абстракциями. Например, мы можем сказать, что треугольник есть абстракция всех возможных треугольников. Мы часто используем и будем в дальнейшем использовать термины абстрактное понятие или просто понятие, как синонимы абстракции. Однако всегда необходимо помнить, что абстракция или абстрактное понятие - не просто конкретное представление (как языковой объект), но процедура определяющая, что исключатся, и что не исключается при отображении. Очевидно, что выбор объекта несущего результат абстракции более или менее случаен, сущность понятия заключается в процедуре преобразующей wi в ri. Для данной функции представления R и конкретного представления r мы можем построить специальную функцию, которая будет распознавать принадлежность данного состояния мира w к абстракции r. Определим эту функцию следующим образом:
Здесь истина и ложь два символа представляющие два возможных результата вычисления функции. Функции подобные Pr известны как предикаты. Предикат Pr(w) принимает значение истина для тех и только для тех состояний w, которые представлены r. Всякий раз, когда мы говорим о предикате, мы также можем говорить о множестве, а именно, множестве всех состояний мира w, для которых данный предикат истинен (принимает значение истина). Мы будем называть подобное множество областью абстрактного понятия. Иногда удобно определить абстракцию при помощи ее области, например, член семьи Джона Смита может быть определен просто посредством списка соответствующих людей. Но универсальным методом является определение по свойству, в таком случае переформулировка при помощи множества не поясняет понятие. Если мы "определим" абстрактное понятие треугольника как множества всех возможных треугольников, все равно останется необходимость определить, что собой представляет конкретный треугольник. Реальное определение (абстрактного) треугольника есть предикат, процедура, которая может отличить треугольник от чего-либо еще. Кибернетическая система может быть заинтересована, в зависимости от ее текущих целей, в различных сторонах, аспектах реальности. Разбиение целостного всеохватывающего состояния мира wi на различные части и аспекты одна из задач абстракции. Предположим, я вижу чайную чашку на столе и хочу взять ее. Я могу сделать это благодаря модели находящейся в моей голове. Эта модель позволяет управлять движением моей руки в направлении чашки. При этом модель содержит только расположение и размеры чашки, но, скажем, не форму стола, или наличие других вещей, если они не мешают движению руки к чашке. При помощи следующего движения я могу захотеть взять сахарницу. Также я могу осознавать, что на столе находится ровно две вещи: чайная чашка и сахарница. Но это осознание результат того, что у меня есть две отдельных абстракции: отдельной чашки и отдельной сахарницы. Абстракция разбивает мир на части, игнорируя одно и включая другое. Это также относится не только к объектам, но и к процессам. В самом деле, единственная возможность определения, что есть процесс (неформально - часть мира) требует обращения к механизму абстракции, то что оставляется - процесс, то от чего абстрагируемся, не является данным процессом, но "другим процессом". Степень абстракции может быть оценена при помощи двух параметров - ее области и уровня, соответственно, существует два способа увеличения абстрактности. Понятие области было введено выше. Чем шире область понятия, тем выше его абстрактность. Классический пример - кошка, хищник, млекопитающее, и т.д. до животного. Таким образом, содержательность понятия (т.е. специфичность его процедурного описания) уменьшается по мере роста абстрактности. В конце концов, мы приходим к таким универсальным абстракциям, как объект или процесс, которые почти не несут никакой информации. Уровень абстракции - это число пройденных метасистемных переходов. В схеме моделирования субъект знания система S является метасистемой по отношению к окружающему миру. Действительно, S управляет миром - она получает на входе информацию из мира, создает представления, производит выбор действия a, и выполняет его, изменяя состояние окружающего мира. Мозг системы S, как носитель модели, находится на метауровне и является, так сказать, "мета-миром". Считая уровень мира нулевым, мы определяем абстракции, возникающие в мозге, как абстракции первого уровня. Однако, создание моделей реальности не обязательно ограничивается первым уровнем абстракций. Мозг первого уровня может стать миром для нового мозга, мозга второго уровня. Естественно, при этом создаются необходимые механизмы - происходит следующий метасистемный переход. Мозг, которым мы обладаем, как известно, имеет многоуровневую структуру. "Мозг" первого уровня, это всего лишь наши сенсорные органы. Глаз состоит из сетчатки и приспособлений для фокусировки света на ней, он создает представление об окружающем мире. Сетчатка создает первый уровень абстракции, который служит входом (новым миром) для второго уровня моделей мозга, чьи представления будут абстракциями второго уровня. Эти абстракции в свою очередь, становятся входом для следующего уровня моделей, и так далее. Человеческий язык также имеет иерархическую структуру абстракций. Понятие числа может служить примером абстракции второго уровня в этой структуре. Конкретные числа являются абстракциями первого уровня. Мы выводим их напрямую из нашего опыта, используя счет в качестве функции представления в модели называемой арифметикой. Мозг (в нашем техническом смысле) модели арифметики включает некоторый физический носитель для представления конкретных чисел, такой как пальцы, камешки или значки на бумаге. Конкретное число, скажем три, является абстракцией трех яблок, трех овец и т.п., любых трех предметов, которые мы можем посчитать. Понятие числа представляет собой абстракцию конкретных чисел один, два, три и т.д., которые сами являются абстракциями и существуют в модели первого уровня, и не могут быть найдены где угодно. В алгебре понятие числа само становится материалом для дальнейшей абстракции, и подобный метасистемный переход может быть повторен много раз. Человеческий языкДве кибернетические системы участвуют в работе человеческого языка и мышления. Первая система - человеческий мозг. Он создает модели реальности, которые воплощаются в виде нейронных сетей, и поэтому, мы назовем их нейронными моделями. Нейронные модели используют нейронные или, по-другому, интуитивные понятия (функциональные элементы). Вторая система представлена языком. Он проявляется в языковой деятельности общества. Языковая деятельность создает модели реальности, материальную основу которых составляют языковые объекты. Функциональные элементы этой системы логические (языковые) понятия. Нейронные и логические понятияМозг и языки тесно взаимосвязаны. Язык - это потомок, и в каком-то смысле, продолжение мозга. Используя язык, мы создаем новые модели реальности, которые не были встроены в наш мозг природой. Некоторые подструктуры нашего мозга являются представлениями состояний окружающего мира. Некоторые из языковых объектов есть представления этих представлений, мы считаем их наиболее конкретными, низкоуровневыми понятиями. Примером могут являться понятия стоящие за словами "кошка", "яблоко", "бежать". Но человеческий язык, также как и человеческий мозг, является многоуровневой иерархической системой. Мы создаем теории, в которых используем абстракции высоких уровней, логические понятия (напомним, что понятия это функциональные элементы) механизмы которых требуют некоторой надстройки мозга, которая представлена языковыми объектами. Соответственно, хотя мы можем считать малые числа, такие как два или три, нейронными понятиями, потому что мы сразу осознаем их, но большие числа, например, 137, могут функционировать, только используя внешние по отношению к мозгу представления. Понятия высших уровней не заменяют понятия низших уровней, как должно было быть, если бы элементы языка отражали вещи "как они есть на самом деле", но образуют новую языковую реальность, суперструктуру над низшими уровнями. Мы не можем выбросить понятия низших уровней, даже если бы нам этого хотелось, потому что тогда исчезла бы связь между теорией и наблюдаемыми фактами. Предсказания, порождаемые верхними уровнями, формулируются в терминах нижних уровней. В этой иерархической системе верхушка не может существовать без основания. Мы свободно называем понятия низкого уровня языковой пирамиды конкретными, а высокого уровня абстрактными. Это верно до тех пора, пока мы понимаем, что абстракция это не всегда абстракция некоторого множества наблюдаемых вещей, но также, что более важно, абстракция абстракций нижних уровней той же языковой системы. Полная абстракция от специфических качеств и свойств вещей ведет в конце концов, по мере увеличения области понятия, к потере содержания, к таким понятиям, как некоторый и что-то. Абстрактность понятия является в действительности его "конструктивностью", высотой позиции в иерархии, степенью необходимости использования промежуточных языковых объектов для получения смысла. Так в алгебре, когда мы говорим, что х это переменная, то абстрагируемся от ее значения, но возможные значения сами по себе суть числа, то есть языковые объекты, полученные при помощи абстракции в процессе счета. Этот промежуточный языковой уровень чисел должен стать реальностью перед тем, как мы будем строить следующий уровень абстракции. Без промежуточного уровня прямая абстракция от вещей, которые можно сосчитать, к понятию переменной невозможна. ФормализацияКогда язык используется для относительно узких профессиональных целей, существует тенденция к ограничению числа используемых терминов и в придании им более точного и постоянного значения. Мы говорим, что язык формализуется. Если этот процесс доводится до логического завершения, то язык становится полностью формализованным или формальным. Язык формален - если его использование основано только на "форме" языковых объектов, а не на их интуитивном значениях. Для того чтобы сделать это определение более точным, мы должны установить множество ощущений (являющихся абстракциями) и действий, которые воспринимаются и производятся одинаково всеми членами общества использующего язык. Мы будем ссылаться на эти ощущения и действия, как на универсально определенные. Язык является формальным, если все процессы, вовлеченные в его использование, а именно функция представления R(w), функция моделирования M(r) и (для командных языков) множество возможных действий, выражены в терминах универсально определенных ощущений и действий. Обычно предполагается, что универсально определенные ощущения и действия могут быть поручены машине. Этот вопрос остается открытым, хотя и является реалистичным допущением. Мы принимаем его с оговоркой, что если существует сомнение по поводу конкретной абстракции или действия, она (оно) должна быть исключена из универсально определенного множества. Тогда формальный язык может являться языком годным к использованию правильно сконструированной машиной. Машина подобного вида становится объективной моделью реальности, независимой от человеческого мозга создавшего ее. Это делает возможным серию последовательных метасистемных переходов, где каждый последующий уровень имеет в качестве основы хорошо определенную, объективную реальность предыдущих уровней. Так язык становится ультраметасистемой, демонстрируя эффект лестницы (см. [Tur77]) и взрывной рост объема и мощности. Также как изобретение основных принципов использования инструментов для усовершенствования инструментов дает толчок последовательности метасистемных переходов и созданию индустриальных систем, так изобретение принципов описания (моделирования) при помощи формального языка дает толчок созданию иерархической системы формальных языков, на которой основывается вся современная наука. Четыре типа языковой деятельностиКлассификация языков по степени абстракции и формализации ведет к следующим четырем типам языковой деятельности [Tur77] (см. таб.1). Таблица 1
Искусство отличается неформализованностью и конкретностью языка. Слова и языковые элементы других типов важны в искусстве только, как символы, пробуждающие определенные комплексы ментальных состояний и эмоций. Философия отличается абстрактным и неформальным мышлением. Комбинация высокоабстрактных языковых конструкций используемых в философии с низким уровнем формализации, требующим высоко напряжения интуиции, и делает язык философии наиболее сложным из языков. Философия граничит с искусством, когда использует художественные приемы для стимулирования интуиции. Она граничит с теоретической наукой, когда развивает концептуальные подходы, которые будут использованы при построении формальных научных теорий. Язык описательной науки должен быть конкретным и точным. Формализация синтаксиса сама по себе не играет большой роли, но оказывает влияние в качестве критерия точности семантики. ИстинаЧасть знания истинна, если предсказания сделанные субъектом (пользователем) знания на ее основании истинны. Предсказание, что тест T окажется успешным, обозначается T!, оно истинно, если тест T в самом деле завершается успешно. Давайте проверим системный аспект этого определения. Утверждения языка представляют некоторые части знания, которые могут быть восстановлены из высказываний получателем сообщения (получатель сообщения может одновременно являться и его отправителем). Эти части знания порождают, в конце концов, некоторые предсказания: T1!, T2!, … и т.д., что соответственные тесты успешны. Знания о мире составляют метасистему по отношению к миру, в котором могут производиться тесты T1!, T2!, … Когда мы говорим об утверждениях и определяем различные их свойства, мы создаем еще один уровень метасистемы, происходит метасистемный переход. Так первый уровень - это уровень использования знаний, а второй - уровень анализа и оценки знаний. Будем обозначать g(S) процесс проверки и анализа утверждения S с целью определения истинности S. Мы будем рассматривать его как тест. Его успех значит, что S истинно, а неудача не значит ничего, потому что она может являться результатом, как ложности S, так и невозможности для субъекта определить, что S действительно истинно. В нашем определении процесса g скрыто допущение корректности, под которым мы понимаем, что g(S) для какого-то S конечен, и g(S)!, когда S истинно:
Как нам получить корректную процедуру g? В идеале мы хотели бы получить истинность утверждения прямой проверкой. ПроверкаПроверка - это прямое непосредственное использование утверждения, для определения его истинности. В принципе, предсказания проверяемы. Вы только должны запустить тест, соответствующий предсказанию и подождать пока он не завершится. Так, если предсказание верно, то существует, в принципе, метод его проверки, даже если он может потребовать огромного количества времени, что на практике может быть невозможно. Ситуация хуже в случае общих утверждений, которые могут генерировать бесконечное множество предсказаний. Невозможно проверить их все. Мы должны положиться на некоторый вид доказательства. ДоказательствоПод доказательством утверждения S мы подразумеваем любой тест g(S) успешное завершение которого субъект знания принимает, как доказательство истинности S. Это подразумевает, что субъект готов принять решение на основе предсказаний порождаемых S. Когда утверждение не может быть непосредственно проверено, остается возможность принять его в качестве истинного на основе нашей интуиции. Например, рассмотрим тест T стадии, которого могут быть представлены отдельными символами некоторого языка. Пусть процесс теста T определен таким образом, что если текущее состояние представлено символом A, то следующее состояние тоже A, и если текущее состояние другой символ, то процесс успешно завершается. Это определение абсолютно убеждает нас в том, что T бесконечен, даже если это не может быть проверено. В логике мы называем некоторые, наиболее непосредственные, из таких утверждений аксиомами и используем их как основу для вывода истинности других утверждений. В естественных науках некоторые самоочевидные истины служат в качестве отправных точек при построении теорий. Наше определение доказательства отождествляет истинность S с предсказанием g(S)!, где процесс g, как было определено выше, некоторый процесс проверки и анализа утверждения. Новым здесь является то, что мы отнесли g непосредственно к пользователю (субъекту) знания. Теперь для оправдания использования конкретного g мы можем обратиться к интуиции или опыту пользователя. Но обоснованно ли это? Как нам узнать, что данный процесс g верен? Можем ли мы в нашем определении доказательства ограничить процессы только верными процессами? К сожалению нет. Для корректности g необходимо, чтобы для всех S, g(S)! было истинно, только если S истинно. Очевидно, что это общее утверждение, а не предсказание. Оно не может быть непосредственно проверено. Таким образом, мы вынуждены использовать другую (или ту же) процедуру g для того чтобы определить что значит ее истинность:
Но как мы узнаем, что g верна? Это замкнутый круг. Для того чтобы формально определить верность процедуры g сначала необходимо определить верность ее самой, или схожего процесса. Так верность доказательства не может быть сведена к чему-либо более надежному. Нет абсолютного критерия истины. Проверка может являться таковым, но, к сожалению, мы не можем проверить бесконечное число фактов. Таким образом, мы просто допускаем, наш процесс g верен и что доказываемые утверждения в самом деле истинны. Мы определяем значение утверждения "S истинно" как предсказание - g(S)!. Если мы обнаруживаем ошибку (см. противоречие ниже), то меняем что-нибудь в g и пробуем снова, предполагая, что новая g верна. Так происходит и в естественных науках и в математике, другой дороге к истине не существует. Может показаться, что все эти рассуждения являются незначительными замечаниями, но это не так. В нашей эпистемологии утверждение, для того чтобы обрести смысл, должно быть интерпретировано как предсказание или иерархический генератор предсказаний. Мы проанализировали смысл утверждения "S истинно" и показали, что оно обязательно включает ссылку на определенный процесс g. Также можно утверждать, что данный нами анализ не так уж и важен, потому что во всех практических случаях мы можем отождествить высказывание "S истинно" с утверждением S самим по себе. Но это позволит лишь обойти проблему, а не решить ее. Этот вопрос, так или иначе, обязательно встанет при рассмотрении логических связок, к которому мы переходим сейчас. КонъюнкцияПусть S1 и S2 некоторые утверждения. Рассмотрим утверждение "S1 и S2" называемое конъюнкцией двух утверждений. Каково его значение? Так как значение утверждения заключается во множестве порождаемых им предсказаний, то, объединяя два утверждения, мы должны учитывать их оба, то есть все предсказания порождаемые каждым из них. Мы приходим к следующему определению. Первый уровень определения конъюнкцииЕсли S1 и S2 два утверждения, то система, порождающая только S1 и S2, является их конъюнкцией и обозначается - S1S2. Мы называем это определение определением первого уровня, потому что оно непосредственно создает на основе двух утверждений из некоторой области новое утверждение в той же области, без необходимости обращения к понятию истинности или другом анализу утверждений. Второй уровень определения конъюнкцииПусть даны два утверждения S1 и S2. Определим вкратце процесс (тест) T следующим образом. Запустим процесс доказательства g(S1). Если он окончится неудачей, закончим T неудачей. Если он закончится удачно, запустим g(S2). Если этот второй процесс завершится удачно, то окончим T удачно. Если он закончится неудачно, то завершим T неудачей. (Очевидно, что если любой из этих двух процессов бесконечен, то T также бесконечен). Тогда предсказание T! есть конъюнкция S1 и S2, то есть утверждение, что оба исходных утверждения верны. Конечно, определенная таким образом конъюнкция есть утверждение о том, что S1 и S2 истинны, обычно так и определяется конъюнкция. Когда рассуждения неформальны, то между приведенными двумя определениями не делается разницы, как и в случае S и g(S)!. В формальной трактовке мы должны отдавать предпочтение определению первого уровня, потому что оно формализует то, как мы на самом деле используем конъюнкцию. Если определение второго уровня приемлемо, то для того, чтобы использовать его, мы должны сначала извлечь из него генератор первого уровня, как мы делали, когда получали заключение о возможности использования S из утверждения, что "S истинно". ДизъюнкцияДизъюнкция (включающее или) S1 и S2, обозначаемая как "S1 или S2", есть утверждение, что хотя бы одно из двух утверждений истинно. Оказывается, что для дизъюнкции невозможно дать определение первого уровня, возможно только определение второго уровня. Пусть даны два утверждения S1 и S2. Запустим параллельно два процесса: g(S1) и g(S2), назовем этот общий процесс T, и завершим его удачно когда (и если) хотя бы один из двух параллельных процессов завершится удачно. Тогда дизъюнкция S1 или S2 есть предсказание T!. ИмпликацияУтверждение "если-то" или импликация, S1ЮS2 есть условное утверждение, что реализуется S2 если S1 истинно. Здесь S1 является антецедентом или посылкой, а S2 консеквентом или выводом. Два вида импликации разделяются на основании того, как они применяются. Логическая импликация имеет место, когда S2 является частью значения S1, таким образом, когда мы говорим S1, мы также говорим и S2. Материальная импликация соединяет два утверждения, которые могут быть никак не связаны по смыслу. Она устанавливает связь насильно, так сказать, декларируя ее как эмпирический факт, вид закона природы. По терминологии Канта логическая импликация дает аналитическое суждение, а материальная синтетическое. В качестве простого примера, рассмотрим две импликации: (1) (x есть яблоко) Ю (x есть фрукт) Первая импликация логическая, потому что быть фруктом является частью быть яблоком. Вторая импликация материальная, потому что яблоко по определению являющееся плодом некоторого класса деревьев не обязательно может быть съедобным. Существуют несъедобные яблоки, таким образом, истинность второго утверждения может зависеть от области возможных значений переменной x. Другие примеры: (S1S2)ЮS1 является логической импликацией, а 2 + 3Ю3 + 2 материальной (это знаменитый тип синтетических суждений априори Канта). Логическая импликацияВ нашем формализме логическая импликация фиксирует тот факт, что S1 это генератор порождающий S2. Рассмотрим два утверждения S1 и S2. Приготовим следующий тест T. Запустим S1 и будем сравнивать каждое порожденное утверждение (не только предсказания) с S2. Если сравнение удачно, завершим T успехом. Тогда логическая импликация S1ЮS2 есть предсказание T! Материальная импликацияДля того чтобы формализовать материальную импликацию мы построим машину, которая пытается доказать S1 и если это удается, порождает S2. Рассмотрим два утверждения S1 и S2. Построим генератор, запускающий тест (S1) и если он удачен, порождает S2. Этот генератор является материальной импликацией S1ЮS2. В математической логике не существует разницы между материальной и логической импликацией, но в соответствии с нашим определением импликация, используемая в ней - материальная. На самом деле, математическая логика полностью формальна, синтаксична. В ней никак не учитывается значение высказываний, определено только использование составного утверждения, и это использование состоит в следующем, если посылка верна, то вывод также считается верным. Это материальная импликация. Импликация формальной логики имеет забавное свойство, если посылка S1 ложна, то не имеет значение каков вывод S2, и импликация истинна. Это смущает всякого, кто начинает изучать формальную логику, как противоречащее нашей интуиции и здравому смыслу. В нашей интерпретации материальная импликация с ложной посылкой не является истинной в смысле ее истинности как предсказания, или генератора предсказаний. Но она и не ложна. Такая импликация просто пуста. Мы считаем, что это находится в согласии с нашими интуитивными ожиданиями. Определение логической импликации это второй уровень метасистемы, так как оно описывает отношения между высказываниями. Оно даже не требует использования понятия истинности. Когда определение материальной импликации нуждается в нем. Оно не может быть понято без обращения к процессу g. Отрицание и ложностьУтверждение, что утверждение S ложно, "не S", есть отрицание S. Закон исключенного третьегоВ соответствии с принятым пониманием истинности и ложности, что не истинно, то ложно, и наоборот. Следующее утверждение известно, как закон исключенного третьего - для любого утверждения S, либо S, либо его отрицание обязательно верно. Другими словами, каждое утверждение либо истинно, либо ложно, третьей, промежуточной возможности, не существует. Принцип прогрессивной формализации позволил нам неформально использовать отрицание и закон исключенного третьего, так же как и другие логические связки. Однако пришло время формализовать это понятие. В дальнейшем мы увидим, что закон исключенного третьего не так уж и очевиден (хотя, в конце концов, он будет, в нашем философском подходе, полностью восстановлен в своих правах). Что означает ложность утверждения? Для того чтобы быть содержательным утверждение о ложности должно быть, как и любое другое утверждение, представлено в виде иерархического генератора предсказаний. Позвольте начать с простейшего утверждения, которое является просто единичным предсказанием. Рассмотрим предсказание T!. Если оно не истинно, то тест T завершается неудачей или бесконечен, то есть, никогда не завершается. Мы уже определили, что значит или. (В действительности мы понимаем это "или", как исключающее, но в нашем рассмотрении должны использовать включающее "или".) Таким образом, мы должны определить, что значит: (1) T завершилось неудачей; Первое утверждение легко понять. Очевидно, что это предсказание о том, что T остановиться и сравнение результатов с символом Неудача будет успешным. Рассмотрим теперь утверждение, что T бесконечно. Мы будем обозначать его как T?. Оно является не предсказанием, а генератором предсказаний. Действительно, T это тест, а в наше определение теста входит понятие подтетста останова E(ti), который применяется к состояниям теста ti, i = 1, 2, … и т.д., и для каждого состояния определяет за конечное время, тест завершился успешно (Успех), неудачно (Неудача) или еще не закончился (Дальше). Следовательно, утверждение, что состоянию ti соответствует Дальше, есть предсказание успешного завершения теста запустившего E(ti) и сравнившего его результат с символом Дальше. Теперь мы можем определить, в чем смысл утверждения, что T бесконечно - это генератор порождающий следующую серию предсказаний: t1 есть Дальше Таким образом, утверждение T?, что предсказание T! ложно, есть генератор бесконечного множества предсказаний и не может быть проверено непосредственно. Соберем вместе все три случая, которые могут иметь место при проверке предсказания (см. табл. 2). Таблица 2
Теперь рассмотрим произвольный генератор. Он должен считаться ложным, если хотя бы одно порождаемое им предсказание ложно. Однако мы часто встречаемся с ситуацией, когда, размышляя над двумя противоречивыми предсказаниями, не можем решить какое из них ложно. Ясно, что это не хорошо, когда порождаются два таких предсказания. Поэтому мы можем построить наше определение только на основе наличия противоречивости. Однако для того, чтобы установить, что предсказание ложно нам может снова понадобиться определить ложность генератора, потому что отрицание предсказания может быть, как мы видели выше, бесконечным генератором предсказаний. Следовательно, мы основываем наше определение на явном факте проверяемого противоречия. ПротиворечиеСитуация, когда существует предсказание T!, что данный тест T завершится успешно, и одновременно предсказание T×, что тест завершится неудачно, определяется нами, как (проверяемое) противоречие. возврат к Отрицанию и ложностиУтверждение T?, что тест T бесконечен, противоречит утверждению, что он конечен. Действительно из конечности T мы заключаем, что существует состояние tn, такое, что подтест останова E(tn) даст в результате Успех или Неудача. Но из T? следует, что для всех ti, включая tn, E(ti) есть Дальше. Таким образом, для всегда конечного теста, который сравнивает результат E(ti) с символом Дальше, мы имеем два противоречащих предсказания. Пусть T есть тест. Утверждения T!, T× и T? будем называть атомами. Выдвигая одновременно любые два из этих утверждений, мы получаем противоречие. Всегда нужно помнить, что утверждение T?, хотя и является атомом, но не является предсказанием. Теперь мы можем определить, что такое ложность. Ложность - это противоречие с истинностью. Более формально, отрицание S значит, что существует такое истинное высказывание X (контекст), что использование вместе X и S порождает противоречие. Следовательно, в дополнении к процессу доказательства истинности g(S) мы вводим процесс `g(S), который предназначен для нахождения такого истинно доказуемого утверждения X, что S вместе с X порождают противоречие. Отметим, что на этой стадии развития нашего основного определения, определение фундаментальных процессов g и `g остается неформальным. Читатель имеет все основания сомневаться, что непротиворечивое и формальное определение этих процессов вообще возможно. Однако оно возможно, более подробное изложение этого вопроса можно найти в [Tur87]. Мы видим, что после того, как значения логических связок были строго определены, закон исключенного третьего, который теперь принимает форму:
не выглядит столь очевидным, как до формализации. Для его выполнения требуется, чтобы один из процессов g(S) или `g(S) завершился успешно. Следовательно, он сильно зависит от природы и специфического характера этих двух процессов. Совсем не очевидно, что один из них обязательно должен быть конечен. Более того, может быть показано, что в наиболее общем понимании этих процессов, когда g(S) есть доказательство S и `g(S) есть отрицание S, в некоторых непротиворечивых аксиоматических системах, всегда существуют такие утверждения, для которых оба процесса бесконечны (теорема Геделя). Это выглядит как очень хороший предлог для изъятия закона исключенного третьего, что и было сделано в рамках интуиционистского подхода. Однако, в нашей философии интерпретация g(S) и `g(S) такова, что закон исключенного третьего, как и вся остальная классическая логика остается в силе. Основания логики и математикиОсновной семантический принцип, используемый нами в проекте Principia Cybernetica, заключается в том, что все утверждения должны иметь ясно определенное (формальное) значение, и что значения выражений образуют иерархический генератор предсказаний. Мы видим, что для того, чтобы придать формальное значение понятиям истинности и ложности, как и основным логическим связкам, мы должны ввести определенные процессы g и `g которые представляют, соответственно, доказательство и опровержение утверждений субъектом математического знания. В дальнейшем на этом основании должна быть развита теория, которая будет отвечать на вопросы связанные с основаниями математики, включая логику и теорию множеств (см. краткий обзор вопроса в [Tur87]). Вот некоторые. 1. Математика является областью науки. Объекты математического знания той же природы, что и в других науках - абстракции явлений мира в котором мы живем. Как и любая другая область науки математика имеет собственный тип объектов, с которыми она работает, а именно, символические модели мира, построенные другими ("естественными") науками, и модели моделей создаваемые самой математикой. Не существует принципиальной разницы между математикой и естественными науками с точки зрения методов получения знаний и их достоверности. 2. Наша теория связана с символической математикой, которая в настоящее время является официальным языком всех математиков. Хотя признается важность трехмерной геометрической интуиции, никаких попыток анализа ее роли не делается. 3. В дополнение к механическим процессам вычисления и доказательства, которые играют столь важную роль в современной математике, мы вводим метамеханические процессы, которые не могут быть смоделированы на таких устройствах, как машина Тьюринга, или определены посредством рекурсивных функций. Метамеханические процессы отличаются от механических процессов тем, что они управляются субъектом знания, то есть пользователем или разработчиком. В концептуальном аппарате современной физики, невозможность разделения явления и наблюдателя, то есть объекта и субъекта знания, хорошо знакома. Понятие пользователя в нашей теории очень близко к понятию наблюдателя в физике. 4. В рамках нашего подхода мы интерпретируем фундаментальные аспекты математики и логики. Мы показываем, что существует два способа определения понятия истинности в нашем формализме, то есть определения процессов g(S) и `g(S). Один ведет к интуиционистской, а другой к классической логике. 5. Множества теории множеств интерпретируются, как процессы, порождающие объекты. Метамеханические процессы используются для не рекурсивно-перечислимых и несчетных множеств. Аксиомы системы Цермело-Френкеля, за исключением аксиомы выбора, доказываются в качестве теорем. (Интерпретация аксиомы выбора остается открытой.) Парадоксы логики и теории множеств объясняются. Мы показываем, что объекты и утверждения, приводящие при неформальном рассмотрении к парадоксам, в нашей теории не интерпретируемы, бессмысленны. 6. Полнота теории множеств доказывается. Это не противоречит с результатом Геделя о невозможности доказательства полноты теории внутри нее самой, потому что наша теория не может быть формализована в теории множеств. ТеорияМы разделяем конкретные утверждения и теории. Если путь от утверждения до проверяемого предсказания короток и несомненен, то мы называем такое утверждение конкретным. Теория - это утверждение, которое может породить широкий спектр предсказаний, но только посредством некоторых промежуточных шагов, таких как рассуждения, вычисления или использование других утверждений. Таким образом, путь от теории к конкретным предсказаниям может быть не единственным и часто спорным. Между двумя предельными случаями - утверждениями, являющимися очевидными фактами, и чистыми теориями лежит широкий спектр промежуточных случаев. Научные теории, находящиеся на самом высоком уровне, не выводятся из наблюдаемых фактов. Они строятся в творческом порыве, и их полезность может быть показана только потом. Эйнштейн писал: "Физика - это развивающаяся логическая система мышления, фундамент которой не может быть получен из предыдущего опыта в соответствии с каким либо индуктивным методом, но дается только свободной фантазией"[Ein36]. Так как теории обычно порождают бесконечное число предсказаний, они не могут быть непосредственно проверенны. Но они могут быть опровергнуты. Для этого достаточно определить наличие лишь одного ложного предсказания. Утверждение об истинности теории по существу имеет то же значение, что и простое конкретное суждение, мы обращаемся к некоторому опыту, который подтверждает или не подтверждает, принятие решений на основании этого утверждения. Когда этот опыт уже в прошлом, мы говорим, что истина установлена. Когда он ожидается в будущем, мы говорим, что он гипотетичен. Не существует принципиальной разницы между конкретными утверждениями и теориями, и то и другое разновидности моделей реальности, которые мы используем для принятия решений. Факт может превратиться в иллюзию, галлюцинацию, обман или недоразумение. С другой стороны, признанная теория может рассматриваться как факт. И мы должны критически принимать и факты и теории, и перепроверять их по мере необходимости. Разница между фактами и теориями лишь количественная - длина пути от утверждения до конкретного предсказания. БлагодарностиПриятной для меня является обязанность поблагодарить моих коллег по проекту Principia Cybernetica - Френсиса Хейлигена и Клифа Джослина за интенсивное обсуждение различных аспектов проекта, включая и те, что были изложены в данной статье. |