Trait FgCategoryMap

Source
pub trait FgCategoryMap: CategoryMap {
    type ObGen: Eq + Clone;
    type MorGen: Eq + Clone;
    type ObGenMap: Column<Dom = Self::ObGen, Cod = Self::CodOb>;
    type MorGenMap: Column<Dom = Self::MorGen, Cod = Self::CodMor>;

    // Required methods
    fn ob_generator_map(&self) -> &Self::ObGenMap;
    fn mor_generator_map(&self) -> &Self::MorGenMap;

    // Provided methods
    fn apply_ob_generator(&self, x: Self::ObGen) -> Option<Self::CodOb> { ... }
    fn apply_mor_generator(&self, m: Self::MorGen) -> Option<Self::CodMor> { ... }
}
Expand description

A mapping out of a finitely generated category.

Such a mapping is determined by where it sends generating objects and morphisms. The codomain category is arbitrary.

Required Associated Types§

Source

type ObGen: Eq + Clone

Type of object generators in domain category.

Source

type MorGen: Eq + Clone

Type of morphism generators in domain category.

Source

type ObGenMap: Column<Dom = Self::ObGen, Cod = Self::CodOb>

Type of underlying mapping from object generators to objects.

Source

type MorGenMap: Column<Dom = Self::MorGen, Cod = Self::CodMor>

Type of underlying mapping from morphism generators to morphisms.

Required Methods§

Source

fn ob_generator_map(&self) -> &Self::ObGenMap

Gets the underlying mapping from object generators to objects.

Source

fn mor_generator_map(&self) -> &Self::MorGenMap

Gets the underlying mapping from morphism generators to morphisms.

Provided Methods§

Source

fn apply_ob_generator(&self, x: Self::ObGen) -> Option<Self::CodOb>

Applies the mapping at a generating object.

Source

fn apply_mor_generator(&self, m: Self::MorGen) -> Option<Self::CodMor>

Applies the mapping at a generating morphism.

Implementors§

Source§

impl<'a, Ob, Mor, Map, Cod> FgCategoryMap for FpFunctor<'a, Map, Cod>
where Ob: Eq + Clone, Mor: Eq + Clone, Map: GraphMapping<CodV = Ob, CodE = Mor>, Map::VertexMap: Column, Map::EdgeMap: Column, Cod: Category<Ob = Ob, Mor = Mor>,