Вычислительная метамодель реальности и проблема истины1
A.M. Анисов
abstract. A computational interpretation of philosophical notions of reality and truth is provided along with a non-standard computational treatment of logical connectives and quantors. First-order language statements are compared to sets whereupon the computablilty of these statements comes to the problem of computability of the corresponding sets.
В ряде предшествующих работ проблема истины pi реальности обсуждалась применительно к моделям, в которых реальность была представлена теоретико-множественным образом. Точнее, это не были обычные регулярные структуры, которые можно мыслить как построенные с помощью стандартных теоретико-множественных операций исходя из пустого множества. Объекты и предикаты реальности моделировались иррегулярными атомами, свойства которых тте подлежали контролю со стороны модельного познающего субъекта ([3], [4|, [о]). Несмотря па некоторую экзотичность таких моделей, они всецело оставались в рамках статического подхода к представлению реальности. Более того, применительно к ним опять возникал уже давно поставленный в философии теории множеств вопрос: в каком смысле множества могут обладать реальным существованием? И если еще можно смириться с реальным существованием множеств объектов, соответствующим сингулярным предикатам (допустим, согласиться с реальным существованием множеств людей, футбольных мячей pi планет), то как быть с реальным существованием упорядоченных пар, троек, четверок pi т.д., образующих основу предрткатов-отпоптепрш?
В теории множеств упорядоченная пара < a, b > объектов a и b стандартно определяется множеством множеств < a, b > =
'Работа поддержана РГНФ. Грант Л® 04-03-00344.
{{а}, {а, Ь}}. Полагая < а,Ь,с> = < а,< Ь,с >>, < а,Ь,с,й > =
< а,< Ь,< с,й >>> и, вообще, < а1,а2,...ап > =
< а\,< а2,..., < ап-1, ап >> ... >, получаем быстро растущую конструкцию вложенных друг в друга множеств. Скажем,
а, Ь, с
дующим множеством множеств:
<а,Ь,с> = < а,<Ь,с>> = {{а}, {а, {{Ь}, {Ь, с}}}}.
Затруднительно придать такой конструкции статус реальной, т.е. существующей независимо от субъекта, сущности, хотя очереди, вне сомнений, существуют как раз реально.
Поскольку речь идет не о недостатках какой-то конкретной модели или серии моделей, а об ограниченности возможностей теоретико-множественного моделирования в целом, уместнее в этом плане говорить о теоретико-множественной мета,модели. Естественно, подразумевается, что данная метамодель не единственна. Альтернативой теоретико-множественной метамо-дели могла бы стать вычислительная метамодель. В первом приближении идея вычислимости предпочтительнее теоретико-множественного подхода как в отношении возможности преодоления статики, так и в смысле возможности построения более реалистичной онтологии, не предполагающей реального существования иерархии множеств.
В условиях широчайшего распространения вычислительного моделирования, особенно с применением компьютеров, призыв к построению вычислительной метамодели может показаться неуместным: не ломится ли автор в давно открытую дверь? Однако напомним, в какой связи возникает идея этой метамодели. Теория вычислимости до сих пор не стала альтернативой теории множеств как фундаментального основания философии и науки. Последние по сей день либо пребывают в плену статики, либо впадают в иррационализм, когда обнаруживают неустранимую нестабильность универсума. Автор лично неоднократно сталкивался с искренним недоумением известных и не очень из-в6стных философов и физиков, когда предлагал вычислительную модель времени — отти-то знают, что «в действительности» все существует «в едином пространстве-времени», все «мировые линии» которого раз и навсегда прописаны. Много был даже предложен термин парменидовская наука для описания практи-
ческрт полного торжества в ориентированной па пауку философии рт в точном естествознании восходящей к элеатам концепции неподвижного универсума, само время которого полностью статично PI лишено даже намека па становление ([2]).
Сама по себе идея рассмотрения природы как особого рода вычислительного процесса или совокупности вычислительных процессов не нова. Уже давно мы слышим прртзывы считать законы природы алгоритмами, высказывания о том, что роль тео-рртй с успехом способны взять па себя компьютерные программы pi т.п. Однако, как правило, этрт высказывания — либо не более чем декларации ([10]), либо за tipimpi скрываются пока еще мало продуктивные попыткрт ввестрт вычислительный язык в физику ([6]). Редким удачным исключением является, например, книга известного ученого и инженера X. Хармута ([9|), по в пей обсуждается проблема перехода от континуальных пространств к дискретным, а не идея физической вычислимости как таковая. И все же здесь затрагиваются некоторые философские вопросы, в частности, проблемы дискретного времени.
В философии вычислительные концепции фактически находятся в стадии начальной разработки. В паптей стране, кроме упомянутой вычислительной модели времени ([1]), можно назвать предложенное В.И. Шалаком альтернативное классическому понятие вычислительного следования" и попытку A.A. Крупшпского трактовать рассуждения древних китайцев как вычисления ([8] и другие работы). Примечательно, что оба спе-тцгалртста скептртческрт относятся к понятию истины, усматривая в нем выражение унаследованной от Платона и Аристотеля статичности PI созерцательности в отношении к миру, несовместимых с ориентированными па умения вычислительными действиями. Разделяя позицию коллег в плане отрицания гордой Истины., тем не менее хотелось бы высказаться в защиту куда более скромной истины. Я полагаю, что изменчивость универсума не является препятствием для принятия некоторых высказываний в качестве истинных. Аргументации в пользу этого тезиса PI будет П0СВЯЩ6НЭ. ДеШНеШ работа.
Пусть U непустое множество, V С U (включая случай V = U) и fv(xi,X2,..., xn) — тотальная или частичная функция из мно-
"*См. статьи В.И. Шалака в данном сборнике.
жества Vn в V, Су — компьютер , обрабатывающий данные из V, и ncV(xi,Х2, ■ ■ ■ ,xn) — программа, выполняемая компьютером Су - Если программа ncV(х\,Х2, ■ ■ ■, xn) нормально останавливается на входе (xi, Х2, ■ ■ ■, xn), пишем ncV(х\,Х2, ■ ■ ■, xn) j. В противном случае (учитывая как возможность неограниченно продолжающихся вычислений, так и возможность аварийного останова или авоста) пишем ncV(xi,x2, ■ ■ ■ ,xn) Условимся, что только в случае ncV(xi,x2, ■ ■ ■, xn) j существует, и при том единственное, y Е V, которое называется результатом выполнения программы ncV на вхоde (xi,x2, ■ ■ ■, xn). Тогда применяем запись ncV(xi,x2, ■ ■ ■, xn) j y. Если же ncV(xi,x2, ■ ■ ■, xn) считаем, что результат выполнения программы ncV на входе (xi, x2, ■ ■ ■, xn) отсутствует.
Введем достаточно близкое к стандартному уточнение понятия вычислимости применительно к функциям. Функция fv(xi, x2, ■ ■ ■, xn) вычислима та компьютере Су, если существует программа ncV такая, что Vx\Vx2 ■ ■ ■ VxnVy(fv(xi, x2, ■ ■ ■, xn) = y ^^ ncV(xi,x2,■■■, xn) j y). (В дальнейшем, если конкретные возможности компьютера Су не существенны, упоминание о нем можем опускать.)
Идея представления универсума в виде совокупности вычислительных процессов порождает проблему, которую нелегко сформулировать точным образом. Проблема в следующем. В каком смысле эти процессы, возможно, между собой никак не связанные, относятся к одному рт тому же универсуму, формируют его, делают существующим? Теоретико-множественный универсум можно представлять как конструирующийся при помощи соответствующих операций из постулироваппо существующих пустого множества и бесконечного множества. Тем самым эти операции придают ему требуемое единство. Какие же операции придают связность совокупности вычислительных процессов? Взаимодействия процессов, Pix взаимное влияние? Но какая связь может быть, например, между процессами формирования звезды, рождения человека и становления государствеп-
3Выч:ислительное устройство естественного или искусственного происхождения, реальное или идеальное, физическое или ментальное — на данном этапе это не столь существенно; важно лишь помнить, что все эти возможности допустимы, так что идея компьютера берется в предельно общем виде
поста? Хотя все это процессы порождения чего-то, они относятся к столь разным областям реальности, что никакая конкретная связь между ними невозможна. Остается искать связь абстрактную, не физическую, а логическую. Но и она интуитивно не очень-то просматривается. Тем не менее, мы рискнем предложить аргумент в пользу существования такой логической связи. Утверждая, что выполняются процессы П2, мы фактически как-то соотносим их между собой, как-то объединяем. Не допустить ли тогда существование некоторого абстрактного объединяющего процесса? Одним из возможных способов формально выразить данный аргумент является принятие следующего постулата локального объединения.
(УУ С и)(УШ С и)((¡у вычислима, & ¡щ вычислима) ¡Vищ вычислима).
Можно было бы обобщить постулат локального объединения. Пусть {Уг£1} — произвольное семейство множеств такое, что I С и и (У г Е I)(У С и). Тогда постулат тотального объединения утверждает, что (У г Е I) вычислима ¡и{у^1} вычислима. Очевидно, что из второго постулата следует первый (достаточно взять двухэлементное I С и, тел и \и \ > 1).
Дополнительными, хотя и косвенными, аргументами в защиту постулатов объединения могут послужить следующие факты. При вычислениях па заводских компьютерах, объединенных в сеть, достаточно реализовать возможность посылки терминального сигнала всем компьютерам любым из них, который первым закончит вычисление (пример реализации постулата локального объединения). В наиболее общей теории пространств — топологии — топологическое пространство т может быть представлено семейством множеств, для которого принимается аксиома о том,
т
т
данной работе принимается лить постулат локального объединения, поскольку только он понадобится в дальнейшем.
Те же соображения наводят па мысль о постулировании обязательного существования пересекающихся процессов. Если функции ¡V и ¡щ вычислимы и при этом У П Ш = 0, то интуитивно функция ¡упш тоже должна быть вычислимой. В самом деле, если исполняются вычисляющие эти функции программы псу
и ncW то при < xi,x2, ■ ■ ■ ,xn >Е V П W будем в конце концов иметь ncV (xi,x2, ■ ■ ■ , xn) j и ncW (xi, x2, ■ ■ ■ , xn) j. Но это по сути и означает вычислимость функции fvnw- Остается формально обеспечить наличие соответствующих объектов, приняв следующий постулат локального пересечения.
(VV С U)(VW С U)((fv вычислима & fw вычислима, & V П W = 0) =^ fvnw вычислима,).
Требование ттепустоты пересечения нетрудно обосновать. Поскольку никакая конкретная модель вычислимости в обсуждаемой метатеории задана не была, возможно сужение области вычислимых функций на некоторую подобласть непустых тотальных (т.е. всюду определенных) функций fn : Un -—> U. Тогда при V П W = 0 фупкция fvnw
область вычислимым функций.
Разумеется, нельзя в общем случае требовать, чтобы для каждого непустого подмножества M множества V (соответственно W) функция fM была бы вычислима, если функции fv и fw вычислимы. Например, классическая модель вычислимости па натуральных числах дает счетное множество вычислимых функций, тогда как число непустых подмножеств натурального ряда несчетно.
Также можно сформулировать обобщение только что принятой аксиомы до постулата тотального пересечения. Пусть {Vi^i} — произвольное семейство множеств такое, что I С U, (Vi Е I)(Vi С U) и n{Vi^i} = 0. Тогда (Vi Е I) fy вычислима, =^ fn{vieI} вычислима. Опять очевидно, что из постулата тотального пересечения вытекает постулат локального пересечения.
И вновь наличествует топологическая аналогия. Топологическое пространство т представимо семейством множеств, для которого принимается аксиома о том, что пересечение любого се-
тт мы ограничимся принятием лить локальной формы постулата пересечения.
Обратим внимание, что функция fv (xi, x2, ■ ■ ■, xn) может быть частичной в двояком смысле. Во-первых, при < xi, x2, ■ ■ ■ ,xn > Е Vn значение функции fv (xi, x2, ■ ■ ■, xn) может быть не определено. Во-вторых, при V = U аргумент функции fv(xi,x2, ■ ■ ■, xn)
может быть неопределен. Это случится, если < Х1,Х2, ■ ■ ■ ,хп > Е Уп. В этой ситуации значение функции ¡у (Х1, Х2, ■ ■ ■, хп) также будет неопределенным. Эти два случая позволяют трактовать запись псу(Х1,Х2, ■ ■ ■ ,хп) | при вычислепиии функции ¡V(Х1,Х2, ■ ■ ■, Хп) просто как отсутствие результата вычисления, оставляя открытым вопрос, явилось ли отсутствие результата следствием неограниченности вычисления во времени или тем, что оно закончилось аварийно.
Пусть Ь — какой-нибудь язык предикатов первого порядка, не содержащий функциональных символов4, так что любой терм £ — это либо индивидная переменная, либо индивидная константа. Пусть, далее, Р(х) сингулярный предикатный символ из Ь. В стандартной семантике А.Тарского функция интерпретации I сопоставит этому символу подмножество универсума: I(Р(х)) = У, У С и. В обычной теории вычислимости, базирующейся на понятии машины с неограниченными регистрами (МНР)°, которая манипулирует натуральными числами, вычислимость ситт-У
дикат У вычислим, если существует МНР-программа п такая, что п(х) { 1 при Х Е У и п(х) { 0 при Х Е У■ Но в наши планы отнюдь не входит намерение объявить числа частью реальности. Более того, пет вообще никаких оснований искать в реальности особые объекты «истина» и «ложь», даже если не отождествлять истину с 1, а ложь с 0. Истина и ложь входят в мир вместе с субъектом. Как тогда они могут иметь отношение к реальности?
Поэтапно отвечая па данный вопрос, вначале сопоставим предикату У функцию ¡у (х) такую, что ¡у (х) = у в случае х Е У и ¡V (х) не определена в противном случае. Предикат У вычислим, если вычислима функция ¡V(х). Иными словами, вычислимость
У
псу (х), для которой верно псу (х) I у, если х Е У, и псу (х) если х Е У■ Предикатный символ Р(х) имеет вычислительную
4Это ограничение не приводит к потере общности, поскольку любой функциональный символ f (х1 ,Х2,... ,х„) может быть заменен предикатным СИМВОЛОМ Р (х1 ,Х2, . . . ,Хп, Хп+1).
°См. [7]. В частности, в гл. 3 показано, что МНР-вычислимость эквивалентна вычислимости по Тьюрингу, а также другим известным классическим теориям вычислимости.
интерпретацию в смысле I, если предикат I(Р(ж)) вычислим.
Предложенная конструкция без проблем обобщается па случай многоместных предикатов. Пусть I(Р(х\,х2,... ,хп)) = Уп, Vп С ип. Сопоставим предикату Vп фупкцию ¡у(х\,х2,..., хп) такую, что ¡у (х\,х2,..., хп) = у в случае < х\,х2,... ,хп > Е Vn ж ¡у (х\,х2,..., хп) не определена в противном случае. Предикат вычислим, если вычислима функция ¡у (х\,х2,..., хп), т.е. существует программа псу (х\,х2,... ,хп), для которой верно псу (х\,х2,... ,хп) I у если < х\,х2,...,хп > Е Vп, и псу (х\,х2, ...,хп) тел и < х\,х2,... ,хп > Е Vп Предикатный символ Р(х\,х2,... ,хп) имеет вычислительную интерпретацию в смысле I, если предикат I(Р(х\,х2,..., хп)) вычислим.
Если Ух\Ух2 ... Ухп3у3г(^у (х\,х2,... ,хп) = у ^^ ду (х\,х2,...,хп) = г), то пишем ¡у (х\,х2,... ,хп) = ду (х\,х2,... ,хп) или, короче, ¡у = ду. Аналогичным образом для программ: если Ух\Ух2 ... Ухп3у3г(псу (х\,х2,...,хп) | у ^^ тсу (х\,х2,... ,хп) I г), то по определению псу (х\,х2, ...,хп) I у = тсу (х\,х2,..., хп) I г или псу = тсу-
ТЕОРЕМА 1. Отношение = является отношением эквивалентности соответственно на функциях и на программах. Кроме того, если функция ¡у и соответствующая ей программа псу вычисляют предикат Vп и при этом ¡у = ду и псу = тсу, то ду и тсу тоже вычисляют Vп.
Доказательство. Доказательство очевидно. у.Е.Е».
Из данной теоремы вытекает, что формально все равно, какую из эквивалентных функций или программ взять. В любом случае важно лишь то, имеет место псу (х\,х2,... ,хп) I или псу (х\,х2,..., хп) Если реализовался первый вариант, то конкретный результат вычисления программы псу на входе (х\,х2, ..., хп) не существен. Однако с философской точки зрения в случае реализации второго варианта при выборе эквивалентных программ необходимо учитывать, что невозможность получить результат вычисления может быть обусловлена двумя типами причин. Одно дело неограниченность процесса вычислений, другое — авост. Вряд ли в природе при невозможности получить результат какого-то конкретного процесса он будет продолжаться
неограниченно долго. Более реалистично предположить, что такой процесс все-таки завертится, по аварийно. Например, природное вычисление предиката Ключ х подошел к Замку у может успешно завершиться за конечное число птагов, по может и не иметь благополучного завершения. В последнем случае вовсе не обязательно до бесконечности предпринимать все новые и новые безуспешные попытки открыть замок. В реальности такой процесс завертится авостом, чем бы он пи был вызван — поломкой ключа или замка, потерей терпения или чем-то иным. Хотя исключать априори реальное существование конкретных бесконечных процессов мы бы не решились, не говоря уже о возможных бесконечных процессах, связанных с универсумом в целом.
На данном этапе исследования установлена цепочка переходов предикатный символ Р(х1,х2, ■ ■ ■ ,хп) -—► предикат I(Р(х1,х2, ■ ■ ■, хп)) = Уп -—► функция ¡V(х1,х2, ■ ■ ■, хп) ^ программа псу (х1,Х2, ■ ■ ■, хп) ¿. Последний переход ^ осуществим ЗгЮ В С (3 ГД ВСуД!^ функция ¡V(х]_,х2, ■ ■ ■, хп) не обязательно будет вычислимой на компьютере С'V- Но если она вычислима, понятия вычислимой выполнимости и вычислимой истины определяются почти очевидным образом. Пусть V — функция приписывания значений свободным переменным языка Ь: V : Уаг ^ У. Выражение Р(х1,х2, ■ ■ ■ ,хп) вычислимо выполнено на компьютере Су при интерпретации I и приписывании V, если псу ^(х1)^(х2), ■ ■ ■, v(xn)) ¿.Пусть С1,С2, ■ ■ ■ ,Сп — индивидные константы из Ь. Высказывание Р(С1, С2, ■ ■ ■, Сп) вычислимо истинно на компьютере Су при интерпретации I, если псу (I(С1(Сп)) ¿.
В стандартной семантике не выполнимость Р(Х1,Х2, ■ ■ ■, хп) и не истинность (ложность) Р(С1, С2, ■ ■ ■, Сп) определялись условиями < 1](х2), ■ ■ ■, ^](хп) > /Уп и < IС)^(с2), ■ ■ ■, I(еп) > Е Уп соответственно. Но механически переносить эту идею па вычислимость нельзя. Ведь замена псу ^(х{), v(x2), ■ ■ ■, v(xn)) ¿ на псу ^^^^^■■^(хп)) Т, а псу ^С), ^С2), ■ ■ ■, ^Сп)) ¿ на псу (IС), I(с2), ■ ■ ■, I(сп)) Т приведет к многочисленным нелепостям практического и теоретического характера.
Например, попробуем вычислять функцию деления х/у = г, т.е. трехместный предикат /(х, у, г). Что случится, если у = 0?
Калькулятор Windows в ответ Hei введение x = 1 и y = 0 при применении операции / сообщил: «Деление на нуль запрещено». Можно ли сделать вывод, что это же сообщение последует при любых допустимых значениях переменной x, если y = 0? Однако при x = 0 У = 0 последовало: «Значение не определено». Чтобы прояснить вопрос, в системе Free Pascal была откомпилирована (компилятор РРС386) следующая простая программа, var х, у, z : real; begin Read(x, у); z := х ,/' у; Writ.e(z); end.
В ответ па ввод 1 pi 0 ничего не произошло! Программа либо зависла, либо продолжала выполняться как пи в чем тте бывало, не выдавая никаких сообщений pi явно не собираясь когда-либо закапчивать вычисления. Зато ввод значений 0 pi 0 привел к распечатке результата: —0.000000000000000Е I ООО.
Ил pi тот же пример с ключом pi замком. Разве из того факта, xy предиката Ключ x подошел к Замку y и выполнимость —(Ключ xy
ключ все-таки от пего? А если ключ крутили не в ту сторону? Могли быть pi многие другие причины неудачи. Так что pi здесь отсутствие результата не означает, что выполнено отрицание искомого предиката.
Что касается теоретртческртх аргументов, то главное теоретрт-ческое возражение против трактовки отрицания как отсутствия результата вычисления coctopit в том, что факт получения результата в принципе может быть зафиксирован, тогда как продолжающееся вычисление, вообще говоря, оставляет открытым вопрос, закончится оно нормально или пет. Те же компьютерные вычисления могут продолжаться неприемлемо долго, по Pix искусственное прерывание не означает фиксации наступления события ncV(xi,x2,... ,xn) В теории классической вычисли-MOCTPi, как хорошо известно, проблема останова не разрешима. В логике доказано существование алгоритма перебора всех теорем исчисления предикатов, но если некоторая формула A не
появилась на шаге п выполнения такого алгоритма, то в общем не исключено, что она появится потом па каком-то шаге т. Не наступивший до сих пор коттед света не ведет к однозначному выводу, что мир будет существовать вечно. И так далее. Так что корректное введение отрицания па такой неопределенной по самой своей сути основе, как незавершенность вычисления, невозможно.
Теоретически, выходом из создавшегося затруднительного положения было бы такое определение отрицания, которое базировалось бы па нормально завершающихся вычислениях, т.е. па конструкциях типа псу (х1,Х2, ■ ■ ■ ,хп) ¿. Алгебра логики подсказывает решение, связанное с операцией дополнения \ множеств па выбранном заранее универсуме. Поскольку универсум и фиксирован, вычислимость —Р(х) можно свести к проблеме вычислимости предиката и\У, где У = ^Р(х)). Или, в общем виде, вычислимость Р(Х1,Х2, ■ ■ ■ ,хп) свести к вычислимости предиката ип\Уп, где Уп = I(Р(х1,х2, ■ ■ ■, хп)). Однако есть определенные сомнения па счет философской приемлемости такого решения.
Во-первых, нередко получается так, что универсумы рассуждений весьма обширны, тогда как исходные предикаты имеют сравнительно небольшой объем. Тогда подвергнутый отрицанию такой исходный предикат внезапно увеличивается до непомерных размеров. Проанализируем в качестве примера следующий ряд утверждений: «Бее люди смертны. Все греки люди. Сократ грек. Следовательно, Сократ смертен. Но Наполеон не грек... ». По контексту в качестве универсума здесь надо взять, как мттимум, множество смертных существ. Но тогда высказывание —Грек(Наполеон) должно быть проинтерпретировано на всем огромном множестве смертных, за исключением греков. Обычно считается, что подобные вещи тте создают особых логических проблем, однако проблемы с вычислимостью появляются. Представьте себе вычислительный процесс, который перебирает всех смертных не греков, включая бактерии, растения, грибы и животных, чтобы устповить, что Наполеон не грек.
Во-вторых, для практики и эмпирической пауки характерно использование многослойных или многосортных универсумов. Простой подсчет баранов в стаде уже сочетает такие сорта, как
бараны и числа. Многосортная логика предикатов первого порядка, как известно, сводима к обычной одпосортпой, так что и здесь проблем обычно не видят. Семантически сводимость обеспечивается объединением слоев в единый универсум с введением соотвествутощих слоям предикатов. Однако операция отрицания вновь выглядит довольно нелепо. К примеру, выделив в стаде белых баранов, получим с использованием отрицания высказывателытуго форму Это не белый, которая может быть представлена в классическом исчислении предикатов формулой —Белы,й(х), интерпретация которой потребует смешения баранов и чисел, ибо тте былыми окажутся тте только некоторые бараны, по и все числа. Вычисление так понимаемого отрицания еще более усложнит проблему.
Отчасти аналогичными затруднениями вызвана трактовка отрицания как неудачи в логическом программировании и в языке декларативного программирования Пролог. Проблеме отрицания в логическом программировании и в Прологе посвящена обширная литература6, которую мы разбирать тте будем. В самом общем виде отрицание —Р здесь понимается как неудача
РР —Р. В терминах наших примеров, чтобы вычислить истинностное значение высказывания —Грек(Наполеон), надо проверять высказывание Грек(Наполеон), перебирая множество греков Г
(все-таки не весь универсум!). Если перебор завершится ттеуда-
—
блема в том, что перебирающий множество V = I(Р(х)) вычислительный процесс может «тте видеть» объекты из дополнения иСкажем, если есть механизм развития болезни псг(х) |, поражающий греков, и только их, то в отношении Наполеона такой процесс не установит ничего определенного — он попросту не будет выполнен: псг (Наполеон) Таким образом, трактовка отрицания как неудачи вновь возвращает пас к уже отвергнутому варианту применения конструкций вида псу (х\, х2,..., хп) | в связи с отрицанием.
6Отметим книги: Хоггер К. Введение в логическое программирование. М., 1988; Ковальски Р. Логика в решении проблем. М., 1990; Клоксин У., Меллиш К. Программирование на языке Пролог. М., 1987; Стерлинг Л., Шапиро 9. Искусство программирования на языке Пролог. М., 1990.
Напрашивается следующий, как ттам представляется, естественный путь избавления от возникших проблем с отрицанием.
Р
вантную для него часть К универсума и. В некотором отношении такая часть сама ведет себя подобно универсуму, так что К
Р
повпуто идею па примере рассуждения: «Насекомое — это животное. Следовательно, крупное насекомое — это крупное животное». По биологическим классификациям насекомые действительно являются животными, так что посылка истинна. Но как быть с заключением? Один из квалифицированных логиков, к которому обратился автор, согласился с этим рассуждением. Синтаксис языка в самом деле принуждает к тому, чтобы считать два вхождения слова «крупное» вхождением одного и того же предиката. Однако смысл первого вхождения данного слова отличается от его второго вхождения. Поэтому надо было бы 12 1 (х)
К1} получив I(Крупное 1 (х)) С К1} & Крупное2(х) определить на множестве животных К2, получив I(Крупное2(х)) С К2 и не К2 = и К1 К2
1 (х)
Крупное2(х) релевантными универсумами. В этом случае следования, конечно, пет, в должном соответствии со смыслом рассуждения.
Предлагаемый подход к отрицанию состоит в ограничении операции дополнения соответствующим релевантным универсумом. Отрицанию —Крупное1(х) в модели сопоставляется множество К\(Крупное 1 (х)), а отрицанию —Крупное2(х) — множество К2^(Крупное2(х)). Такой подход не только позволяет избавиться от призрака отрицания как неудачи, по и решает как проблему соразмерности утверждаемого и отрицаемого, так и проблему предотвращения смешения сортов при отрицании в многосортном универсуме.
Теперь определения вычислимой выполнимости и вычислимой истины па отрицаниях атомарных предикатов получаются из соответствующих определений для атомарных предикатов. Достаточно при построении семантических значений отрицаний
заменить предикат Vn на предикат Rn\Vn, только и всего. При этом случай Rn = Un, вообще говоря, не исключается. Однако следует явным образом исключить возможность пустоты релевантных универсумов. Ведь каждый релевантный универсум с философской точки зрения есть именно универсум, а универсумы должны быть непусты (иначе о чем рассуждать?). Кроме того, как нельзя в одном рассуждении по-разному интерпретировать предикатный символ P, так и нельзя по тем же причинам в одном рассуждении приписывать предикатному символу P
пятая следующего неформального постулата.
Pn
Pn Rn Rn
Но мы не решаемся в общем случае требовать, чтобы для вся-
Pn
Rn
цаттием некоторых разновидностей пустых предикатов. Но применительно к конкретным предметным областям и наборам исходных дескриптивных предикатных символов такое существование возможно.
Свойства получившегося вычислительного отрицания па атомарных предикатах в существенных отношениях не совпадают с классическим логическим отрицанием. В дальнейшем при обсуждении свойств логических операций будем использовать сингулярные предикаты, если Pix местность не важна. Зафиксировав функцию интерпретации I, вместо длинного «предикатный символ P(x) имеет вычислительную интерпретацию в смысле I» будем писать «P(x) вычислимо». Будем использовать символ Ь для принятия метаутверждения и символ Ч для отбрасывания метаутверждеттия.
ТЕОРЕМА 2. Ь (а). P(x) и —P(x) не могут, быть вместе вычислимо выполнены;
Ь (Ъ). P(с) и —P(с) не могут, быть вместе вычислимо истинны,;
Ь (с). P(t) вычислимо (выполнено, истинно) ——P(t) вычислимо (выполнено, истинно);
Ч (d). P(x) вычислимо =^ —P(x) вычислимо;
Ч (е). —P(x) вычислимо =^ P(x) вычислимо;
Доказательство. Ограничимся пунктами (b)-(cl).
(b). Пусть P(с) вычислимо истинно. Тогда ncV(I(с)) i . Отсюда I(c) Е V. Если бы —P(с) было вычислимо истинно, имели бы ncR\V(I(с)) i и, следовательно, I(с) Е R\V, что противоречиво. Пусть —P(с) вычислимо истинно. Имеем ncR\V (I(с)) i и I(с) Е R\V, что исключает вычислимую истинность P(с).
(c). Если I(P(t)) = V, то I(—P(t)) = R\V. Положим W = R\V. Тогда I(——P(t)) = R\W = R\(R\V) = V.
(d). Возьмем в качестве компьютера C МНР-машину. Тогда на множестве формул классического исчисления предикатов пре-
(x) — (x)
числим. q.e.d.
Обратим внимание па то, что в построенном фундаменте вычислительной онтологии рт семантики понятие лжи до сих пор не появилось, хотя онтология рт семантика отрицания были определены. Речь птла о вычислимой выполнимости и вычислимой истине независимо от того, применялись этрт понятия к предикат-
P(t) —P(t) без понятия лжи вообще можно обойтись! Такая идея хорошо согласуется с пововремеппым философским принципом классической пауки о том, что природа не может лгать. В логическом плане идею истины как единственного денотата определенных языковых выражений развивает С.А. Павлов'. Суть в том, что некоторые выражения обозначают истину, тогда как остальные не обозначают истину. Но отсюда, как показывает С.А. Павлов, вовсе не обязательно делать вывод, что этрт остальные обозначают ложь. Другой вопрос, что в его логической метатеории формально ложь можно сделать единственным денотатом. Напт подход в этом пункте принципиально отличается. Не видно, как в рамках предлагаемой метатеории вычислимости формально можно было бы вычислительную ложь сделать исходной по отношению к вычислительной истине, тем более сделать ложь единственным денотатом, полностью устранив истину.
'См. статью С.А. Павлова в данном сборнике.
Не только производттость, вторичпость лжи по отношению к истине, но и некоторую искусственность и избыточность понятая лжи мы сейчас, учитывая уже сказанное, попытаемся продемонстрировать. Что может означать утверждение о ложности высказывания Р(с) при интерпретации I в вычислитель-пом смысле? Единственно возможный ответ — никакой вычислительный процесс никогда нормально не остановится па входе I(с): —Эп^к^(Р(с)) |). Вытекает ли отсюда, что существуют множество К и процесс п такие, что п(К^(Р(с)) |? Рассуждая абстрактно, пи откуда тте следует, что такое множество и такой процесс существуют. Тогда каков реальный смысл утверждения Р(с)
веппо нельзя связать никакого процесса!
Рассмотрим следующий пример утверждения: Ложно, что Жанна д'Арк — ведьма, или, в логической форме, Ведьма(Жанна д'Арк) ложно. Чтобы напрямую в этом убедиться, необходимо запустить все возможные процессы (что само по себе абсурдно). И сидеть ждать? Как долго? А если некоторые процессы никогда не завершатся? Ясно, что прямой путь ведет в никуда. Остается косвенное решение: обосновать иститт-
—К тем найдя подходящий процесс п, для которых имело бы место п(К^(Ведъма(Жанна д'Арк)) Но что взять за К? Ложность рассматриваемого высказывания предполагает, что I (Ведьма(Жанна д'Арк)) = 0. Если тол ожить К = и, то I(—Ведъма(Жанна д'Арк)) = и\0 = и, и любой нормально завершившийся процесс (например, передачи данных, деления клетки, слияния фирм, борьбы с врагом и т.д., до бесконечности) делает это высказывание истинным, что бессмысленно. К
Раз ведьмы могут встречаться только среди женщин, не взять ли К = {х: Женщина(х)}? Тогда I(—Ведъма(Жанна д'Арк)) = К\0 = К = {х: Женщина(х)}, и любая успешная проверка на свойство быть женщиной будет означать ложность высказывания Ведьма (Жанна д'Арк), что вновь бессмысленно.
Такая же аргументация может быть применена по отношению к любым пустым высказываниям, в действительности не имеющим отношения к реальности. Ясно, что причиной систе-
матических провалов в определении ложности подобных высказываний является отсутствие у ттих истинного аналога в реаль-К вывод1 прежде чем какое-то высказывание А
получит статус ложного, необходимо уметь обосновать истинность —А. Этими соображениями мотивировано принятие следующего определения:
Высказывание А вычислимо ложно ^ Высказывание —А вычислимо истинно.
А
тте может означать ничего иного, как сокращение выражения
—А
—А
муто ложь, по никогда тте наоборот. Следовательно, истина первична, а ложь производив,, вторична. Без истины не обойтись, а ложь избыточна и о пей вообще можно было бы не упоминать. А раз так, то истина естественна, а ложь искусственна.
Расширим функцию интерпретации I, дополнив область ее определения тте атомарными формулами. В результате каждой формуле А языка Ь будет сопоставлено определенное подмножество Iй(А) декартова произведения универсума ип. Это позволит трактовать формулы как представления вычислимых или не вычислимых множеств. Такая метаоперация выводит пас за границы стандартной семантики А.Тарского.
Реализация указанного замысла наталкивается па следующую проблему. Пусть для формул Р(х) и Q(x, у) значения I(Р(х)) и I^(х, у)) даны. Как и полагается, I(Р(х)) С и и Iх,у)) С и2. Предположим, формула А имеет вид (Р(х) & Q(x, у)). Тогда
А
ции сопоставить пересечение, но пересечение I(Р(х)) П I^(х, у)) заведомо пусто. Получится, к примеру, что простейшее утверждение «Сократ — человек и Сократ старите Платона» заранее обречено па пустоту. Формальных затруднений не возникает при понимании дизъюнкции как объединения: достаточно положить I(Р(х) V Q(x,y)) = I(Р(х)) и I^(х,у)). Но как вычислять такое сметанное множество, сколько параметров должно быть у соответствующей программы? Хотя многие компьютерные программы и команды допускают ввод разного числа параметров, логически это не естественно, коль скоро предполагается, что
каждая программа вычисляет какую-то частичную или тотальную функцию.
Мы предлагаем простое решение возникшей проблемы. Пусть п — наибольшая местность, которую имеют атомарные предикаты из формулы А Назовем число п степенью формулы А. Предположим, что интерпретация I определена для всех ато-
АА дикат Р(1\^2, ■ ■ ■, таков, что т < п (где п — степень фор-
АА тцтто данного предикатного символа следующим образом. Вместо I(Р■ ■ ■ ,Ьт)) = VI х V2 х ... х Vm С ит положим ^(Р ■■■, т) = V1 х У2 х ■■■ х Ут х Vm+l X Vm+2 X ■ ■■ X Vm+(n-m) С ип, причем, по определению, Vm = Vm+i для всех г, т < г < п. Если же т = п, то полагаем Тп(Р12, ■ ■ ■, ^)) = I (Р (П ^■■■,1т))-
Представляется, что такое расширение интерпретации тте меняет ее содержательной сути. Зато теперь каждый атомарный
А
ип
п А
для того, чтобы с помощью той же техники определить более
А
для к > п точно таким же способом, как и для п, определим Iк(Р■ ■ ■ ^т)) С ик. Данный прием повышения степени интерпретации атомарных предикатных символов потребуется в дальнейшем.
Перейдем к вычислительной интерпретации логических связок. Допустим, формула А имеет степень п, содержит к атомарных предикатных символов (ясно, что к > 0) и интерпретация Гп(А) определена. Тем самым определена и интерпретация In(Pi(tl, t2, ■ ■ ■ ^т)) каждого атомарного предикатного символа Pi(tl, t2, ■ ■ ■ ^т) из А, где 1 < г < к. Допустим также, что для каждого атомарного предикатного символа ■ ■ ■, tm) из А
существует релевантная для ^(Р^х^2, ■ ■ ■ ^т)) часть универсума Кп, так что выполняется включение In(Pi(tl,t2, ■ ■ ■ ,tm)) С К™ Определим релевантную часть универсума КаА для всей формулы А: КА = ^{Щ<к}■ Иными словами, релевантная часть
А
пия релевантных частей универсума ее атомарных предикатов. Поскольку в силу третьей аксиомы каждое КП из {КП<к} непусто, Кп тем более не пусто. После этого, естественно, полагаем Тп(—А) = КП\Тп(Л). По определению, формула —А вычислимо выполнена (истинна), если (1) предикат ^(—А) вычислим, и (2) Г(—А) = 0.
Речь здесь и в дальнейшем идет о выполнимости, если значение формулы зависит от функции приписывания значений свободным индивидным переменным, и об истинности, если значение формулы от приписываний не зависит, например, если свободных индивидных переменных в пей пет. В двух этих конкретных пунктах имеется полное соответствие с семантикой А.Тарского.
Предположим, что функции интерпретации Iк и Iт определены для формул А и В. Лишь в этом случае имеет смысл рассматривать интерпретацию формул вида (А&В) и (А V В). Перейдем к вычислительной характеризации логических операций конъюнкции & и дизъюнкции V. Предварительно вычислим степень п формул (А&В) и (А V В) (ясно, что она будет одинаковой для этих формул и, к тому же, п = к, если к > т, или п = т, если т > к) и переопределим с помощью приема повышения степени интерпретации ^ (А) и ^(В), получив в результате Гп(А) и Гп(В). Формула А&В вычислимо выполнена (истинна), если (1) предикат ^(А&В) = ^(А) П I'n(В) вычислим, и (2) ^(А&В) = 0. Формула А V В вычислимо выполнена (истинна), если (1) предикат !п(А V В) = !п(А) и In(В) вычислим, и (2) Г(А V В) = 0.
Будем опускать индексы степеней интерпретации и писать I вместо !п и К вместо Кп, памятуя о всегда имеющейся возможности уравнения степеней интерпретации всех подформул А
любого конечного набора формул {А\, А2,..., Ак}, для которого определены интерпретации {Гnl(А\), Тn2(А2),..., I1%к(Ак)}, всегда можно перейти к унифицированному по степени интерпретации набору {^(Аг), !п(А2),..., ^(Акгде п > щ (1 < г < к). Разумеется, это не так в случае бесконечных множеств формул.
ТЕОРЕМА 3.
Ч (а). Если I(А) и I(В) вычислимы, то I(А&В) вычислим.
Ч (Ь). Если I(А&В) вычислим, то I(А) и I(В) вычислимы.
Ь (с). Если I(А) вычислим, I(В) вычислим
и Эх(х Е I(А&В)), то I(А&В) вычислим.
Ь ((I). Если I(А) и I(В) вычислимы, то I(А V В) вычислим.
Доказательство.
(a). При I(А&В) = 0 предикат I(А&В) в общем случае не является вычислимым (см. обсуждение постулата локального пересел етшя).
(b). Возьмем в качестве компьютера С МНР-машину. Тогда па множестве формул классического исчисления предикатов пре-
(х) (х)
числим. Положим ДА) = Тсорсма(х) и I(В) = Выполнима(х). Тогда I(A)ПI(В) = Тсорсма(х) П Выполнима(х) = Тсорсма(х) = I(А&В). Отсюда предикат I(А&В) вычислим, а предикат I(В) тте вычислим.
(c). Следует из постулата локального пересечения.
(с1). Следует из постулата локального объединения. д.Е.О.
Если считать импликацию (А — В) самостоятельной логической операцией, то не вполне попятно, какой вычислительный смысл эта операция может иметь. Наверное, недаром импликация отсутствует в большинстве языков программирования. Проще поступить обычным образом: положить, по определению, (А — В) ^ (—А V В). В этом случае интерпретация формулы (А — В) предполагает существование предикатов I(—А) ж I(В). Тогда I(А В) = I(—А) и I(В).
Остается рассмотреть выполнимость и истинностные условия для формул с кванторами. В каком случае считать выполненными и истинными формулы вида УхА(х) и ЭхА(х)'! Первый шаг очевиден: предположим, что предикат I(А(х)) определен. В случае с квантором общности второй птаг должен состоять в предположении, что определено релевантное (в нашем смысле) отрицание предиката I(А(х)), т.е. предикат R\I(А(х)). Тогда па третьем шаге получаем: формула ЧхА(х) вычислимо выполнена
К (2) КV(А(х)) = 0
(или, что то же самое, К = I(А(х))). Отсюда вытекает, что следует принять по определению: I(УхА(х)) = К, если I(А(х)) = К, и I(УхА(х)) = 0, если I(А(х)) = К
Второй шаг в случае с квантором существования совершенно ртттой. Здесь вообще не требуется отнесения к релеваптпо-К
бы выполнялись требования вычислимости и ттепустоты: формула ЗхА(х) вычислимо выполнена (истинна), если (1) предикат I(А(х)) вычислим и (2) I(А(х)) = 0. Тогда логично установить I(ЗхА(х)) = I(А(х)), если I(А(х)) = 0, и I(ЗхА(х)) = 0, если I(А(х)) = 0. Отсюда принимаем по определению I(ЗхА(х)) =
I (А(х)).
Таким образом, квантор общности действует как переключатель, дающий либо К либо 0 в зависимости от значения I(А(х)), тогда как квантор существования сохраняет значение I(А(х)) и в этом смысле ничего не меняет.
В итоге был представлен метод вычислительной интерпретации формул классического первопорядкового языка, сводимый к двум этапам: на первом определялось множество I(А), а на втором ставился вопрос о вычислимости множества I(А). При этом отнюдь не всякой правильно построенной формуле была гарантирована вычислительная интерпретация из-за проблем с релевантным отрицанием па первом этапе и из-за ттевычислимо-сти некоторых множеств па втором этапе. Тем не менее, верно следующее общее утверждение.
ТЕОРЕМА 4. Формула А вычислимо выполнена (истинна) предикат I(А) вычислим и I(А) = 0.
Доказательство. Доказательство осуществляется индукцией
А
Подробное изучение свойств введенных логических операций оставим па будущее. Обсудим лить некоторые частные случаи. Начнем с формулы (Р(x)V—P(х)). Если релевантный универсум Р
вествующее К С и и I(Р(х)) = У, где V С К, то I(—Р(х)) = К\У. Тогда формуле (Р(х) V —Р(х)) сопоставляется множество I(Р(х) V —Р(х)) = I(Р(х)) и I(—Р(х)) = V и К\У = К Если К =
и, то формула (Р(х) V —Р(х)) выполнена при каждом приписывании V, т.е. классически истинна. Но вычислимо истинна она
и
гарантировано. Но если К = и, классически (Р(х) V —Р(х)) уже не будет истинной. Зато, учитывая V и К\V = К и К = 0, при условии вычислимости множества К, формула (Р(х) V —Р (х)) будет вычислимо истинна: (Р(х) V —Р(х)) вычислимо истинна ^^ К вычислим. Более того, при тех же условиях будет вычислимо истинна и формула Ух(Р(х) V —Р(х)), поскольку предикат К вычислим и К\I(Р(х) V —Р(х)) = 0. Непустота и вычисли-
К
тинность и формулы Эх(Р(х) V—P(х)). Однако невычислимость К
Формула (Р(х) & —Р(х)) ни при каких условиях не может стать вычислимо истинной. Действительно, I(Р(х) & —Р(х)) = I(Р(х)) П I(—Р(х)) = V П К\V = 0. Но вычислимая истин-
К
ку К(Р(х) & -р(х)) = и{Кр(х)} = К, имеем ]:(—(Р(х) & —Р(х))) =
КXI(Р(х) & —Р(х)) = К\0 = К = 0. Отсюда —(Р(х) & —Р(х))
вычислимо истинна ^^ К вычислим. И снова вычислимость К обеспечит вычислимую истинность формул Ух—(Р(х) & —Р(х)) и Эх—(Р(х) & —Р(х)).
Предложенное введение в теорию вычислимой истины является дальнейшим развитием концепции истины как трехместного предиката, обсуждавшейся в упомянутых работах автора. Исти-
А
и не определяется (как у А.Тарского) сочетанием «высказывание — модель», т.е. парой < А^(А) >. Интерпретация I лишь
А
А
ным в него смыслом I(А) с реальностиью С. Тем самым получаем трехкомпонентную структуру < А^(А), С >: высказывание А с приписанным смыслом I(А) истинно (или не истинно) по от-
С
блеме истины и реальности последняя была описана теоретико-
С
числительттыми устройствами (компьютерами) и реализуемыми па них вычислительными процессами, тогда как смысловые ха-
рактеристики оставались теоретико-множественными. В какой мере плодотворно представление изменяющейся реальности в виде вычислимого универсума — покажет будущее.
Литература
[1] Анисов A.M. Время и компьютер. ТТегеометрический образ времени. М., 1991.
[2] Анисов A.M. Темпоральный универсум и его познание. М., 2000.
[3] Анисов A.M. Проблема реальности в семантической теории истины // Труды научно-исследовательского семинара Логического центра Института философии РАТТ. Вып. XV!!. М., 2001.
[1 ] Анисов А.М. Определение понятия реальной истины в теории множеств с атомами // Логические исследования. Вып. 11. М., 200-1.
[5] Анисов A.M. Понятие реальности и логика // Логические исследования. Вып. 12. М., 2005.
[6] Бсркович С.Я. Клеточные автоматы как модель реальности: Поиски новых представлений физических и информационных процессов. М., 1993.
[7] Катлспд II. Вычислимость. Введение в теорию рекурсивных функций. М., 1983.
[8] Круги,инский A.A. Логика «И цзина»: дедукция в древнем Китае. М., 1999.
[9] Хармут X. Применение методов теории информации в физике. М., 1989.
[10] Poundstone W. The Recursive Universe. Cosmic Complexity and the Limits of Scientific Knowledge. N.Y., 1985.