2016-04-30 2 views
2

Я недавно ответил на вопрос здесь: How do I express this in Typescript?Каково имя для идентификационного типа?

Вот фрагмент кода из выше:

trait FooBar[M[_]] { 
    val foo: M[Integer] 
    val bar: M[String] 
} 

type Identity[X] = X 
type A = FooBar[Identity] 
type B = FooBar[Option] 

Я видел это используется несколько раз:

type Identity[X] = X 

Но, что название для этого (либо типа Identity, либо эта техника вообще) в литературе по теории категорий? Является ли Lift лучшим именем?

ответ

1

В математике это называется Identity Function:

В математике функция идентичности, также называется отношение личности или тождественными или тождественное преобразование, является функцией, которая всегда возвращает то же значение, которое было использовано как его аргумент. В уравнениях функция задается функцией f (x) = x.

Более формальное математическое определение выглядит следующим образом:

Формально, если M это набор, тождественную функцию f на M определяется как эта функция с областью и областью значений M которая удовлетворяет: f(x) = xдля всех элементов х в М. другими словами, функция присваивает каждому элементу х М элемент х М.

Если вы ищете конкретно для определения теории категорий, это называется Identity Morphism. В стоимость википедия говорит о композиции морфизма а затем описывает тождественный морфизм как:

идентичности: для каждого объекта X, существует морфизм идентификатор Х: X → X называется тождество

Смежные вопросы