범주 형 용어로 적용되는 펑터 설명-모노 이드 펑터


40

Applicative카테고리 이론의 관점 에서 이해하고 싶습니다 .

문서 에 대한이 Applicative가 있다고 말한다 강한 느슨한의 monoidal 펑터 .

첫째, 단일체 펑터 에 관한 Wikipedia 페이지는 단일체 펑터느슨 하거나 강력 하다고 말합니다 . 그래서 소스 중 하나가 잘못되었거나 용어를 다르게 사용하는 것 같습니다. 아무도 그것을 설명 할 수 있습니까?

둘째, Applicative단일체 펑터 인 단일체 범주는 무엇 입니까? 나는 functors가 표준 Haskell 범주 (객체 = 유형, 형태 = 함수)의 end-functors라고 가정하지만이 범주의 단일체 구조가 무엇인지 전혀 모릅니다.

도와 주셔서 감사합니다.

답변:


35

실제로 "힘"이라는 단어는 두 가지 용도로 사용됩니다.

  • 강한 endofunctor 위에 monoidal 카테고리 ( C , , I ) 천연 변환 붙어 하나 σ : F ( B ) F ( B ) 에 대하여 약간의 간섭 조건을 만족 내가 다룰 어 소시 에이터. 이 상태는 때때로 " F 는 힘이있다"라고 발음된다 .F:CC(C,,I)σ:AF(B)F(AB)F

  • F:CD(C,,I)(D,,J)ϕ:F(A)F(B)F(AB)i:JF(I), 어 소시 에이터에 대한 일관성 조건을 다시 만족시킨다.

  • F:CDϕiF(AB)F(A)F(B)ϕ

하스켈 프로그램의 의미에서 적용되는 펑 터는 강도 가있는 완하제 일체 종단 내수 정기이며, 문제의 단일체 구조는 데카르트 제품이다. 이것이 바로 역설적 인 용어 인 "강력한 일 축성 functor"를 얻는 이유입니다.

Fmap:(AB)(F(A)F(B))

마지막으로, Haskell 스타일의 적용 함수 기의 유형 이론에 관심이 있다면 블로그에 대한 글을 올렸습니다.


1
Functorfmapϕipureipure' = \v -> fmap (\() -> v) (i ())i :: (Applicative f) => () -> f ()

1
이 답변에 오타가 생겼습니다. 이제 수정되었습니다. 그리고 네, 모든 사례 Functor는 강력합니다 (wrt product).
Neel Krishnaswami

Monad의 위치를 ​​정교하게 설명해 주시겠습니까? 내가 올바르게 이해한다면 그것은 monoidal endofunctor이기도합니다.
egdmitry 2016 년

Hask

나는 단어 사용을 제안 할 수 있습니다 strengthy "강력한"로 표기 피하기 충돌로를? 그것은 Wycliffe의 성경에서 처음 사용 된 "강한"의 스코틀랜드 (특히 여기에서 발견 된) 방언 변형입니다.
Fosco

3

모나드에 의해 유도되는 응용을 이해하기 위해 다음 구성을 지적하고 싶습니다.

FAnat(Hom(A,B),FB)

a(gF(g)(a))
FABAFB.
FAFA
FAFBAFFB.
FFBFB
FBAFAFB,
LiftM2 id
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.