Category theory/Natural transformation: Difference between revisions
EndreyMark (talk | contribs) (→Commutative diagram: Notations) |
EndreyMark (talk | contribs) (→External links: HaWiki article not migrated yet) |
||
Line 133: | Line 133: | ||
* <hask>even</hask> has a more general type (<hask>Integral a => a -> Bool</hask>) than described here | * <hask>even</hask> has a more general type (<hask>Integral a => a -> Bool</hask>) than described here | ||
* Words “side”, “horizontal”, “vertical”, “left”, “right” serve here only to point to the discussed parts of a diagram, thus, they are not part of the scientific terminology. | * Words “side”, “horizontal”, “vertical”, “left”, “right” serve here only to point to the discussed parts of a diagram, thus, they are not part of the scientific terminology. | ||
=== External links === | |||
* [http://haskell.org/hawiki/CategoryTheory_2fNaturalTransformation?action=highlight&value=natural+transformation The corresponding HaWiki article] is not migrated here yet, so You can see it for more information. | |||
* Wikipedia's [http://en.wikipedia.org/wiki/Natural_transformation Natural transfomration] article |
Revision as of 20:36, 2 October 2006
Example: maybeToList
maybeToList
map even $ maybeToList $ Just 5
yields the same as
maybeToList $ map even $ Just 5
yields: both yield
[False]
Commutative diagram
Let , denote categories. Let be functors. Let us define the natural transformation.
............
Vertical arrows: sides of objects
… showing how the natural transformation works.
maybeToList :: Maybe a -> [a]
Left: side of X object
maybeToList :: Maybe Int -> [Int]
| |
Nothing
|
[]
|
Just 0
|
[0]
|
Just 1
|
[1]
|
Right: side of Y object
maybeToList :: Maybe Bool -> [Bool]
| |
Nothing
|
[]
|
Just True
|
[True]
|
Just False
|
[False]
|
Horizontal arrows: sides of functors
even :: Int -> Bool
Side of functor
map even:: Maybe Int -> Maybe Bool
| |
Nothing
|
Nothing
|
Just 0
|
Just True
|
Just 1
|
Just False
|
Side of functor
map even:: [Int] -> [Bool]
| |
[]
|
[]
|
[0]
|
[True]
|
[1]
|
[False]
|
Commutativity of the diagram
both paths span between
Maybe Int -> [Bool]
| ||
map even . maybeToList
|
maybeToList . map even
| |
Nothing
|
[]
|
[]
|
Just 0
|
[True]
|
[True]
|
Just 1
|
[False]
|
[False]
|
Remarks
even
has a more general type (Integral a => a -> Bool
) than described here- Words “side”, “horizontal”, “vertical”, “left”, “right” serve here only to point to the discussed parts of a diagram, thus, they are not part of the scientific terminology.
External links
- The corresponding HaWiki article is not migrated here yet, so You can see it for more information.
- Wikipedia's Natural transfomration article