Size: a a a

Теория категорий

2020 February 12

G

Gymmasssorla in Теория категорий
Итого в категории типов морфизмы - это конструкторы значений (функции), а конструкторы типов с map - это функторы? Конструктор типов отображает объекты, а map отображает морфизмы
источник

G

Gymmasssorla in Теория категорий
Тут возникает тогда вопрос: если функции - это отображения между объектами, то чем конструкторы типов не отображения между объектами?
источник

O

Orbarax in Теория категорий
Orbarax
конструкторы типов, выходит, тоже являются морфизмами в категории типов?
да, это тот же самый вопрос
источник

O

Orbarax in Теория категорий
в (псевдо)категории Hask они вполне себе рядовые морфизмы же?
источник

O

Orbarax in Теория категорий
нет, не рядовые. всё же конструкторы типов это морфизмы, у которых объектами является вся категория
источник

G

Gymmasssorla in Теория категорий
Кстати да
источник

G

Gymmasssorla in Теория категорий
Объект же явно не указан
источник

O

Orbarax in Теория категорий
Gymmasssorla
Тут возникает тогда вопрос: если функции - это отображения между объектами, то чем конструкторы типов не отображения между объектами?
если заглянуть глубже, то функции ставят каждому элементу типа в соответствие некий другой элемент другого типа, а тайпконструкторы ставят типам в соответствие другие типы
источник

G

Gymmasssorla in Теория категорий
Согласен
источник

O

Orbarax in Теория категорий
как же тогда это помещается в Hask...
источник

Oℕ

Oleg ℕizhnik in Теория категорий
Gymmasssorla
Тут возникает тогда вопрос: если функции - это отображения между объектами, то чем конструкторы типов не отображения между объектами?
Морфизмы не обязаны быть какими-либо отображениями
источник

Oℕ

Oleg ℕizhnik in Теория категорий
Gymmasssorla
Тут возникает тогда вопрос: если функции - это отображения между объектами, то чем конструкторы типов не отображения между объектами?
Ну и построить категорию, где морфизмы - это функции типов или тайп конструкторы тоже несложно
источник

Oℕ

Oleg ℕizhnik in Теория категорий
Ну т.е. задавать вопрос, "а почему вот это не категория?" обычно не имеет смысла - если вы можете определить ассоциативность, левую и правую единицу в каком-то смысле, то категория или какое-то её обобщение.
Главное, чтобы законы были, определение объектов можно обычно адаптировать под структуру морфизмов
источник

G

Gymmasssorla in Теория категорий
Oleg ℕizhnik
Ну т.е. задавать вопрос, "а почему вот это не категория?" обычно не имеет смысла - если вы можете определить ассоциативность, левую и правую единицу в каком-то смысле, то категория или какое-то её обобщение.
Главное, чтобы законы были, определение объектов можно обычно адаптировать под структуру морфизмов
Понял
источник

G

Gymmasssorla in Теория категорий
Oleg ℕizhnik
Морфизмы не обязаны быть какими-либо отображениями
А что они тогда? Почему они не отображают один объект в другой?
источник

Oℕ

Oleg ℕizhnik in Теория категорий
Gymmasssorla
А что они тогда? Почему они не отображают один объект в другой?
Что-угодно. Могут быть и цепочками в графе и отношениями и произвольными структурами.
источник

G

Gymmasssorla in Теория категорий
Понятно
источник

Oℕ

Oleg ℕizhnik in Теория категорий
Объекты не всегда важны.
Иногда они нужны лишь для постановки условий композиции морфизмов.
Пример из нескольких работ Брендана Фонга, в т.ч. главы из семи скетчей: ориентированные графы.
Каждый граф имеет две группы выделенных вершин - источники и цели.
Тогда объектами в финитном случае будут натуральные числа - количества этих вершин.
Тогда композицией будет новый граф,  где каждая вершина получает свой уникальный идентификатор, кроме
источников левого графа и целей правого - они попарно уравниваются, множество рёбер становится объединенем множеств рёбер объединяемых с учётом переименования вершин, целями становятся цели левого графа, источниками - источники правого.
источник

Oℕ

Oleg ℕizhnik in Теория категорий
И вообще семь скетчей - хороший материал, чтобы отойти от привязки к типам - функциям
источник

KV

Kirill Valyavin in Теория категорий
Однако, всё-таки, в разговоре про тот же хаскель обычно имеют в виду, в первую очередь, категорию Hask, где объекты — типы, а морфизмы — функции (некоторые функции являются конструкторами значиений, но не все). Ещё рассматривают эндофункторы Hask, которые тоже образуют категорию, в которой морфизмами будут уже естественные преобразования. Функтор и морфизм — это всё "отображения объектов", но в совершенно разном смысле: морфизм действует из конкретного объекта в конкретный объект (как функция из типа A в тип B), а функтор действует из категории в категорию, т. е. берёт каждый объект и ему сопоставляет снова объект, ну и кроме того преобразует морфизмы
источник