X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fmatita%2Fnlibrary%2Fsets%2Fcategories.ma;h=38c8129fa28d3d7dc0a55a5d51a588102f284d66;hb=e91eb82d2b5e032907758bff0b474d62d57463dc;hp=310aa709e2e0f1fe8ec1e325542bc23d3873e4c8;hpb=a580ff5c627c4148cdd3649ead20f4fac0f78be8;p=helm.git diff --git a/helm/software/matita/nlibrary/sets/categories.ma b/helm/software/matita/nlibrary/sets/categories.ma index 310aa709e..38c8129fa 100644 --- a/helm/software/matita/nlibrary/sets/categories.ma +++ b/helm/software/matita/nlibrary/sets/categories.ma @@ -1,3 +1,17 @@ +(**************************************************************************) +(* ___ *) +(* ||M|| *) +(* ||A|| A project by Andrea Asperti *) +(* ||T|| *) +(* ||I|| Developers: *) +(* ||T|| The HELM team. *) +(* ||A|| http://helm.cs.unibo.it *) +(* \ / *) +(* \ / This file is distributed under the terms of the *) +(* v GNU General Public License Version 2 *) +(* *) +(**************************************************************************) + include "sets/sets.ma". @@ -5,7 +19,7 @@ nrecord category : Type[2] ≝ { objs:> Type[1]; arrows: objs → objs → setoid; id: ∀o:objs. arrows o o; - comp: ∀o1,o2,o3. binary_morphism (arrows o2 o3) (arrows o1 o2) (arrows o1 o3); + comp: ∀o1,o2,o3. unary_morphism (arrows o2 o3) (unary_morph_setoid (arrows o1 o2) (arrows o1 o3)); comp_assoc: ∀o1,o2,o3,o4. ∀a34,a23,a12. comp o1 o3 o4 a34 (comp o1 o2 o3 a23 a12) = comp o1 o2 o4 (comp o2 o3 o4 a34 a23) a12; id_neutral_left: ∀o1,o2. ∀a: arrows o1 o2. comp ??? (id o2) a = a; @@ -27,8 +41,8 @@ ndefinition SETOID : category. ##| napply unary_morph_setoid; ##| #o; @ (λx.x); #a; #b; #H; napply H; ##| napply comp_binary_morphisms; (*CSC: why not ∘?*) -##| #o1; #o2; #o3; #o4; #f; #g; #h; nwhd; #x; napply #; -##|##6,7: #o1; #o2; #f; nwhd; #x; napply #; ##] +##| #o1; #o2; #o3; #o4; #f; #g; #h; #x; #x'; #Hx; nnormalize; napply (†(†(†Hx))) +##|##6,7: #o1; #o2; #f; #x; #x'; #Hx; nnormalize; napply (†Hx) ] nqed. unification hint 0 ≔ ;