FiniteCategories-0.2.0.0: Finite categories and usual categorical constructions on them.
CopyrightGuillaume Sabbagh 2022
LicenseGPL-3
Maintainerguillaumesabbagh@protonmail.com
Stabilityexperimental
Portabilityportable
Safe HaskellSafe-Inferred
LanguageHaskell2010

Math.FiniteCategories.FullSubcategory

Description

Selecting a FullSubcategory in a Category yields a FiniteCategory.

We have to forget the generating set of morphisms of the original Category as the generators are not always inheritable (see for example the full subcategory of Square containing the objects A and D).

If the generators are inheritable, you can use the constructor InheritedFullSubcategory to inherit the generators of the original Category.

Synopsis

Documentation

data FullSubcategory c m o Source #

A FullSubcategory needs an original category and a set of objects to select in the category.

The generators are forgotten, use InheritedFullSubcategory if the generators are inheritable.

Constructors

FullSubcategory c (Set o) 

Instances

Instances details
(Eq c, Eq o) => Eq (FullSubcategory c m o) Source # 
Instance details

Defined in Math.FiniteCategories.FullSubcategory

Methods

(==) :: FullSubcategory c m o -> FullSubcategory c m o -> Bool

(/=) :: FullSubcategory c m o -> FullSubcategory c m o -> Bool

(Show c, Show o) => Show (FullSubcategory c m o) Source # 
Instance details

Defined in Math.FiniteCategories.FullSubcategory

Methods

showsPrec :: Int -> FullSubcategory c m o -> ShowS

show :: FullSubcategory c m o -> String

showList :: [FullSubcategory c m o] -> ShowS

(PrettyPrint c, PrettyPrint m, PrettyPrint o, Eq o) => PrettyPrint (FullSubcategory c m o) Source # 
Instance details

Defined in Math.FiniteCategories.FullSubcategory

Methods

pprint :: FullSubcategory c m o -> String Source #

(Category c m o, Eq o) => Category (FullSubcategory c m o) m o Source # 
Instance details

Defined in Math.FiniteCategories.FullSubcategory

Methods

identity :: FullSubcategory c m o -> o -> m Source #

ar :: FullSubcategory c m o -> o -> o -> Set m Source #

genAr :: FullSubcategory c m o -> o -> o -> Set m Source #

decompose :: FullSubcategory c m o -> m -> [m] Source #

(Category c m o, Eq o) => FiniteCategory (FullSubcategory c m o) m o Source # 
Instance details

Defined in Math.FiniteCategories.FullSubcategory

Methods

ob :: FullSubcategory c m o -> Set o Source #

data InheritedFullSubcategory c m o Source #

An InheritedFullSubcategory is a FullSubcategory where the generators are the same as in the original Category.

Constructors

InheritedFullSubcategory c (Set o) 

Instances

Instances details
(Eq c, Eq o) => Eq (InheritedFullSubcategory c m o) Source # 
Instance details

Defined in Math.FiniteCategories.FullSubcategory

(Show c, Show o) => Show (InheritedFullSubcategory c m o) Source # 
Instance details

Defined in Math.FiniteCategories.FullSubcategory

Methods

showsPrec :: Int -> InheritedFullSubcategory c m o -> ShowS

show :: InheritedFullSubcategory c m o -> String

showList :: [InheritedFullSubcategory c m o] -> ShowS

(PrettyPrint c, PrettyPrint m, PrettyPrint o, Eq o) => PrettyPrint (InheritedFullSubcategory c m o) Source # 
Instance details

Defined in Math.FiniteCategories.FullSubcategory

(Category c m o, Eq o) => Category (InheritedFullSubcategory c m o) m o Source # 
Instance details

Defined in Math.FiniteCategories.FullSubcategory

Methods

identity :: InheritedFullSubcategory c m o -> o -> m Source #

ar :: InheritedFullSubcategory c m o -> o -> o -> Set m Source #

genAr :: InheritedFullSubcategory c m o -> o -> o -> Set m Source #

decompose :: InheritedFullSubcategory c m o -> m -> [m] Source #

(Category c m o, Eq o) => FiniteCategory (InheritedFullSubcategory c m o) m o Source # 
Instance details

Defined in Math.FiniteCategories.FullSubcategory

Methods

ob :: InheritedFullSubcategory c m o -> Set o Source #