Nuprl Definition : comma-cat

(S ↓ T) ==
  Cat(ob a:cat-ob(A) × b:cat-ob(B) × (cat-arrow(C) (ob(S) a) (ob(T) b));
      arrow(x,y) let a,b,f in 
      let a',b',f' in 
      {gh:cat-arrow(A) a' × (cat-arrow(B) b')| 
       (cat-comp(C) (ob(S) a) (ob(T) b) (ob(T) b') (arrow(T) b' (snd(gh))))
       (cat-comp(C) (ob(S) a) (ob(S) a') (ob(T) b') (arrow(S) a' (fst(gh))) f')
       ∈ (cat-arrow(C) (ob(S) a) (ob(T) b'))} ;
      id(x) let a,b,f in 
      <cat-id(A) a, cat-id(B) b>;
      comp(u,v,w,fp,gp) let a,b,x in 
      let a',b',x' in 
      let a'',b'',x'' in 
      let f,g fp 
      in let f',g' gp 
         in <cat-comp(A) a' a'' f', cat-comp(B) b' b'' g'>)



Definitions occuring in Statement :  functor-arrow: arrow(F) functor-ob: ob(F) mk-cat: mk-cat cat-comp: cat-comp(C) cat-id: cat-id(C) cat-arrow: cat-arrow(C) cat-ob: cat-ob(C) spreadn: spread3 pi1: fst(t) pi2: snd(t) set: {x:A| B[x]}  apply: a spread: spread def pair: <a, b> product: x:A × B[x] equal: t ∈ T
Definitions occuring in definition :  cat-comp: cat-comp(C) apply: a pair: <a, b> spread: spread def spreadn: spread3 cat-id: cat-id(C) pi1: fst(t) functor-arrow: arrow(F) functor-ob: ob(F) pi2: snd(t) cat-arrow: cat-arrow(C) equal: t ∈ T product: x:A × B[x] set: {x:A| B[x]}  cat-ob: cat-ob(C) mk-cat: mk-cat
FDL editor aliases :  comma-cat

Latex:
(S  \mdownarrow{}  T)  ==
    Cat(ob  =  a:cat-ob(A)  \mtimes{}  b:cat-ob(B)  \mtimes{}  (cat-arrow(C)  (ob(S)  a)  (ob(T)  b));
            arrow(x,y)  =  let  a,b,f  =  x  in 
            let  a',b',f'  =  y  in 
            \{gh:cat-arrow(A)  a  a'  \mtimes{}  (cat-arrow(B)  b  b')| 
              (cat-comp(C)  (ob(S)  a)  (ob(T)  b)  (ob(T)  b')  f  (arrow(T)  b  b'  (snd(gh))))
              =  (cat-comp(C)  (ob(S)  a)  (ob(S)  a')  (ob(T)  b')  (arrow(S)  a  a'  (fst(gh)))  f')\}  ;
            id(x)  =  let  a,b,f  =  x  in 
            <cat-id(A)  a,  cat-id(B)  b>
            comp(u,v,w,fp,gp)  =  let  a,b,x  =  u  in 
            let  a',b',x'  =  v  in 
            let  a'',b'',x''  =  w  in 
            let  f,g  =  fp 
            in  let  f',g'  =  gp 
                  in  <cat-comp(A)  a  a'  a''  f  f',  cat-comp(B)  b  b'  b''  g  g'>)



Date html generated: 2017_01_19-PM-02_56_11
Last ObjectModification: 2017_01_13-PM-02_42_05

Theory : small!categories


Home Index