Для конкретных категорий существование экспонент - это возможность каррирования: возможность функцию нескольких переменных свести к набору функций от одного переменного. Для функции двух переменных это означает, что фиксирование любого возможного первого аргумента даёт функцию от второго аргумента.
Проще сказать, что замкнуты все конечные диаграммы. Конечно достаточно лишь существование лишь расслоенных произведений, но с конечными диаграммами проще
ну мне кажется начилие конечных лимитов и замкнутость не самые интересные качества, кажется, что самый тонкий момент в топосе - это subobject classifier
Т.е. первые два позволяют строить объекты с требованиями каких-то "свойств" Ну например, имея объект A, мы можем получить множество "бинарных морфизмов" (A x A => A) Далее, стартуя с какого-то утроенного объекта и бинарного морфизма мы можем получить, ну например правоассоциированную композицию трёх элементов fr: (A x A x A) x (A x A) => A) -> A fr = apply . <<pi1 . pi1, apply. pi2. assoc>>
примерно так же можем получить левоассоциированную fl : (A x A x A) x (A x A) => A -> A fl = apply . < <pi2, apply . <<pi1.pi1 . pi1, pi2. pi1. pi1>, pi2> , pi2> fl((x, y, z), f) = f((x, y), z)
оба таких морфизма мы можем каррировать относительно первого аргумента, получив два морфизма ((A x A) => A) -> (A x A x A) => A и найдя их эквалайзер получить не просто бинарные функции, а ассоциативные бинарные функции
таким образом мы задаём свойство "ассоциативности" для наших бинарных морфизмов, и вот вопрос - какой механизм рассуждения о "свойствах" предлагает наш топос