birmaga.ru
добавить свой файл

1
В.И. Шалак


ПРОТОЛОГИКА*

В статье рассматривается вопрос о возможности создания протологики как теории оперирования объектами мысли. Отличительной чертой протологики является то, что ее язык изначально не фиксирован, и логический субъект способен расширять его посредством операции определения. Имеет место теорема о полноте, из которой следует, что в протологике представимы все эффективно вычислимые функции арифметики.
PROTOLOGIC

In the article we consider possibility to create theory of thought objects and rules for dealing with them. It is an essential feature of protologic that it's language is not fixated from the beginning and can change in the course of deduction. It turns out that all computable functions of arithmetic can be represented in the language of protologic.
1. Общая мотивация

Время от времени в работах разных авторов проскальзывает мысль о том, что может существовать теория оперирования с объектами мысли, которая по своей природе гораздо более фундаментальна, чем современная логика. Для ее обозначения иногда используют термин протологика. Но никто не знает, что это такое.
«Идея создания теории о мыслях, объектах мысли, и о том, как они сочетаются друг с другом, завораживает. Если логика является наукой о правильном оперировании с объектами мысли, то эта теория должна быть частью или даже введением в логику - протологикой» [1].
Оглядываясь назад, можно предположить, что в XX в. наиболее близко к ее построению приблизились М. Шейнфинкель [2], Х. Карри [3] и А. Черч [4].
«Сейчас уже очевидно, что в комбинаторной логике мы имеем дело с понятиями такой степени общности, которые ранее не рассматривались. Поэтому ни интуиция, ни опыт не могут служить нам помощниками. Задача комбинаторной логики – исследовать эту новую область и выработать новые интуиции. Достичь этого мы можем лишь путем проб и ошибок» [5].

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


Философам лучше, чем кому-либо, известно, что форма и содержание взаимосвязаны. Если форма фиксирована, то далеко не всякое содержание может быть в нее вложено. Современная логика фиксирует и обосновывает уже имеющиеся формы рассуждений, но совершенно не учитывает конструирующей способности человеческого разума, благодаря которой эти формы когда-то были созданы.

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

Великая сила языка, как инструмента познания, заключается в том, что он позволяет нам оперировать объектами внеязыковой реальности на знаковом уровне. Это оперирование можно представить как цепочку переходов от одних выражений языка к другим. Очевидно, что в процессе манипулирования языковыми выражениями связь между ними и объектами внеположной реальности не должна теряться. Это является условием правильности нашей языковой деятельности. Одни переходы между выражениями обосновываются уже известными или только предполагаемыми свойствами соотнесенных им объектов. Другие - получают обоснование благодаря свойствам самого языка. Их логическим обоснованием является понятие следования. В самом общем виде его можно определить следующим образом:
Из посылок  следует выражение A, если и только если существует правило R, которое позволяет на основании значений посылок  определить значение выражения A.

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


В силу общности нашего определения будем называть его определением протологического следования, а совокупность свойств, которыми оно обладает, - протологикой.
Первое свойство достаточно очевидно.
2.1 Если выражение A уже содержится среди посылок , значения которых известны, то тем самым известно и значение A.
Второе свойство позволяет строить цепочки переходов от одних выражений к другим. Рассуждения могут состоять из нескольких шагов, если между ними имеется связь.
2.2 Если существует правило R, которое позволяет на основании значений посылок определить значение выражения A, и существует правило Q, которое позволяет на основании значения A определить значение выражения B, то последовательное применение этих двух правил R и Q позволит на основании значений посылок определить значение B.
Справедливость первых двух свойств обоснована самим определением протологического следования, но если ограничиться только ими, полученная в результате протологика окажется слишком бедной. Она будет адекватна языку, содержащему лишь простые выражения. В качестве примера можно привести язык, состоящий из одних индивидных констант. С его помощью мы можем только именовать объекты и ничего более. Мы пока не учли тот очевидный факт, что язык, наряду с простыми, может также содержать сложные выражения, значения которых определяются значениями составляющих их более простых выражений.

Третье свойство. Пусть A и B – два выражения языка. Из них мы можем составить более сложное выражение (AB). Если мы знаем значения A и B, то мы можем определить значение (AB). Это свойство имеет место не по причине конкретной семантики выражений языка, а по причине принятого допущения, что значение более сложного выражения определяется значениями составляющих его частей.

2.3 Если из посылок следует A, и из следует B, то из следует (AB).
Для нас совершенно не важен семантический смысл операции взятия двух выражений в скобки. Он может быть любым. Из любых двух выражений может быть построено более сложное. Появляется желание возразить, что в естественном языке это правило нарушается, так как не любые два его выражения можно соединить в произвольном порядке и в результате получить новое осмысленное выражение. Но дело в том, что субъект, пользующийся протологикой, еще не приступил к познанию окружающего мира. Для него Аристотель еще не родился и «Категорий» не написал. Если говорить в современных логических терминах, все выражения его языка принадлежат к одному типу. Любое их разделение на типы может быть основано на принятии некоторых гипотез, мы же хотим построить логику, которая свободна от них. При этом, конечно же, не должна исключаться возможность провести разделение на типы в будущем. Но это в будущем, которое для субъекта протологики пока не наступило.

Четвертое свойство. Логический субъект, оставаясь в рамках языка, обладает еще одной важной способностью. Если построено некоторое сложное выражение, которое представляет особый интерес, он может запомнить его, воспользовавшись для этого операцией явного определения.
«В логике определением (дефиницией) называют логическую процедуру придания строго фиксированного смысла языковым выражениям (терминам языка)» [6].
Одними из самых простых и распространенных являются так называемые явные определения. Они имеют следующую лингвистическую форму:

A def B

Левая часть этого выражения, обозначенная буквой A, называется определяемым (дефиниендумом), а правая часть, обозначенная буквой B, - определяющим (дефиниенсом). Символ def «указывает, что принята конвенция считать, что выражение A означает то же самое, что и выражение B» [7].


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

Поскольку введение явных определений не влечет за собой принятия каких-либо предпосылок, расширим наше определение протологического следования.
Из посылок  и определений  следует заключение A, если и только если существует правило R, которое позволяет на основании определений  и значений посылок  определить значение заключения A.
Правая часть явного определения обычно имеет отличную и более сложную структуру, чем левая. Определяемый термин – это не просто новая константа языка. За ним закрепляется значение быть кодом структуры дефиниенса определения, которое не зависит от возможной интерпретации языка и является личным знанием логического субъекта.
2.4 Если T – определяемый термин, введенный одним из определений , а - множество посылок, то из и следует T.
Пятое свойство. Коль скоро левая и правая часть определения означают одно и то же, мы можем воспользоваться этим при построении рассуждений, свободно заменяя одно другим. Это свойство хорошо известно.
«Явные определения обладают одним замечательным свойством – определяемые и определяющие части могут в любом контексте замещаться друг на друга, то есть для них верно следующее правило:


C =def D, K[C]

K[D/C]

называемое правилом замены по дефиниции. … Это правило позволяет использовать явные определения в процессах дедуктивного вывода» [8].

Обоснование данного правила считается настолько очевидным, что обычно его даже не приводят. С использованием правила замены часто строят свои рассуждения люди, даже не знакомые с тем, что такое логика.

Так как, согласно правилу замены, значение выражения K[D/C] совпадает со значением K[C], это позволяет нам сформулировать еще одно свойство протологического следования.
2.5 Если из посылок и множества определений , содержащего =def D, следует выражение K[C], то из и будет следовать выражение K[D/C].
Может показаться, что введение определений и правило их замены не дают нам ничего принципиально нового. Действительно, если рассматривать явные определения чисто экстенсионально, то значение левой части всего лишь совпадает со значением правой. Но дело в том, что помимо значений обе части явных определений обладают еще и структурой. Заменяя в ходе рассуждения определяемое на определяющее, мы оперируем не со значениями выражений, а со сложными языковыми структурами, и в этом смысле переход, совершаемый от одного выражения к другому, на символьном уровне не является тождественным.

Логический субъект, оставаясь в рамках языка, открывает в себе способность конструировать сложные иерархические структуры. Они, будучи продуктом творческой активности субъекта, но, принадлежа исключительно языку, способны проецироваться на любой опыт. Статус этих структур в языке аналогичен статусу теорем логики.
3. Формальное построение протологики

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


  1. Var – множество переменных;

  2. Const =  – множество констант;
  3. =def  - символ для введения определений;


  4. ), ( - скобки.


3.2 Термы

  1. Если xVar, то x - терм;

  2. Если cConst, то c - терм;

  3. Если X и Y – термы, то (XY) - терм;

  4. Ничто другое термом не является.


Поскольку при нашем определении терма он может содержать много скобок, будем для облегчения восприятия по возможности опускать лишние скобки, предполагая их ассоциацию влево. Например, терм ((((X)Y)Z)U) после опускания скобок может быть записан просто как XYZU, а терм ((X(YZ))U) примет вид X(YZ)U.
3.3 Соглашения

  1. Будем использовать символ  для обозначения графического равенства термов как языковых выражений.

  2. Посредством T[Z1/x1,…,Zn/xn] будем обозначать результат одновременной подстановки термов Z1,…,Zn в терм T вместо всех вхождений переменных x1,…,xn, определяемый следующим образом:

    1. xi[Z1/x1,…,Zn/xn]  Zi - 1  i  n

    2. y[Z1/x1,…,Zn/xn]  y y - атомарный терм, отличный от xi, 1  i  n

    3. (XY)[Z1/x1,…,Zn/xn]  (X[Z1/x1,…,Zn/xn])(Y[Z1/x1,…,Zn/xn])

  3. Посредством X{T} будем обозначать терм X с выделенным конкретным вхождением в него терма T.

  4. Посредством FV(T) будем обозначать множество всех переменных, входящих в терм T.


Кроме термов, объектный язык содержит конструкции, называемые определениями. Необходимо обратить внимание на то, что определения принадлежат не метаязыку, а именно объектному языку.
3.4 Определения
  1. Если T – терм и FV(T)  {x1,…,xn}, то Dx1…xn =def T – определение, где D – новая константа.


  2. Ничто другое определением не является.


Принятие определения и введение в язык новой константы D влечет за собой расширение множества правильно построенных термов. Примем дополнительные соглашения.
3.5 Соглашения

  1. Пусть  - некоторое множество определений. Посредством Const() будем обозначать множество всех констант, введенных определениями , т.е. Const() = {D : Dx1…xn =def T  }.

  2. Посредством L() будем обозначать множество всех правильно построенных термов в языке с Const = Const().


Для построения рассуждений в протологике будем использовать следующие четыре правила.
3.6 Правила вывода


R.1 

X, Y

XY




R.2 




FV(T)  {x1,…,xn},

D – новая константа языка

Dx1…xn =def T




R.3 

Dx1…xn =def T

D




R.4 

Dx1…xn =def T,   X{DZ1…Zn}


X{T[Z1/x1,…,Zn/xn]}


Теперь мы должны сформулировать понятие вывода из посылок.
3.7 Вывод из посылок (|-)

(|-)-Выводом из конечного множества посылок   L(), являющихся термами, называется непустая конечная последовательность 0,…,En> термов и определений, каждый член которой либо является элементом , либо получен по правилам R.1-R.4 из предшествующих термов и определений последовательности.

Запись  |- En будет означать, что существует (|-)-вывод 0,…,En> из множества посылок , где En является либо термом, либо определением.
Требование к посылкам   L() означает, что они могут быть любыми термами, построенными в языке с пустым множеством констант. Далее мы можем вводить в язык посредством определений новые константы, расширяющие наш язык, и использовать их при построении вывода.

Поскольку правило R.2 является безпосылочным, если дан некоторый вывод  |- X терма X из множества посылок , мы можем переставить все применения правила R.2 в начало вывода, сохранив при этом их прежнюю очередность. Результирующая последовательность определений и термов также будет удовлетворять определению вывода терма X из посылок . Это наблюдение позволяет определить новое понятие вывода терма X из множества определений  и множества термов .
3.8 Согласованное множество определений

  1. Пустое множество определений является согласованным;

  2. Если множество определений  согласовано, то множество определений {Dx1…xn =def T}, где TL(), но D L(), также является согласованным;

  3. Ничто другое согласованным множеством определений не является.


3.9 Вывод из определений и посылок ()

()-Выводом терма Xn из согласованного множества определений  и конечного множества термов   L() называется непустая конечная последовательность 0,…,Xn> термов, каждый член которой либо является элементом , либо получен по правилам R.1, R.3 и R.4 из предшествующих термов последовательности и определений .


Запись ;   X будет означать, что существует ()-вывод терма X из согласованного множества определений  и множества посылок . В тех случаях, когда множество определений  фиксировано, и это не может вызвать недоразумений, мы будем использовать сокращенную запись   X. Дополнительным отличием ()-вывода является то, что в качестве посылок разрешается брать термы в языке L(), а не L().

3.10 Теорема. Для любого множества определений  существует такой терм Y и множество термов , что ()-вывод ;   Y не имеет места.
Например, если x, yVar,  = {(xy)} и Y  x, то для любого  ()-вывод ; {(xy)}  x не имеет места. Эта теорема говорит о том, что протологика нетривиальна.
Нам необходимо также ответить на вопрос, насколько полна протологика? Представимы ли в ней все возможные протологические рассуждения в смысле нашего определения следования? Проблема в том, что доказательство этого не может быть дано в привычных нам терминах семантической полноты, так как понятие модели отсутствует. Существование модели лишь подразумевается, но ничего конкретного мы о ней сказать не можем. Логический субъект пока что не приступил к познанию мира и даже не категоризовал. Поэтому мы пойдем по другому пути, приняв допущение, что всякое протологическое рассуждение должно быть алгоритмически эффективным. Т.е. если один логический субъект провел некоторое рассуждение, то и любой другой субъект может провести его, чтобы убедиться в правильности. Это является необходимым условием интерсубъективности протологики. Если мы покажем, что всякое эффективное рассуждение представимо в протологике, то тем самым установим ее полноту независимо от будущего понятия модели.

Для решения этой задачи мы возьмем исчисление редукций комбинаторной логики Шейнфинкеля-Карри [9], в которой, как известно, выразимы все рекурсивные функции, и покажем, что всякая доказуемая редукция, представима некоторым ()-выводом в протологике.

4. Исчисление редукций комбинаторной логики CL

4.1 Язык


  1. Var – множество переменных;

  2. K, S – атомарные комбинаторы;

  3. ), ( - скобки.


4.2 Термы

  1. Если xVar, то x - терм;

  2. K и S - константные атомарные термы;

  3. Если X и Y - термы, то (XY) – терм;

  4. Ничто другое термом не является.


Терм, составленный лишь из константных термов K и S, будем называть комбинатором и выделять в тексте жирным шрифтом. Как и в случае протологики, при опускании в термах скобок предполагается их ассоциация влево.
4.3 Редукции

  1. Если X и Y – термы, то X Y – редукция;

  2. Ничто другое редукцией не является.


4.4 Аксиомы

CA.1  X  X для атомарных термов X

CA.2  KXY  X

CA.3  SXYZ  XZ(YZ)
4.5 Правила вывода

CR.1  X  Y    XZ  YZ

CR.2  X  Y    ZX  ZY

CR.3  X  Y,  Y  Z    X  Z
4.6 Определение доказательства

Последовательность редукций 1,…, Rn> называется доказательством, если для любого i  n редукция Ri либо является аксиомой, либо получена из предшествующих редукций последовательности по одному из правил вывода. В этом случае редукция Rn называется доказуемой.
Имеет место следующая теорема.
4.7 Теорема о полноте протологики.

Пусть ={Kxy =def x, Sxyz =def ((xz)(yz))} . Тогда, из множества определений  и множества термов {X1,…, Xn} ()-выводим терм Y, если и только если в комбинаторной логике для некоторого комбинатора H доказуема редукция HX1…Xn  Y.

5. Заключительные замечания.

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


Может показаться, что построенная нами протологика чересчур экзотична. На это можно возразить следующим образом.

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

Правило R.1 представляет нашу способность к конструирующей деятельности. Это способность из двух языковых выражений составить более сложное, способность помыслить два объекта мысли как один, способность совершить конкретное физическое действие.

Правило R.2 представляет не просто способность к введению в язык сокращений для сложных термов, а нашу способность к обобщениям, введению абстракций и идеализаций.

Правило R.3 говорит о нашей способности к теоретической деятельности. Введенные нами абстракции и идеализации сами становятся объектами мысли. Платоновский Сократ ищет определения красивого кувшина и красивой лошади, чтобы прийти к идее красоты самой по себе.

Правило R.4 представляет нашу способность к вычислениям, частным случаем которых являются привычные дедуктивные рассуждения. Теория вычислений и теория дедукции – это есть теория применения данного правила.

В своей совокупности четыре правила представляют нашу способность к «интеллектуальной познавательной деятельности, осуществляемой с помощью языка» [10].
ПРИМЕЧАНИЯ

1. Engeler E. (et al) Combinatory Programme. Birkhauser, 1995.

2. Schonfinkel M. Uber die Bausteine der mathematischen Logik. Mathematische Annalen, 92 (1924), 305-316.

3. Curry H.B. Grundlagen der kombinatorischen Logik. American Journal of Mathematics, 52:509-536, 789-834, 1930.

4. Church A. A set of postulates for the foundation of logic. Annals of Mathematics, 33:346-366, 1932.


5. Curry H.B., Hindley J.R., Seldin J.P. Combinatory Logic, volume 2., 1972. – С. 14.

6. Бочаров В.А., Маркин В.И. Основы логики. Учебник. М.: Космополис, 1994. – С. 197.

7. Там же. – С. 201.

8. Там же. – С. 207.

9. Curry H.B., Feys R. Combinatory Logic, volume 1. Amsterdam, 1958.

10. Бочаров В.А., Маркин В.И. Основы логики. Учебник. М.: Космополис, 1994. – С. 9.


* Работа выполнена при поддержке РГНФ, грант № 08-03-00173а