КОМПЬЮТЕРНЫЕ—
УДК 519.7
О СИСТЕМНОМ АНАЛИЗЕ ИНФОРМАЦИОННЫХ ПРОЦЕССОВ. I
БАТАЛИНА.В., ТЕВЯШЕВ А.Д., ШАБАНОВ-КУШНАРЕНКО Ю.П.
Описываются достижения новой области знания — системного анализа информационных процессов (САИП). В первой части дается характеристика предмета САИП, формулируются основные решаемые в нем задачи и рассматриваются возможные подходы к их решению. Анализируется базовое для САИП понятие отношения. Описываются способы формульного представления отношений и действий над ними.
1. Введение
Изобретение в конце 17-го века паровой машины дало начало первой научно-технической революции (НТР), в результате которой достигнуто многократное усиление физических возможностей человека за счет использования механизмов и машин. В середине текущего столетия были созданы универсальные цифровые вычислительные машины, которые стали двигателем второй НТР. Ее результатом явилось усиление интеллектуальных возможностей людей за счет использования информационной техники. Вторая НТР происходит и в настоящее время, продолжается также первая. Наблюдаются повсеместная компьютеризация и информатизация, коренным образом меняющие облик человеческого общества. Технические устройства и системы, усиливающие интеллектуальные возможности человека, называются искусственным интеллектом.
Первая НТР стимулировала быстрое развитие классической (в основном — числовой) физики и математики, которые стали ее научным фундаментом. Прогрессу второй НТР призваны содействовать порожденные ею физика и математика информационных процессов (не числовой, а логической природы). Физика информационных процессов называется теорией интеллекта, математика информационных процессов — логической математикой. Задачей теории интеллекта является математическое описание естественных информационных процессов, наблюдаемых в природе, и искусственных информационных процессов, создаваемых техникой. Логическая математика разрабатывает новый формальный язык, необходимый для такого описания.
Взятые вместе, теория интеллекта и логическая математика образуют основание системного анализа информационных процессов, цель которого — служить научным фундаментом и инструментом в
деле совершенствования существующих и разработки новых систем искусственного интеллекта. Системный анализ информационных процессов еще не получил должного развития, однако прогресс в этой области чрезвычайно важен для ускорения компьютеризации и информатизации общества.
2. Интеллект как предмет математического описания
Основным объектом в системном анализе информационных процессов является интеллект (разум). Согласно классическому определению Декарта, разум — это то, что обеспечивает существование человека как личности [1, с. 283]. Декарт полагал, что необходимым условием наличия интеллекта является владение языком, поэтому ни у животных, ни у машин разума нет [1, с. 30І]. Современная наука склонна определять интеллект несколько иначе, а именно — как способность материальной системы к достаточно сложной обработке информации. Она готова принять, что и животные, и машины обладают интеллектом, хотя и менее развитым, чем у человека.
Существуют ли другие разновидности интеллекта? Уверенного ответа на этот вопрос наука пока не дает. Высказывается предположение о существовании генетического интеллекта — биологического механизма, реализованного на внутриклеточном и молекулярном уровнях в организмах растений и животных, который уже на протяжении многих миллионов лет поддерживает жизнь на Земле и обеспечивает ее развитие [2, с. 151]. Наука не исключает существование внеземных цивилизаций, а философия вводит и анализирует понятие божественного разума. Имеется, кроме того, предложение определить интеллект абстрактно — как универсальную и всеобъемлющую систему логики.
Наука всегда проявляла повышенный интерес к интеллекту человека. В прошлом его изучение мотивировалось лишь стремлением людей познать и усовершенствовать самих себя, теперь же появился дополнительный стимул к анализу человеческого разума как источнику новых идей для совершенство -вания искусственного интеллекта. Люди могут выполнять много видов таких интеллектуальных действий (восприятие, понимание, осознание и др.), которые желательно искусственно воспроизводить с помощью машин, но на которые последние пока не способны. Научное направление, ставящее своей задачей изучение естественного интеллекта в целях использования полученных знаний при совершенствовании интеллекта искусственного, называется бионикой интеллекта.
Интеллект человека изучается философией, психологией, языкознанием, логикой и многими другими науками. Добыты обширные сведения в этих областях знания. Весьма заманчиво суметь воспользоваться ими для совершенствования искусственного интеллекта, например, основываясь на знаниях, накопленных грамматикой, построить компьютерную систему, понимающую естествен-нный язык, или же систему англо-русского машинного перевода. Однако попытки такого рода, за немногими исключениями, пока заканчиваются неудачей.
102
РИ, 1998, № 3
Причина этого кроется в “некондиционности” знаний об интеллекте: они не обладают той степенью точности и детализации, которая необходима для того, чтобы их смогла освоить машина. Дело в том, что все эти знания изначально адресовались не машинам, а людям. Человек же, являясь интеллектуальной системой высокого совершенства, не нуждается в «разжевывании» знаний, он их понимает «с полуслова», хотя сам не отдает себе отчета в том, как это понимание совершается. Машина же, обладая несравненно менее развитым интеллектом, к этому неспособна. Ей все надо растолковать детально и на точном математическом языке, только при выполнении этого условия можно надеяться на то, что машина эти знания усвоит.
В тех же случаях, когда полученные наукой знания об определенных механизмах интеллекта оказывались точными и исчерпывающими, разработчики искусственного интеллекта смогли ими воспользоваться. Так, в середине прошлого столетия Буль изучил механизм образования сложных высказываний из простых и выразил его в виде так называемой алгебры логики. Через сто лет разработчики первых вычислительных машин воспользовались этой алгеброй для построения схем вычислительных машин и составления программ их работы. В настоящее время алгебра логики стала необходимым инструментом при разработке систем искусственного интеллекта.
Таким образом, возникает важная для совершенствования искусственного интеллекта задача математического описания интеллекта человека, вообще любых видов естественного интеллекта. Не менее важна и задача математического описания искусственного интеллекта, который тоже нуждается в физико-математическом анализе. Такой анализ необходим для осмысления, систематизации, обобщения и совершенствования уже имеющихся знаний об искусственном интеллекте, для рационализации и автоматизации разработки новых технических решений, для повышения качества подготовки специалистов в области искусственного интеллекта.
Известны три основных подхода к исследованию интеллекта — функциональный, субъективный и материальный. Рассмотрим их сначала применительно к человеку, а затем — и к машине. Функциональный подход к исследованию человеческого интеллекта заключается в анализе наблюдаемого извне (т.е. другими людьми) разумного поведениия человека. В этом случае испытуемый, т.е человек, интеллект которого исследуется, рассматривается лишь как физический преобразователь сигналов, подлежащий экспериментальному изучению. При функциональном подходе исследователь игнорирует психические, психофизические и физиологические процессы, сопровождающие внешне наблюдаемое поведение человека. Он рассматривает испытуемого лишь как не расчлененный на части объект — так называемый “черный ящик”, реагирующий машинообразно на те или иные внешние воздействия. Принимается во внимание лишь та информация о входных и выходных сигналах, которая может быть получена объективным измерением физическими приборами. Если, к примеру, в роли входного сигнала выступает
речь, обращенная к испытуемому, то при функциональном подходе полностью игнорируется наличие ее смысловой стороны, и речь рассматривается только как физический процесс, т.е. как колебание звукового давления воздуха.
Субъективный подход к изучению интеллекта заключается в наблюдении его изнутри с помощью интроспекции — внутреннего зрения человека. Таким способом каждый человек обнаруживает в себе субъективный мир, заполненный разнообразными переживаниями. К ним относятся ощущения, восприятия, представления, мысли, чувства, желания, намерения и т.п. Узнаём мы о них, благодаря наличию сознания, которое выполняет роль прожектора, выхватывающего из мрака “черного ящика” интеллекта человека те или иные его детали. Сознание — это специальный измерительный прибор, данный нам природой для анализа собственных субъективных состояний. Материальный подход состоит в том, что исследуется структура носителя интеллекта. В применении к человеку — это изучение анатомии и физиологии его мозга и нервной системы, строения и работы органов чувств и движения (на уровне макроструктур, клеток и молекул).
Рассмотренные подходы дополняют друг друга, поскольку изучают интеллект с разных сторон. Функциональному подходу противостоят структурные, к которым относятся субъективный и материальный подходы. Они нацелены на расчленение интеллектуальной системы на части и имеют дело с ее структурой. При функциональном же подходе изучаются реакции интеллекта на различные воздействия как единой нерасчлененной системы. Субъективному подходу противостоят объективные, к которым относятся функциональный и материальный подходы. С их помощью рассматривают интеллект извне и обеспечивают его объективное исследование. При субъективном же подходе наблюдение интеллекта производится изнутри. Материальному подходу противостоят идеальные, к которым относятся функциональный и субъективный подходы. Они имеют дело с идеальной стороной интеллекта — его способностью оперировать информацией. При материальном же подходе анализируется реально действующий механизм, воплощающий в натуре изучаемую исследователем интеллектуальную систему. Описанные зависимости можно наглядно изобразить в виде треугольника анализа интеллекта (рис. 1).
Функциональный подход
субъективный материальный
Рис. 1
РИ, 1998, № 3
103
Всестороннее исследование интеллекта человека требует совместного использования всех трех подходов. Результаты такого исследования представляют интерес для разработчика искусственного интеллекта. Анатомо-физиологические данные о мозге и нервной системе человека могут использоваться при разработке схем и отдельных элементов вычислительных машин. Сведения об интеллектуальных реакциях человека на внешние воздействия могут оказаться полезными при совершенствовании функций вычислительных устройств, выполняющих роль отдельных звеньев технических систем. Данные об интеллекте человека, полученные интроспективным путем, могут существенно помочь новым программным разработкам для диалоговых и любых других человеко-машинных систем.
Исследования интеллекта человека — это трудоемкий, медленный и длительный процесс добывания информации. Нет ли способа сократить путь и получать уже готовую информацию, подобно тому как школьник получает знания из учебника? Один из возможных способов — обратиться к творцу человека, т.е. к генетическому интеллекту. Сообщаемые им сведения содержатся в обширном генетическом коде человека: его запись на бумаге буквами латинского алфавита имела бы вид библиотеки, составленной из тысячи объемистых томов [3, с. 115]. Сегодня эта запись еще не прочитана полностью и не расшифрована, но в будущем она может стать источником ценной информации для разработчиков искусственного интеллекта.
Другой способ получения готовой информации об интеллекте человека еще более проблематичен. У одного из авторов этой статьи обучался аспирант — профессиональный йог. Он утверждал, что с помощью медитации общается с высшим разумом. Для проверки справедливости этого утверждения аспиранту было предложено обратиться наверх для получения информации о механизме человеческого интеллекта. Аспирант приступил к делу и в результате за месяц написал текст объемом в полпечатных листа. Текст имеет вид начальной части тщательно и квалифицированно написанного учебника о механизме человеческого интеллекта. В нем даются исчерпывающие (как утверждал аспирант — автор текста) перечень и характеристика подсистем (около десятка) интеллекта человека и связей между ними.
Практически воспользоваться сообщаемыми сведениями разработчик искусственного интеллекта не имеет никакой возможности, так как текст обрывается “на самом интересном месте ”, и читатель остается в неведении, что же конкретно представляют собой эти подсистемы. У аспиранта было спрошено, когда же он доберется до самого низа и тем самым завершит свое описание механизма интеллекта человека. Он ответствовал: уровней в иерархической структуре интеллекта много; информация нарастает лавинообразно при переходе на каждый следующий этаж вниз; чтобы все описать до конца и с исчерпывающей полнотой, мне не хватит всей моей жизни. Тем все дело и кончилось. Исследование интеллекта— это движение снизу вверх: сначала изучаем детали, а затем на их основе постепенно воссоздаем все более общую картину его структуры. Обучение же механизму интеллекта — это движение сверху вниз. Пока не доберемся до самого низа, мы ничего конкретного не узнаем о
механизме интеллекта. Чтобы освоить предмет, надо прочесть учебник до конца, а не довольствоваться его первыми страницами.
Задача исследования интеллекта естественным образом включается в более широкую систему задач, наглядно выражаемую квадратом синтеза интеллекта (рис. 2).
исследование учеба
Рис. 2
Исследование интеллекта — это производство знаний, завершаемое созданием руководств, по которым будут обучаться создатели систем искусственного интеллекта. Учеба — это такое потребление знаний, без которого невозможны ни исследование, ни разработка интеллектуальных систем. Применение последних на практике, в свою очередь, ускоряет исследование и совершенствование как искусственного, так и естественного интеллекта.
3. Предикаты
Классическая физика изучает и математически описывает явления, наблюдаемые во внешнем по отношению к человеку мире, для которого характер -ны количественные изменения. Неудивительно поэтому, что математика, развившаяся в ответ на запросы физики и техники эпохи первой НТР, носит преимущественно числовой характер. Теория же интеллекта (т.е. физика информационных процессов) изучает и математически описывает явления, наблюдаемые во внутреннем мире человека или машины. Информационные процессы не сводятся к количественным изменениям, они имеют, в основном, не числовую, а логическую природу. Поэтому теория интеллекта нуждается в аппарате логической математики, т.е. в таком алгебраическом языке, на котором можно было бы описывать информационные объекты.
В роли главных объектов в теории интеллекта выступают мысли и мышление. Мысли формально выражаются в виде отношений, а процесс мышления — в виде последовательности операций над отношениями [4-7]. Таким образом, логическая математика должна включать в себя алгебру отношений и алгебру операций над отношениями. Что же такое отношение? Математика определяет отношения как подмножества какого-либо декартова произведения. Несмотря на простоту определения (а может быть, именно благодаря ей), понятие отношения обладает ничем не ограниченной опи-
104
РИ, 1998, № 3
сательной силой. Имеет место поразительный факт: за все 2,5 тысячи лет развития науки в ней не встретилось ни одного объекта, который нельзя было бы формально выразить в виде какого-либо отношения. Этот факт позволяет рассматривать логическую математику как универсальное средство формального описания любых объектов, в том числе — любых информационных процессов.
Классическая математика оперирует функциями. Для их записи она разработала специальный язык формул. К сожалению, отношения — не функции, их не удается непосредственно выразить формулами. Отношения записывают в виде множеств наборов элементов, а также в виде таблиц, графиков или графов. Гильберт [8, с. 178] в 1920 г. предложил обойти эту трудность, описывая формулами не сами отношения, а некоторые взаимнооднозначно связанные с ними функции. Этим достигается (хотя и опосредованно) формульное представление отношений. Он показал, как это делается, на следующем простейшем примере и дальше развивать эту тему не стал.
Дано множество P={a, b}, состоящее из двух элементов а и b. (Множество Pможно понимать как одноместное отношение P={(a), (b)}, состоящее из двух однокомпонентных наборов (а) и (b), образованных из элементов а и b). Требуется записать его в виде формулы. Гильберт заменяет множество P функцией P(x), обращающейся в 1 при x=a или x=b и в 0 — при любых других значениях переменной х. Ее он записывает в виде формулы
P(x)=(x=a) v (x=b).
Запись x=a в ней понимается как функция a(x), обращающаяся в 1 при x=a и в 0 — при любом xФ a. Аналогично понимается и выражение x=b. Знак v обозначает операцию дизъюнкции двоичных знаков:
0v0=0,0v1=1v0=1v1=1.
Имея функцию P(x), всегда можно по ней восстановить множество P. Таким образом, записанная формула действительно выражает множество {a, b}. Ясно, что таким способом можно записать в виде формулы любое множество.
Метод, указанный Гильбертом, можно легко распространить на любые отношения [4]. Сделаем это. Любая функция P(xi, x2,..., xm), отображающая множество А=Л1 х А2х ... х Am в множество Z={0, 1}, называется предикатом, заданным на А. Пусть L — множество всех отношений на А, M—множество всех предикатов на А. Отношение Ре L и предикат Ре М называются соответствующими друг другу, если при любых х1еА1, х2еА2,..., хтеАт
Р(хь х2,..., хт)
1, если (хь х2,..., Хт) е Р;
0, если (х1, Х2,..., Хт) і Р. (1)
Соотношение (1) устанавливает биективное соответствие между всеми отношениями множества L и всеми предикатами множества М. Множество всех наборов (x1, x2,..., xm), удовлетворяющих уравнению P(x1, x2,..., xm)=1, образует отношение Р. Предикат Ре М, определяемый правилом (1), называется характеристической функцией отношения Ре L. Переход от предиката Р к соответствующему ему отношению Р совершается по правилу:
еслир(хі, Х2,..., Хт ) = 1, то (Хі, Х2,..., Хт ) е Р;
(2)
если Р(х1, х2,..., хт) = 0, то (х1, х2,..., хт) і Р. у ’ Предикатом узнавания элемента аеАi по переменной Xi (i= 1, т ) называется предикат из М, определяемый условием:
x
1, если xi = a; 0, если хі Ф a.
(3)
К дизъюнкции, используемой Гильбертом, добавляем конъюнкцию двоичных знаков: 0л0=0л1=1л0=0, 1л1=1.
Введенных средств достаточно для формульного представления любого отношения. Делается это следующим образом. Пусть, к примеру, дано бинарное отношение
Р={(3, 0), (2, 1), (1, 2), (0, 3), (2, 2)}. Соответствующий ему предикат запишется формулой:
Р(х, у)=х3у^х2у^х1у^х0у^х2у2.
В общем случае формула для любого предиката Ре M отыскивается по правилу:
Р (Х1, Х2 ,..., Хт ) =
= v (P(a1,a2,...,ат )xa x^ ... Xа™).
а\еЛ1
a2еA2
(4)
amеЛm
Справа от знака равенства фигурируют константы 0 или 1 под видом выражения Р(а1, а2,..., а„). Логическая сумма v берется по всем наборам (а1, а2,..., ащ)еА, форма (4) называется совершенной дизъюнктивной нормальной формой (СДНФ) предиката Р.
Приведенная здесь система формульного представления предикатов называется алгеброй предикатов с базисными элементами в виде предикатов узнавания элементов и базисными операциями дизъюнкции и конъюнкции предикатов. Алгебра предикатов полна в том смысле, что ее формулами можно выразить любой предикат. Алгебру предикатов можно дополнить операцией отрицания предикатов, однако это не расширяет ее выразительные возможности. Формулы алгебры предикатов допускают тождественные преобразования по законам булевой алгебры, которые дополняются законами истинности -
v xa = 1, (і = 1, т); (5)
a<EAi
ложности —
если аФb, то xiaxib=0, (i= 1, т ; а, ЬєЛ) (6)
и отрицания —
xa = v xb, (i = 1, т; a е Лі).
ЬеЛі (7)
b Фa
Приведем пример упрощения формулы алгебры предикатов с помощью ее тождественных преобразований. Пусть
Р(х, у)=хауаФ Xby3v Xbybv xcy3vxcyb, где х, уе^, b, c}. Тогда
Р(х, у)=xaуаvxbуаvX:уаvXbуbvX:уb=
РИ, 1998, № 3
105
^xFvXpVXi^yv^VX^y^-yv Xа У=Ус Xа У.
4. Отображения
Кроме описанного, возможен и другой способ опосредованного формульного описания отношений, основанный на замене их отображениями [5]. Сначала рассмотрим одноместные отображения, а затем — и многоместные. Будем говорить, что каждому предикату F(x, у), определенному на Ах В, соответствует отображение F(x)=y, действующее из А в В. Если для элемента хеЛ существует элемент уеВ такой, что F(x, у)=1, то будем писать, что F(x)=y, и говорить, что отображение F сопоставляет элементу хеЛ элемент уе В, в противном случае будем писать F(x) ф у. Обратим внимание на то, что знак = здесь обозначает не отношение равенства, а нечто иное. Это следует из того, что одному и тому же элементу х некоторые отображения могут сопоставлять два различных элемента у1 и у2, и тогда получится, что уі=у2, что невозможно для равенства. Такие отображения называются многозначными. Знак = употреблен в нестандартной роли с той целью, чтобы подчеркнуть, что понятие отображения есть результат обобщения понятия функции. Существуют и такие отображения, которые некоторым элементам хеЛ не сопоставляют ни одного элемента уе В. Такие отображения называются частичными. Некоторые из отображений являются функциями, они называются всюду определенными и однозначными или, иначе, — функциональными отображениями. В математической литературе иногда допускается неточное словоупотребление, в результате которого появляются термины “частичная функция” и “многозначная функция”, где слово “функция” не вполне корректно употребляется вместо точного термина “отображение”.
Формульное представление отображений основано на импликативномразложении предиката:
F(x, у)= А (ха ^ F{а,у)). (8)
аеА
Согласно (8) любое отображение F(x)=y, действующее из А в В, которое соответствует предикату F(x,y) на Ах В, можно записать системой условий
x^F^, у), (аеЛ). (9)
Пусть, к примеру, на {a, b, c}2 задано отношение F={(a, b), (a, c), (b, c)}. Ему соответствует предикат: F(x, у^хРУслусУу.
Тогда отображение Б(х)=у, соответствующее предикату F, а значит, и отношению F, запишется, согласно (9), в виде системы условий:
Ла^уьсус, xb^>yc, xc^0. (a)
Эта запись означает, что отображение F элементу а сопоставляет два элемента b и с, элементу b — один элемент с и элементу с — ни одного элемента. Мы получили общий способ формульной записи отображений, этим опосредованно описываются формулами также и соответствующие им отношения, поскольку между отношениями и отображениями существует взаимно-однозначное соответствие.
Если F(х)=у — отображение, действующее из А в В, то элемент уеВ называется образом элемента хеА, а элемент л — прообразом элемента у относительно отображения F. Совокупность Sx всех образов уе В элемента хеА относительно отображения у=F(х) называется полным образом элемен-
та х относительно отображения F. Можем записать, что F(x)=Sx, где знак = теперь уже обозначает настоящее равенство. Отображение F ставит в соответствие элементу xеА множество SxcB всех тех элементов у, для которых F(x)=y. Точный смысл записи F(x)=y состоит в том, что существует множество S^cB, такое что F(x)=Sx и уе Sx. Отображение F всякий раз сопоставляет элементу хеА какой-нибудь из элементов yеSx. Совокупность Ry всех прообразов хеА элемента уеВ относительно отображения у=F(х) называется полным прообразом элемента у относительно отображения F.
Образом множества МсА. относительно отображения F называется совокупность Nc£ всех образов элементов множества М. Прообразом множества N^B относительно отображения F называется совокупность М^Л всех прообразов элементов множества N. Образ N множества М отыскивается по формуле
ЩуУЗхеА^^, у)аМ(х)) . (10)
Пусть, к примеру, отображение F(x)=y, действующее из А в В, задано предикатом:
F(x, у)=х1(у^уь)сх2уСх3уссл4(уУує) на АхВ, где А={1, 2, 3, 4}, В={а, b, с, d, e}. Возьмем множество M={1, 2}. Тогда:
M(x)=x1vx2,
и по формуле (10) находим:
N(y)=Эxе{1, 2, 3, 4}(x1(уavуb)vx2уVx3уcv vx4(уdvye))(x1vл2)=уavУvуd.
Итак, образом множества М={1, 2} относительно отображения F будет множество N={a, b, d}.
Прообраз M множества Nотыскивается по формуле:
М’(х)=ЗуеВ^, у)АМ(у)). (11)
К примеру, для того же отображения F, задавшись множеством N={a, b, d}, по формуле (11) находим: М’(х)=Зуе{а, b, с, d, е}(х1(у°суь)сх2уас vx3уcvл4(уdvуe))(уavуbvуd)=x1vx2vл4.
Итак, прообразом множества N={a, b, d} относительно отображения F будет множество M’={1, 2, 4}. Как видим, не обязательно, чтобы М=М.
Если предикату F(x, у), определенному на АхВ, соответствует отображение y=F(x), то говорят, что предикату Є(у, x)=F(x, у), определенному на ВхЛ, соответствует отображение G=F-1, обратное отображению F, и пишут x=G(y)=F-1(y). Используя (8), записываем:
F(x, у) = Gy х) = А (у зС(Ь, х)) =
= А у 3F(b, х)). (12)
Окончательно имеем:
F(x, у) = А у 3F(x, b)). (13)
Полученное равенство определяет для предиката F(x, у) еще одно отображение Gy=x, записываемое системой условий:
у 3F(x, b), ЬєВ. (14)
Например, для рассмотренного выше отношения F={(a, b), (а, с), (b, с)} на {a, b, с}2 с помощью (14) получаем его второе формульное описание в виде отображения
Уз0, У^Х?, y^X^vxb, (б)
обратного отображению (а). Таким образом, любое бинарное отношение F(x, у) можно описать в виде
106
РИ, 1998, № 3
двух различных отображений — прямого F(x)=y и обратного F -1(у)=х.
Многоместные отображения получаем, переходя от предиката F(x, у) на АхВк предикату F(x1, x2,..., xn, у) на А1хА2х...хА„х5 и от отображения F(x)=y, действующего из множества A в множество B, к отображению F(x1, x2,..., xn)=y из А1 х А2х... х Ап в B. Все сказанное выше об одноместных отображениях легко распространяется также и на многоместные отображения. Импликативное разложение многоместного предиката имеет вид F(x1, x2,..., xn, у) =
= V {xa ха22... хапп 3 F(ai„ а2,..., ап, у)).
а\ єЛі
а2 єЛ2 (15)
а
П
єЛ
П
Всего существует п+1 различных отображений, соответствующих предикату F, определяемых тем, какой из его аргументов принимается в роли у. Отображение F(x1, x2,..., xn)=y, соответствующее предикату F(x1, x2,..., xn, у), записывается в виде системы условий
х
а1
1
ха2 хап
л2 ••• лп
з F (аі, а2,..., ап, у),
(16)
где а1єА1, а2єА2,..., аnєАn.
Образ Nс Bмножества МсА1 хА2х...хАп и прообраз M множества Nотносительно отображения F(x1, x2,..., xn)=y, определяемые предикатом F(x1, x2,..., xn, у), отыскиваются по формулам:
N(y)=ЭXlєАlЭX2єА2...ЭXnЄАn(F(xЬ x2,..., xn, у)л AM(xb x2, ..., xn)); (17)
M,(xhx2,..., xn)=3yeB(F(x1, x2,..., xn, у)Щу)). (18) Векторные отображения получаем, переходя от
предиката F(x1, x2,..., xn, у) на А1хА2х.хАпхВ к
предикату F(x 1, x2,..., xn, у 1, у2,..., ур) на А1хА2х...хАпхВ1хВ2х...хВр и от отображения F(x1, x2,..., xn)=y, действующего из А1хА2х...хАп в B, к отображению F(x1, x2,..., x^^u у2,..., ур) из А1хА2х...хАп в В1хВ2х...хВр. Для случая векторных отображений зависимости (15) — (18) обобщаются следующим образом:
F(хь х2,...5 хп, Уі, У2,..., Ур) =
= V(хі
аі єЛі
а2 єЛ2
аі ха2
п
х
з
ап єЛп
з F(a1, a2,..., an, у1, у2,..., ур)); (19)
хГ А2... хШп 3 F (a1, а2 ,..., ап , Уи У 2 Ур ), (20)
где а1єАь а2єА2,..., аnєАn;
N(yl, у2,..., ур)=Зх1єА13х2єА2 ...ЗXnєАn(F(Xl, x2,..., xn, у1, у2,..., ур)М^1, x2,..., xn)); (21)
M’(x1, x2,..., xn)=3y1 є В1ЗУ2 є В ...ЗурЄ Bp(F(x1,
x2,...,xn, у1, у2,..., Уp)N(yl, у2,..., ур)). (22) 5. Однозначные отображения
Однозначные отображения заслуживают особого рассмотрения, поскольку они могут быть представлены формулами более простого вида, чем произвольные отображения. Пусть y=F(x) — отображение, действующее из А в B, F(x, у) — соответствующий ему предикат на АхВ. Множество А называется областью отправления, а множество В — областью прибытия
отображения F. Множество М, определяемое для всех хє А равенством
М^^А^лЗуєА F(x, у), (23)
называется областью определения отображения F. Множество N, определяемое для всех ує B равенством N(y)=B(y)л3xєA F(x, у), (24)
называется областью значений отображения F. Отображение F называется всюду определенным, если xєA ЗуєА F(x, у), (25)
и частичным — в противном случае. Отображение называется сюръективным, если
уєВ 3xєA F(x, у). (26)
Будем говорить, что предикату Р\к,у), определенному на Ах В, соответствует однозначное отображение F, действующее из А в В, если соответствующий ему предикат Fудовлетворяет условию однозначности р xєA р у, £є B(F(x, y)лF(x, і)зБ(у, z)), (27) где Б(у, z) — предикат равенства на B. Отображение, не являющееся однозначным, называется многозначным. Условие (27) называется также прямой однозначностью. Будем говорить, что отображение ^=F(x) удовлетворяет условию обратной однозначности, если отображение x=F-1^) подчиняется условию прямой однозначности. Отображение F, удовлетворяющее условию обратной однозначности
р x, уєА р zєB(F(x, z)aF(^ z)3D(x, у)), (28)
называется инъективным. Заметим, что равенство на U выражается в виде
D( х, у) = V х аУа. (29)
аєи
Его также можно определить выражением
FKx^ р Pс U(P(x)~P(y)). (30)
Любое однозначное отображение j=F(x), действующее из А в В, может быть представлено системой равенств
xb=Pb(x), ЬєВ, (31)
где Pb — некоторые подходящие предикаты на А. Если предикат F(x, у), соответствующий отображению F, известен, то предикаты Pb определяются равенствами Pb(x)=F(x, b), ЬєВ. (32)
Предикат Pb(x) определяет полный прообраз предмета у=Ь относительно отображения ^=F(x).
С помощью равенств (31)-(32) для любого однозначного отображения ^=F(x) можно найти для каждого хє А соответствующее ему значение ує В, если оно существует. В этом случае один из предикатов уЬ (ЬєВ) обращается в единицу, остальные — в нуль. Если же значение у отображения F для какого-то хє А не существует, то в этом случае все предикаты уЬ (ЬєВ) обращаются в нуль. Таким образом, равенства (31),(32) можно использовать в качестве удобного способа для явного формульного выражения однозначных отображений, в том числе — функций. Приведем пример представления однозначного отображения. Принимаем А={а, Ь, c, d}, B={a, Ь, c}, F(x, y)=xayЬvXbyЬvXdyc.
Записываем отображение F с помощью равенств (31)-(32):
уа=0, yЬ=XavxЬ, )f=xd. (в)
Согласно (в) если х=а, то у=Ь (так как уЬ=1, уа=ус= =0); если х=Ь, то у=Ь; если x=d, то у=с; для х=с значение j^F^) не существует, поскольку уа=уЬ=ус=0.
В заключение отметим, что здесь был рассмотрен лишь частный случай однозначных отображений, а
РИ, 1998, № 3
107
именно — одноместные отображения F(X)=y. Понятие однозначного отображения и полученные выше зависимости можно распространить также на многоместные отображения F(xi, X2,..., xm)=y и на векторные отображения F(xi, х2,..., Xm) = (yi, У2,...,Уи).
6. Предикатные операции
Операции над отношениями можно записывать формулами, заменяя их операциями над соответствующими предикатами [6]. Операция F, отображающая множество Mn в множество M называется предикатной. Образуем множество R всех предикатных операций. Алгеброй предикатных операций над R называется любая алгебра, заданная на носителе R. Пусть F(Xi, X2,..., Xn)= Y— предикатная операция, где Xi, X2,..., Xn — предикатные переменные, выступающие в роли аргументов операции F; Y— предикатная переменная, являющаяся значением операции F. Отрицание — F, дизъюнкция FvG и конъюнкция FaG предикатных операций F и G для любых X1, X2,..., Xne M определяются равенствами:
(—F)(Xi, X2,..., Xn)=—F(Xi, X2,..., Xn); (33) (FvG)(Xi, X2,..., Xn)=
=F(Xi, X2,..., Xn)vG(Xi, X2,..., Xn); (34)
(FaG)(Xi, X2,..., Xn)=
=F(Xi, X2,..., Xn)AG(Xi, X2,..., Xn). (35)
Булевой алгеброй предикатных операций называется любая алгебра предикатных операций с базисом операций, состоящим из отрицания, конъюнкции и дизъюнкции.
Константной предикатной операцией называется любая операция со значением
F(Xi, X2,..., Xn)=P (36)
при любых Xi, X2,..., Xn є M, где P — фиксированный предикат из M. Предикатной операцией узнавания
предиката Pпо переменной X' (i= 1,п ) называется операция вида:
11, если Xt = P,
X'P = (0,если Xt ФP. (37)
Дизъюнктивно-коньюктивной алгеброй предикатных операций называется такая алгебра предикатных операций, у которой базисными операциями служат дизъюнкция и коньюнкция, а базисными элементами — всевозможные константы Рє M и предикаты узнавания предиката Хр (i= 1, п , PєM).
Приведем пример формулы дизъюнктивно-конь-юктивной алгебры предикатных операций
XXх v Xа, (г)
полагая, что U={a, b}, m=n=i. Формулой (г) выражается вполне определенная предикатная операция F(X)= Y, преобразующая произвольно взятый предикат X в предикат Y. Возьмем, к примеру, в роли X предикат X и отыщем предикат Y=F(X). По формуле (г) находим:
Y = X (xb)(х ) v Xа = xb-0v Xа = Xа.
Итак, операция F(X)= Y, характеризуемая формулой (г), ставит в соответствие предикату X=X предикат Y=Xa. По результатам подобных вычислений определены следующие значения:
X=(0, Xа, Xb, i);
Y=(Xa, i, Xа, Xа),
характеризующие предикатную операцию Y=F(X). Заметим, что табличное представление предикатных операций практически возможно только в очень простых случаях, подобных тому, который рассмотрен здесь. В более сложных случаях таблица предикатной операции становится необозримо большой, поэтому остается лишь один эффективный способ представления предикатных операций — формулами.
При любых U, m и n дизъюнктивно-конъюнктивная алгебра предикатных операций полна. Любая предикатная операция F в ней выражается формулой F(Xi, X2,..., Xn)=
= v F(P, P2,..., Pn )XP xP2... xPn, (38)
= P1,P2,...,Pn єМ У 1 2 n> 1 2 n ’ (38)
называемой СДНФ предикатной операции F. Запишем в виде примера СДНФ предикатной операции, которая представлена приведенной выше таблицей:
X aX0vi XX v XаXх v X^i. (д)
Консервативно расширим дизъюнктивно-конъюнктивную алгебру, вводя в ней базисную операцию отрицания и базисный элемент i. Основными тождествами полученной алгебры служат законы булевой алгебры, а также законы истинности, ложности и отрицания для предикатов узнавания предикатов. Система основных тождеств этой алгебры полна при любых U, m и n. Установим, для примера, тождественность формул (г) и (д) дизъюнктивно-конъюнктивной алгебры, предметные переменные которой заданы на универсуме и={а, b}:
X aX®vi■Xх v XаXх v X^i=
=xaX0 v (Xа vX) Xх v Xа Xх v xaX i= =X Xх v X^X0 v Хха v Xх v Xi)=
аа
=XXх v xa■i=xbXх v Xа.
7. Алгебра подстановочных операций
Дизъюнктивно-конъюнктивная алгебра предикатных операций отличается простотой конструкции, она полна и для нее известна полная система тождеств. Эти качества делают ее незаменимой для теоретических изысканий в области логической математики. Вместе с тем, для практических применений она не всегда удобна. Поэтому актуальна задача разработки других алгебр предикатных операций [7]. Вначале, используя аппарат дизъюнктивно-конъюнктивной алгебры, формально опишем операцию подстановки, которая будет затем применена в качестве основного строительного блока при разработке более практичной алгебры предикатных операций, называемой алгеброй подстановочных операций. Имеется в виду операция подстановки какого-либо значения на место одного из аргументов предиката. Обычно эта операция воспринимается как действие над формулами, однако ничто не мешает рассматривать ее также и как операцию над предикатами, выражаемыми этими формулами.
Подстановкой
Xi / а(Р)= Q (39)
i08
РИ, i998, № 3
значения а на место аргумента xi предиката Pназывается операция, которая каждому предикату P(x\, x2,..., xm) ставит в соответствие предикат Q(x^ x2,..., xm) по следующему правилу: для любых щ, a2,...,
ame U
Q(ai, a2,..., am)=P(ai, a2,..., am). (40)
Предикат, получаемый из предиката P(x2, x2,.., xm, xi, xi+i,..., xm) подстановкой значения а на место аргумента xi, будем записывать в виде:
Q(xi, x2,..., xm)=P(xi, x2,..., x-i, a, x,+ i,..., xm). Аргумент xi у предиката Q — несущественный. Например, результатом подстановки значения а на место аргумента у в предикате P(x, у) будет предикат Q(x, y)=P(x, a). Подставим предмет i на место аргумента xi для предиката P, заданного формулой P(xi, x2, x3)=xiix22vx23x33vxi2x3i.
В результате получаем:
xi/i(P)= i ix22vx23x33v i2x3i=x22vx23x31.
Подстановка аргумента предиката выражается на языке фундаментальной алгебры следующим образом:
xi/a(X)= PvM P(xi, x2, ..., xi-i, a, x,+b...
..., xm) XP(%b X2’"" ^-1’ Xp Xi+h"" Xm} . (4i)
Зависимость (4i) получена «силовым» методом подбора. В качестве показателей предикатов узнавания предиката берутся значения аргумента Xрассматриваемой операции подстановки, а в роли множителей при ней подбирается нужный результат операции. Неудивительно, что в результате получаются громоздкие формулы, мало пригодные для практики. Однако в данном случае важен сам факт выразимости операции подстановки на языке дизъюнктивноконъюнктивной алгебры.
Подстановку можно понимать не только как предикатную операцию, но и как операцию над предикатными операциями. При таком понимании она определяется следующим образом: xi /a(F(Xi, X2,..., Xn))=
=F(x/a(Xi), xi/a(X>),..., xi /a(X„)). (42)
В левой части равенства (42) символ F обозначает предикатную операцию, в правой части тот же символ обозначает операцию над предикатной операцией. Равенство (42) выражает следующее правило: операции подстановки и операцию F в их суперпозиции можно менять местами. Определение (42) выведено из наблюдений над практическими действиями математика, выполняющего операцию подстановки в формулах. Математическая практика свидетельствует о том, что операцию подстановки приходится производить не только над предикатами, но также и над предикатными операциями. И делается это за счет упомянутой выше перемены местами операций в их суперпозиции. Например, операция подстановки, выполняемая над дизъюнкцией предикатов, производится при помощи изменения очередности выполнения операций x/a в их суперпозиции:
x/a(P(x)v Q(x))=x/a(P(x))vx/a( Q(x))=P(a) v Q(a).
Из этого и подобных ему других фактов индуктивно выводится общее правило (42). Например, когда мы выполняем подстановку x/a в какой-нибудь формуле, то в каждой ее части ищем вхождение переменной х и везде заменяем его на предмет а. При этом операция подстановки, которая вначале была внешней по отношению к фор-
муле, теперь проникает внутрь нее в соответствии с правилом (42). Обратим внимание на то, что символы Xi, X2,..., Xn в зависимости (42) выступают в роли предикатных переменных алгебры. Операции XP (PeM), фигурирующие в зависимости
(41) ,— это предикатные операции, но не операции алгебры. В выражении (4i) и в правой части равенства (42) запись xi /a представляет собой предикатную операцию. В левой части равенства
(42) та же запись выражает операцию над предикатными операциями, т.е. операцию алгебры.
С помощью операции подстановки легко выражаются кванторы общности и существования, которые широко используются в классической математике в качестве логического инструментария. Квантор общности, как известно, определяется следующим образом: если U={ai, a2, ..., ak}, то
V xP(x)=P(a)AP(a2)A...AP(ak).
В общем случае:
V xi(X)= A. xi/a(X). (43)
Аналогично определяется квантор существования: если U={ai, a2, ..., a*}, то 3xP(x)=P(ai)vP(a2)v...vP(ak).
В общем случае:
3xi(x)=ae x/a(x). (44)
Зависимости (43) и (44) можно применять не только к конечному, но и к бесконечному универсуму U. Кванторы общности и существования можно понимать не только как предикатные операции, но и как операции над предикатными операциями. В этом случае они определяются следующими равенствами:
V x(F)= A xi /a(F), (45)
3x,(F)= vu xi/a(F). (46)
Символ F обозначает произвольную предикатную операцию. О происхождении определений (45) и (46) можно высказать соображения, аналогичные тем, которые были приведены по поводу определения (42).
Когда значения предметной переменной ограничены множеством Ac U, кванторы общности и существования определяются следующими зависимостями:
V xeAP(x)= V x(A(x)oP(x)); (47)
3xeAP(x)=3x(A(x)aP(x)). (48)
Определяем кванторы по предикатной переменной:
V P F(P)= A F(P); (49)
3P F(P)= PeM F(P). (50)
Здесь F(P) — произвольно выбранная предикатная операция, действующая на предикат P; M — универсум предикатов.
Определяем кванторы по набору предметных переменных |=(xi, x2, ..., xm):
V|P(0= V xiVx2... V xmP(xi, x2, ..., xm); (5i)
3|P(0=3Xi3X2...3XmP(Xi, X2,..., Xm). (52)
С их помощью можно выразить кванторы по предикатной переменной Р, значения которой ограничены предикатами, включенными в фиксированный предикат М:
V PcMF(P) = A (V |(P(03M(0)3F(P)); (53)
РИ, i998, № 3
i09
3P^MF(P) = pV ( V ^(P(Q^M(Q)aF(P)). (54)
Зависимости (53) и (54) можно обобщить следующим образом:
V PcM F(P, M)=
= Д (V |(P(03M(0)3F(P, M)); (55)
3PcM F(P, M)=
= PV (V I(P(03M(0)aF(P, M)). (56)
Здесь F(P, M) — произвольно выбранная предикатная операция, действующая на предикаты Р и M. Заметим, что выражения (49), (50) и (53)-(56) не выводят нас за пределы класса формул дизъюнктивно-конъюнктивной алгебры. Предикатные операции F(P) и F(P, M) выражаются на языке дизъюнктивно-конъюнктивной алгебры (так как это не переменные, а фиксированные операции). Вместе с тем, эти выражения нельзя причислить к формулам классического логического исчисления первого порядка, их нельзя также отнести и к формулам других широко известных логик [9, с. 49-54]. Дизъюнктивно-конъюнктивная алгебра предикатных операций, насколько мы можем судить на основании анализа литературных источников, представляет собой структуру, для которой нет аналога в современной математической логике.
Алгеброй подстановочных операций называется алгебра предикатных операций с базисом операций, образованным из подстановок вида x/a(F)
(i= 1, m, aeU), а также операций отрицания и дизъюнкции, и с базисом элементов, образованным из предикатов равенства вида D(x\, x), (i= 2, m ) (здесь они выступают в роли константных предикатных операций), и предикатных переменных Xi
(i= 1, n) (представляющих в данном случае тождественные предикатные операции). Число элементов в базисе алгебры подстановочных операций гораздо меньше, чем в базисе фундаментальной алгебры, однако число базисных операций в ней резко возрастает.
Алгебры называются равносильными, если на языке их формул описывается одно и то же множество объектов. Дизъюнктивно-конъюнктивная алгебра и алгебра подстановочных операций, имеющие один и тот же носитель, равносильны. Это доказывается возможностью выражения базисных операций и элементов каждой из этих алгебр через базисные операции и элементы другой алгебры. Способ перехода от базиса дизъюнктивно-конъюнктивной алгебры к базису алгебры подстановочных операций был указан выше. Предикатные переменные алгебры подстановочных операций выражаются в дизъюнктивно-конъюнктивной алгебре следующим образом:
X= v PXip.
‘ PeM ‘
(57)
В этом выражении символ X,, стоящий справа от знака равенства, означает предикатную переменную, слева тот же символ X выражает тождественную предикатную операцию.
Базис дизъюнктивно-конъюнктивной алгебры предикатных операций выражается через базис ал-
гебры подстановочных операций посредством следу-
ющих тождеств:
XaY = X v Y ; (58)
0=Діа X; (59)
ха = Х2 /a(D(xi, Х2)), (ae U); (60)
Xia=D(a, x,)=xi/a(D(xi, x,)), (ae U, i= 2, m ); (61) XjP= |(X(0~P(0), (j= ЇЙ, PeM). (62)
Отсюда непосредственно следует полнота алгебры подстановочных операций при любых U, m и п. Алгебра подстановочных операций еще слабо изучена. Требует решения вопрос о ее несократимости, об отыскании полной системы ее тождеств, ждут разработки методы решения ее уравнений и многие другие проблемы.
Литература: 1. Декарт Р. Избранные произведения. М.: Госполитиздат, 1950. 700 с. 2. Шабанов-Кушнаренко Ю.П. Теория интеллекта. Проблемы и перспективы. X.: Вища шк., 1987. 159 с. 3. Кендрью Д. Нить жизни. М.: Мир, 1968. 121 с. 4. Дударь З.В., Мельникова Р.В., Шабанов-Кушнаренко Ю.П. Отношения как объекты формульного описания // Радиоэлектроника и информатика. 1997. № 1. С. 115-119. 5. Дударь З.В., Самуйлик И.Г., Шабанов-Кушнаренко Ю.П. Отображения как объекты формульного описания // Радиоэлектроника и информатика, 1998. № 1. С. 56-60. 6. Дударь З.В., Кравец Н.С., Шабанов-Кушнаренко Ю.П. О фундаментальной алгебре предикатных операций // Проблемы бионики. 1998. Вып. 49. С. 68-77. 7. Дударь З.В., Кравец Н. С., Шабанов-Кушнаренко Ю.П. О прикладной алгебре предикатных операций // Проблемы бионики. 1998. Вып. 49. С. 78-87. 8. Гильберт Д, Аккерман В. Основы теоретической логики. М. 1947. 302 с. 9. Справочная книга по математической логике. Теория моделей. М.: Наука, 1982. Ч. 1. 391 с.
Поступила в редколлегию 15.09.98
Рецензент: д-р техн. наук Левыкин В.М.
Баталин Антон Викторович, аспирант кафедры программного обеспечения ЭВМ ХТУРЭ. Научные интересы: информатика, теория формальной характеризации понятий. Адрес: Украина, 348000, Луганск, ул. Гагарина, 23, кв. 38.
Тевяшев Андрей Дмитриевич, д-р техн. наук, профессор, заведующий кафедрой прикладной математики ХТУРЭ. Научные интересы: алгебраические системы, теория категорий. Увлечения: волейбол, теннис, парусный спорт. Адрес: Украина, 310176, Харьков, ул. Велозаводская, 38, кв. 38, тел. 40-94-36.
Шабанов-Кушнаренко Юрий Петрович, д-р техн. наук, профессор кафедры программного обеспечения ЭВМ ХТУРЭ. Научные интересы: логическая математика, теория интеллекта. Адрес: Украина, 310058, Харьков, ул. Культуры, 11, кв. 31, тел. 40-94-46.
110
РИ, 1998, № 3