Module make_small_cat_

Require Export cat_.
Require Export cat__.

Implicit Arguments On.

Small Categories

The following parametrized module builds the term of a category (of type Cat__.Cat) associated to every module of signature Cat_Sig_.

Module Make_Small_Cat_ [C:Cat_Sig_] <: A_Cat__.

Export Cat__.

Section Make_Small_Cat.

Local B : Cat_Data :=
 (!Build_Cat_Data C.Obj C.Morph C.morph_comp C.morph_id).

Remark B_th : (Cat_Theory (!oo B) (!ii B)).
Proof.
  Split.
  Apply C.morph_comp_assoc.
  Apply C.morph_id_sx.
  Apply C.morph_id_dx.
Qed.

Definition A : Obj.
Proof.
  Split with B; Exact B_th.
Defined.

End Make_Small_Cat.

End Make_Small_Cat_.

Category of small categories.

The module Cat_ itself gives produce a term of type Cat__.Cat.

Module Small_Cat_ : A_Cat__ := (Make_Small_Cat_ Cat_).


Index
This page has been generated by coqdoc