Copyright | (C) 2011-2015 Edward Kmett |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | Edward Kmett <ekmett@gmail.com> |
Stability | provisional |
Portability | polykinds |
Safe Haskell | None |
Language | Haskell98 |
Synopsis
- class Semigroupoid k => Groupoid k where
- inv :: k a b -> k b a
Documentation
class Semigroupoid k => Groupoid k where #
semigroupoid with inverses. This technically should be a category with inverses, except we need to use Ob to define the valid objects for the category
Instances
Groupoid ((:~:) :: k -> k -> Type) # | |
Defined in Data.Groupoid | |
Groupoid (Coercion :: k -> k -> Type) # | |
Defined in Data.Groupoid | |
Groupoid ((:~~:) :: k -> k -> Type) # | |
Defined in Data.Groupoid | |
Semigroupoid k2 => Groupoid (Iso k2 :: k1 -> k1 -> Type) # | |
Defined in Data.Isomorphism | |
Groupoid k2 => Groupoid (Dual k2 :: k1 -> k1 -> Type) # | |
Defined in Data.Groupoid |