Difference between revisions of "Category theory/Natural transformation"
Jump to navigation
Jump to search
Example:
EndreyMark (talk | contribs) (→Commutativity of diagram: More typings) |
EndreyMark (talk | contribs) m (→Commutativity of the diagram: Format caption (no more a caption)) |
||
Line 94: | Line 94: | ||
|} |
|} |
||
− | === Commutativity of diagram === |
+ | === Commutativity of the diagram === |
+ | |||
⚫ | |||
+ | both paths span between |
||
+ | :<math>\Phi(X) \to \Psi(Y)</math> |
||
{| Border=2 CellPadding=2 CellSpacing=2 |
{| Border=2 CellPadding=2 CellSpacing=2 |
||
⚫ | |||
| RowSpan=2| |
| RowSpan=2| |
||
| ColSpan=2|<hask>Maybe Int -> [Bool]</hask> |
| ColSpan=2|<hask>Maybe Int -> [Bool]</hask> |
Revision as of 20:05, 2 October 2006
Example: maybeToList
maybeToList
map even $ maybeToList $ Just 5
yields the same as
maybeToList $ map even $ Just 5
yields: both yield
[False]
Vertical arrows: sides of objects
… showing the operation of the natural transformation.
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]
|
[T]rue
|
[1]
|
[F]alse
|
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.