F -коалгебра - F-coalgebra

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

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

Определение

Позволять

быть эндофунктором категории . -Коалгебра является объектом из вместе с морфизмом

of , обычно пишется как .

-Коалгеброй гомоморфизм из к другому -коалгебры морфизм

в таком, что

.

Таким образом, -коалгебры для данного функтора F образуют категорию.

Примеры

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

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

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

Пусть P - конструкция степенного множества на категории множеств, рассматриваемая как ковариантный функтор. В P -коалгебр находятся во взаимно однозначном соответствии с наборами с бинарным отношением. Зафиксируем теперь еще один набор, A . Тогда коалгебры для эндофунктора P ( A × (-)) находятся в биективном соответствии с помеченными системами переходов , а гомоморфизмы между коалгебрами соответствуют функциональным бимимуляциям между помеченными системами переходов.

Приложения

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

Смотрите также

Рекомендации

внешняя ссылка