Copyright | Guillaume Sabbagh 2021 |
---|---|
License | GPL-3 |
Maintainer | guillaumesabbagh@protonmail.com |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
A subcategory is the image of a faithful functor.
Synopsis
- data Subcategory c1 m1 o1 c2 m2 o2 = Subcategory (Diagram c1 m1 o1 c2 m2 o2)
- fullDiagram :: (FiniteCategory c1 m1 o1, Morphism m1 o1, Eq m1, Eq o1, FiniteCategory c2 m2 o2, Morphism m2 o2, Eq m2, Eq o2) => Diagram c1 m1 o1 c2 m2 o2 -> Diagram c1 m1 o1 (Subcategory c1 m1 o1 c2 m2 o2) m2 o2
- stripDiagram :: (FiniteCategory c1 m1 o1, Morphism m1 o1, Eq m1, Eq o1, FiniteCategory c2 m2 o2, Morphism m2 o2, Eq m2, Eq o2) => Diagram c1 m1 o1 c2 m2 o2 -> [o2] -> Diagram c1 m1 o1 (FullSubcategory c2 m2 o2) m2 o2
Documentation
data Subcategory c1 m1 o1 c2 m2 o2 Source #
The type to view a faithful diagram as a subcategory.
It is your responsability to check that the diagram is faithful.
Subcategory (Diagram c1 m1 o1 c2 m2 o2) |
Instances
(GeneratedFiniteCategory c1 m1 o1, Morphism m1 o1, Eq m1, Eq o1, GeneratedFiniteCategory c2 m2 o2, Morphism m2 o2, Eq m2, Eq o2) => GeneratedFiniteCategory (Subcategory c1 m1 o1 c2 m2 o2) m2 o2 Source # | |
Defined in Subcategories.Subcategory genAr :: Subcategory c1 m1 o1 c2 m2 o2 -> o2 -> o2 -> [m2] Source # decompose :: Subcategory c1 m1 o1 c2 m2 o2 -> m2 -> [m2] Source # genArrows :: Subcategory c1 m1 o1 c2 m2 o2 -> [m2] Source # | |
(FiniteCategory c1 m1 o1, Morphism m1 o1, Eq m1, Eq o1, FiniteCategory c2 m2 o2, Morphism m2 o2, Eq m2, Eq o2) => FiniteCategory (Subcategory c1 m1 o1 c2 m2 o2) m2 o2 Source # | |
Defined in Subcategories.Subcategory ob :: Subcategory c1 m1 o1 c2 m2 o2 -> [o2] Source # identity :: Subcategory c1 m1 o1 c2 m2 o2 -> o2 -> m2 Source # ar :: Subcategory c1 m1 o1 c2 m2 o2 -> o2 -> o2 -> [m2] Source # arrows :: Subcategory c1 m1 o1 c2 m2 o2 -> [m2] Source # |
fullDiagram :: (FiniteCategory c1 m1 o1, Morphism m1 o1, Eq m1, Eq o1, FiniteCategory c2 m2 o2, Morphism m2 o2, Eq m2, Eq o2) => Diagram c1 m1 o1 c2 m2 o2 -> Diagram c1 m1 o1 (Subcategory c1 m1 o1 c2 m2 o2) m2 o2 Source #
Extracts a full and faithful diagram out of a faithful diagram.
stripDiagram :: (FiniteCategory c1 m1 o1, Morphism m1 o1, Eq m1, Eq o1, FiniteCategory c2 m2 o2, Morphism m2 o2, Eq m2, Eq o2) => Diagram c1 m1 o1 c2 m2 o2 -> [o2] -> Diagram c1 m1 o1 (FullSubcategory c2 m2 o2) m2 o2 Source #
Strips the target of a diagram so that only given objects remain.