Возможные применения теории категорий в информационных науках

МАТЕМАТИЧЕСКИЕ МЕТОДЫ В ЕСТЕСТВЕННЫХ, ТЕХНИЧЕСКИХ И СОЦИАЛЬНЫХ НАУКАХ

УДК 53.072

Г.В. Кондратьев

ВОЗМОЖНЫЕ ПРИМЕНЕНИЯ ТЕОРИИ КАТЕГОРИЙ В ИНФОРМАЦИОННЫХ НАУКАХ

Университет Сан-Паулу, Бразилия

В статье дается краткий обзор теории категорий с возможными перспективами использования ее потенциала в сфере информационных технологий.

Ключевые слова: категория, множество, логика, моделирование.

Моментом рождения теории категорий считается появление статьи [1]. Главный создатель теории категорий Сандерс Маклейн вспоминал [2, 3], что они с Самюэлем Эйленбергом хотели выразить идею естественного преобразования, для чего необходимо было ввести функторы, которые в свою очередь потребовали введения категории. Категории оказались близкими к теории типов, введенной в конце XIX века Бертраном Расселом и упорно игнорируемой математической общественностью вследствие сложности ее понимания. Математики хотели что-нибудь попроще и использовали теорию множеств Георга Кантора, формализованную впоследствии, чтобы избежать парадоксов, в две аксиоматические системы Цермело-Френкеля и Геделя-Бернайся.

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

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

Примеры использования теории категорий

В чистой математике теория категорий давно стала стандартным языком и средством развития теорий. Созданная изначально для нужд алгебраической топологии и гомологической алгебры [4, 5], она была перенесена Александром Гротендиком (оказавшим

© Кондратьев Г.В., 2013.

огромное влияние на всю математику ХХ века и создавшим, в частности, теории топосов, расслоенных категорий, мотивов) в алгебраическую геометрию [6] и Уильямом Ловером в основания математики [7, 8, 9]. В работах Даниэля Квиллена были созданы модельные категории [10], выражающие высшие гомотопии на языке обычных категорий первого порядка и, более того, позволяющие вводить понятие гомотопии в некоторые категории, которым оно изначально не свойственно, например, в линейную логику. Параллельно развивались тензорные категории, операды и мультиоперады [11, 12, 13, 14], научившие, в частности, математиков работать со слабо ассоциативными алгебраическими системами с равенством с точностью до гомотопии и давшие техническую основу для развития теории слабых бесконечномерных категорий [14, 15, 16, 17].

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

Определение 1. Теория типов представляет базу всякой формальной системы. Простая теория типов состоит из:

• базовых типов (например, А,В,С,...),

• конструкторов новых типов (например, х, ©, , ...),

• правил преобразования термов одного типа в другой (например, л: X, /: X ^ У ^

/ (л): У).

Типы могут быть обитаемы или необитаемы. а : А читается, как 'а обитает в/населяет А'. Примеры производных типов: АхВ, X© У, X ^ 2.

Если в теорию типов вводится логика, то добавляется унарный конструктор Р (назначающий объекту его объект подобъектов), специальный тип О (истинностных значений) и правила формирования соответствующих термов, например, (X: Р(А)) : О, {л: А | <р(х) : О}: Р(А) и другие.

Определение 2 (Язык теории категорий) Синтаксическое определение.

• С: Cat,

• два типа ОЬ(С), Аг(С),

• отношение равенства = на объектах ОЬ(С) и на стрелках Аг(С),

• операции взятия начала и конца стрелки /: Аг(С) ^ (/: ОЬ(С), о/: ОЬ(С),

• (композиция стрелок) /,я: Аг(С),с/ = (1ё -. ОЪ(С) Аг(С),о/) = о/) = сЯ,

• (аксиома единицы) УС: ОЬ(С) 3 \с : Аг(С) У/: Аг(С) ш = С)=>(/°1с = /)]&[(</ = С)=>(1с°/ = /)],

• (ассоциативность) V/",g,к : Аг(С) {с/ = = <1И) ^>{hog)o/ = /г о о/) . Коммутативные диаграммы.

Для наглядности вместо синтаксического описания в теории категорий используются коммутативные диаграммы, то есть такие графы, составленные из объектов и стрелок между ними, что любые два пути между любыми двумя вершинами дают в композиции одну и ту же стрелку (следовательно, коммутативными диаграммами можно выражать равенство стрелок).

Например, произведение объектов А х В: ОЬ(С) для объектов А, В : ОЬ(С) определяется (однозначно с точностью до изоморфизма) коммутативной диаграммой

которая говорит, что VX: Ob(C) Vf: X ^ A,g: X ^ B 3!< f,g >: X ^ AxB, такая что

prA°<f,g>=f,prB°<f,g>=g.

Пример 1 (Категория множеств). Стандартный математический универсум с классической логикой.

• Категория множеств состоит из множеств и отображений между ними. Это математический универсум, в котором или над которым строятся все стандартные конструкции.

• Существует (единственный) начальный объект 0 = 0 (пустое множество), то есть VA : Ob(Set) 3!0 ^ A .

• Существует (единственный с точностью до изоморфизма) конечный объект 1 (одноэлементное множество), то есть VA : Ob(Set) 3 !A ^ 1.

• Существует объект истинностных значений Q = {0,1} (двухэлементная булева алгебра).

• Категории Set соответствует теория типов с классической логикой.

• Если (переменная) x: A, (предикат) P(x): Q, то терм {x: A | P(x)} : P(A) (содержание предиката P).

• (принцип свертывания) y: A, P(y) = 1 ^ y: { x: A | P(x) }.

Пример 2

• (объекты) частично упорядоченные множества (M, <м ) : Ob(POSet),

• (1-стрелки) монотонные функции (f: (M, <м ) ^ (N, <N)) : Ar :(POSet),

• (2-стрелки) jU Г " : Ar2 (POSet) если и только если VotgM f (m) <n g(m),

• (горизонтальная композиция 1 -стрелок) обычная композиция отображений,

• (вертикальная композиция 2-стрелок) определена транзитивностью отношения <,

• горизонтальная композиция 2-стрелок)

Утверждение 1. Set ° POSet (полная подкатегория).

Пример 3 (Категория нечетких множеств FuzzySet ([0,1])). Логически незамкнутый универсум с интуиционистской логикой.

• (объекты) нечеткие множества (f: M ^ [0,1]): Ob(FuzzySet([0,1])), если (f: M ^ [0,1]): Ar(Set) ( Set рассматривается как подкатегория POSet),

• (стрелки) слабые коммутативные треугольники, то есть \/т ёМ/(т) /•')(/«),

• (композиция стрелок) определяется соединением треугольников.

Утверждение 2. В категории Риггу$еЩ0,1]) с объектом истинностных значений отрезком [0,1]

• логика является интуиционистской (так как [0,1] с естественным порядком является алгеброй Гейтинга и не является булевой алгеброй),

• не все формулы интуиционистской логики выполнимы в категории FuzzySet([0,1]) (так как фактор-множество нечеткого множества может не быть нечетким множеством, но оно всегда является гейтинговозначным множеством).

Следствие.

• В нечеткой логике нельзя применять закон исключенного третьего p v p (или,

эквивалентно, закон двойного отрицания p = p ).

• Требуется расширение категории нечетких множеств в категорию гейтинговозначных множеств.

Пример 4 (Гейтинговозначные множества). Естественное расширение нечетких множеств.

• Алгеброй Гейтинга называется решетка H, в которой существуют наименьший 0 и наибольший 1 элементы, и операция пересечения — лЬ имеет правую сопряженную операцию Ь ^ —, то есть VЬ, c е H 3 (Ь ^ c) е H, такой что Vx е H x < (Ь ^ c) если и только если x л Ь < c.

• Пусть H - алгебра Гейтинга. Множество X вместе с функцией =х: X х X ^ H , такой что (а =х Ь) = (Ь =х а) и (а =х Ь) л (Ь =х c) < (а =х е), называется гейтинговозначным множеством.

• Категория гейтинговозначных множеств Set(H) является топосом (аналогом конструктивной теории множеств).

• Категория FuzzySet(H) является полной подкатегорией категории Set(H) .

• В категории нечетких множеств FuzzySet(H) не все коуравнители (фактор-объекты) существуют, то есть не все конструктивные логические утверждения имеют смысл. Присоединение фактор-объектов приводит к категории гейтинговозначных множеств Set(H).

• Естественным универсумом нечеткой математики с конструктивной логикой является категория Set(H).

Связи теории категорий с вычислительными и информационными науками

Несмотря на потенциальную мощь теории категорий, ее стандартными приложениями к компьютерным наукам остаются в основном функциональное программирование [18], теория типов [19] и, вообще, прикладная логика [19, 20]. Основной причиной этого является то, что указанные дисциплины почти один к одному моделируются декартово-замкнутыми категориями в силу так называемого изоморфизма Карри-Говарда-Ламбека [21, 22]. В наиболее распространенной формулировке изоморфизм устанавливает полную идентичность теории доказательств, лямбда-исчисления, являющегося универсальной моделью вычислений, и декартово-замкнутых категорий. Коротко он выражается так: доказательства = вычислениям, формулы = типам. Методы одной из этих теорий переносятся в другие (например, доказательство является лямбда-выражением, устранение сечения (Gentzen's Hauptsatz) является бета-редукцией, программа в функциональном языке типа Haskell является доказательством). Это приводит к взаимному обогащению теорий.

Пример 5 (логическая формула интуиционистски истинна, если и только если ее тип населен).

• 0 ^ A соответствует одной стрелке из пустого типа в тип A,

• A ^ 1 соответствует одной стрелке в синглетон (одноэлементный тип),

• аксиоме A л B ^ A соответствует проекция на первый множитель p^ : A х B ^ A,

• если a : A, f: A ^ B, то f (x) : B, следовательно, A, A ^ B % B (modus ponens).

Указанное соответствие означает, что изолированные процессы вычислений, рассуждений или конструкций все сводятся к одному и тому же классу функций (расширенный тезис Черча).

Для неизолированных взаимодействующих вычислительных процессов ситуация оказывается не столь однозначной. Модели конкуренции составляют другое приложение теории категорий в компьютерных науках [23]. Они основаны на временной логике, бисимуляции, теории пучков, но такой идеал соответствия, как изоморфизм Карри-Говарда-Ламбека, там отсутствует.

Одним из первых приложений теории категорий к инженерным наукам явилась теория систем управления в духе Калмана-Арбиба-Мэйнса [24, 25].

Пример 6 (Дискретные системы управления над категорией множеств Set).

• (объекты - системы управления) Система управления (над категорией множеств Set) -это три множества {U, X, Y} и две Set-стрелки f: X х U ^ X и h : X ^ Y,

• (стрелки - динаморфизмы) Динаморфизм (симуляция) - это тройка отображений (a: U ^ U', ß: X ^ X', у: Y ^ Y'), сохраняющих структуру системы, то есть таких, что диаграммы коммутативны

Стрелки переводят траектории первой системы /: X х и ^ X в траектории второй f': X' х и' ^ X'.

В категории гладких систем управления с базовой категорией гладких многообразий системами управления соответственно будут пары, состоящие из коммутативного треугольника

А" V Г----ТА"

' А

то есть - отображения тривиального расслоения в касательное, и стрелки-наблюдателя И: X ^ У , а морфизмами - наборы из трех стрелок, сохраняющие структуру системы.

В работе [25] приводится категорный вариант теоремы о минимальной реализации системы управления.

Теория баз данных (представляющих собой набор разноуровневых таблиц и отношений) хорошо вписывается в теорию категорий [26].

Систематические приложения теории категорий собственно к информационных наукам в настоящее время почти отсутствуют. В качестве первых попыток в этом направлении можно отметить работы П. В. Голубцова [27, 28] по категориям преобразователей информации и близкую к ним работу [29] по формализации и категорной аксиоматизации теории информации Клода Шеннона.

Малое количество работ в этой области объясняется с точки зрения автора тем, что существующая в настоящее время теория информации во всех ее аспектах (синтаксическом, семантическом, прагматическом) представляет лишь часть единой теории этой фундаментальной величины. Информация занимает какое-то промежуточное и нетривиальное положение между морфологией и логикой системы. Скорее всего, она гейтингово- или булево-значна, поскольку можно брать объединение, пересечение и дополнение имеющейся информации. Это вполне согласуется с теорией информации К. Шеннона, в которой основным сравнением между количеством информации является отношение порядка < на неотрицательных вещественных числах Я+. Измерением в

расширенном понимании будет гомоморфизм информационной алгебры в решетку R+. Скорее всего, информация, также как и структуры на объектах и логика, обитает в расслоенной категории над базовыми объектами и зависит как от базового объекта, так и выбранной структуры и логики.

Возможные точки приложения теории категорий к информационным наукам.

Такими приложениями могут быть:

• разработка фундаментальных понятий теории информации в более широком, иерархическом и гибком контексте расслоенных категорий, пучков, топосов и высших категорий, в частности, для выражения многомерных аспектов информационных процессов, плохо объясняемых линейным языком, как, например, отношение между процессами,

• применение операд и тензорных категорий в теории нейросетей для управления всевозможными конфигурациями, композицией и отношением между нейросетями,

• использование категорных понятий для короткого и точного выражения сути явлений без переизбыточности (например, достаточно сказать, что гомоморфизм свободных моноидов, представляющий код, допускает однозначное декодирование, если и только если его образ есть свободный моноид),

• применение к вопросу однозначного (с точностью до изоморфизма) моносемантического представления знания, важного в теории искуственного интеллекта.

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

Библиографический список

1. Eilenberg, S., MacLane S. A general theory of natural equivalences. Trans. Amer. Math. Soc., 58: 231-294 (1945).

2. Maclane, S. Categories for the working mathematician. Springer-Verlag (1971).

3. Maclane, S. A. Mathematical Autobiography. A K Peters, Ltd., Wellesley, Massachusetts (2005).

4. Eilenberg, S., Steenrod N. Foundations of Algebraic Topology. Princeton University Press (1952).

5. Maclane, S. Homology. Springer-Verlag (1963).

6. Grothendieck, A., Dieudonné J.: Éléments de Géométrie Algébrique. Publications Mathématiques, Paris (1960).

7. Lowvere, F. W. Diagonal Arguments and Cartesian Closed Categories, Springer Lecture Notes in Mathematics No. 92, Springer-Verlag (1969).

8. Lowvere, F. W. Quantifiers and Sheaves. Proceedings of the International Congress on Mathematics, (Nice 1970), Gauthier-Villars (1971).

9. Lowvere, F. W. Continuously Variable Sets: Algebraic Geometry = Geometric Logic, Proceedings of the Logic Colloquium, Bristol (1973), North Holland (1975).

10. Quillen, D. G. Homotopical algebra. Lecture Notes in Mathematics, 43, Berlin, New York: Springer-Verlag (1967).

11. Boardman, J. M., Vogt R. M. Homotopy invariant algebraic structures on topological spaces. Lecture Notes in Mathematics, 347, Berlin, New York: Springer-Verlag (1973).

12. May, J. P. The Geometry of Iterated Loop Spaces. Springer-Verlag (1972).

13. Markl, M., Shnider S., Stasheff J.: Operads in Algebra, Topology and Physics. American Mathematical Society (2002).

14. Leinster, T. Higher Operads, Higher Categories. Cambridge University Press (2004).

15. Baez, J. C., Shulman M. Lectures on n-Categories and Cohomology. arXiv:math/0608420 (2007).

16. Joyal A. Quasi-categories and Kan complexes. Journal of Pure and Applied Algebra 175 (1): 207-222 (2002).

17. Lurie, J. Higher topos theory. Annals of Mathematics Studies, 170, Princeton University Press (2009).

18. Thompson, S. Haskell: The Craft of Functional Programming. Harlow, England: Addison-Wesley Longman Ltd. (1996).

19. Crole, R. Categories for Types. Cambridge University Press (1994).

20. Jacobs, B. Categorical Logic and Type Theory. Elsevier (1999).

21. Girard, J.-Y., Lafont Y., Taylor P. Proof and Types. Cambridge University Press (Cambridge Tracts in Theoretical Computer Science, 7) (1987).

22. Johnstone, P. Sketches of an Elephant: A Topos Theory Compendium. I, II, Oxford University Press (2002).

23. Winskel, G., M. Nielsen: Models for concurrency. In Handbook of Logic in Computer Science. Oxford University Press (1995).

24. Kalman, R. E., Falb P. E., Arbib M. A. Topics in Mathematical System Theory. New York: McGraw-Hill (1969).

25. Arbib, M. A., Manes E. G. Arrows, Structures, and Functors: the Categorical Imperative. Academic Press (1975).

26. Плоткин, Б.И. Универсальная алгебра, алгебраическая логика и базы данных / Б.И. Плоткин. - М.: Наука, Физматлит, 1991.

27. Голубцов, П.В. Аксиоматическое описание категорий преобразователей информации. Проблемы передачи информации, 1999. 35 №3. С. 109-127 ().

28. Голубцов, П.В. Информативность в категории многозначных преобразователей информации. Проблемы передачи информации, 1998. 34 №3. С. 60-80.

29. Allen, B. The Category-Theoretic Arithmetic of Information. arXiv/math.CT:0803.3608v3 (2011).

Дата поступления в редакцию 16.04.2013

G.V. Kondratiev

POSSIBLE APPLICATIONS OF THE CATEGORY THEORY IN INFORMATION

SCIENCES

University of San Paulo, Brazil

The subject of the paper is a brief overview of the well-known applications of the Category Theory in order to spread its ideas and methods to the field of Information Sciences. For that it has all necessary abstraction, generality, a rich hierarchical structure, specific computing methods. The categories are considered from the logical viewpoint as a type theory corresponding to the base Intuitionistic Logic.

Such a parallel definitely grounds this highly abstract science and makes it more attractive and accessible to the applied researchers. Some examples and potential application points of the Category Theory in the Information Sciences are given.

Key words: category, logic, set, modeling.