SlideShare uma empresa Scribd logo
1 de 159
Baixar para ler offline
1




Teoria das Categorias: uma introdu¸˜o
                                  ca

       Prof. Carlos A. P. Campani

          8 de mar¸o de 2006
                  c
2




Copyright c 2005 Carlos A. P. Campani.
´
E garantida a permiss˜o para copiar, distribuir e/ou
                       a
modificar este documento sob os termos da Licen¸a de
                                                  c
Documenta¸ao Livre GNU (GNU Free Documentation
            c˜
License), Vers˜o 1.2 ou qualquer vers˜o posterior
               a                     a
publicada pela Free Software Foundation; sem Se¸oes
                                                  c˜
Invariantes, Textos de Capa Frontal, e sem Textos de
Quarta Capa. Uma c´pia da licen¸a ´ inclu´ na se¸ao
                      o           c e      ıda       c˜
intitulada “GNU Free Documentation License”.
veja: http://www.ic.unicamp.br/~norton/fdl.html.
3



Bibliografia
 • ASPERTI, A. ; LONGO, G. Categories Types and
   Structures: an introduction to Category Theory for
   the working computer scientist. MIT Press, 1991.
   Dispon´ em: ftp://ftp.di.ens.fr/pub/users/
          ıvel
   longo/CategTypesStructures/book.pdf.
 • MENEZES, P. ; HAEUSLER, E. Teoria das
   Categorias para Ciˆncia da Computa¸˜o. Editora
                     e               ca
   Sagra Luzzatto, 2001.
 • MAC LANE, S. Categories for the Working
   Mathematician, Springer-Verlag, 1971.
1          ¸˜
    INTRODUCAO                                              4




     1    Introdu¸˜o
                 ca
      • Teoria das Categorias estuda “objetos” e
        “morfismos” entre eles;
      • Ela ´ uma generaliza¸ao da teoria dos conjuntos e
            e               c˜
        das fun¸oes:
               c˜
         – Objetos = Conjuntos estruturados;
         – Morfismos = “fun¸˜es”;
                          co
1          ¸˜
    INTRODUCAO                                                5




      • Fornece uma ferramenta para a descri¸˜o abstrata de
                                            ca
        problemas de matem´tica;
                           a
      • Fornece um jarg˜o matem´tico e um ambiente
                        a        a
        matem´tico consistente e unificado para a
               a
        investiga¸ao em matem´tica;
                 c˜           a
1          ¸˜
    INTRODUCAO                             6




                 Teoria das categorias
                  P1                  P2




                       Outra teoria
                  E1                  E2
1          ¸˜
    INTRODUCAO                                                 7




      • A capacidade de generaliza¸ao, abstra¸˜o e unifica¸ao
                                   c˜         ca          c˜
        s˜o os principais m´ritos de Teoria das Categorias;
         a                 e
      • A relevˆncia de Teoria das Categorias para Ciˆncia
               a                                     e
        da Computa¸ao ´ que Teoria da Computa¸ao, assim
                    c˜ e                         c˜
        como Teoria das Categorias, ´ uma “teoria das
                                    e
        fun¸˜es”;
           co
      • Fornece uma estrutura para o estudo de semˆntica de
                                                  a
        linguagens de programa¸ao.
                              c˜
2         ¸˜
    DEFINICAO DE CATEGORIA                                      8




     2    Defini¸˜o de Categoria
               ca
       • A unica opera¸ao b´sica de Teoria das Categorias ´ a
           ´          c˜ a                                e
         composi¸˜o;
                ca
       • Exige-se que a composi¸ao seja associativa e que
                               c˜
         exista uma identidade para todos os objetos;
2         ¸˜
    DEFINICAO DE CATEGORIA                                    9




     Uma categoria C ´:
                     e
      1. Uma cole¸ao ObC de objetos, denotados por
                        c˜
         a, b, . . . , A, B, . . .;
      2. Uma cole¸ao MorC de morfismos (setas), denotadas
                    c˜
         por f, g, . . .;
      3. As opera¸˜es dom e cod atribuindo para cada seta f
                  co
         dois objetos, respectivamente dom´nio (origem) e
                                          ı
         codom´nio (destino) de f ;
               ı
2         ¸˜
    DEFINICAO DE CATEGORIA                                     10




      4. Uma opera¸˜o id associando a cada objeto b um
                    ca
         morfismo idb (a identidade de b) tal que
         dom(idb ) = cod(idb ) = b;
      5. Uma opera¸˜o ◦ (composi¸˜o) associando a cada par
                    ca            ca
         de setas f e g, com dom(f ) = cod(g) uma seta f ◦ g
         tal que dom(f ◦ g) = dom(g) e cod(f ◦ g) = cod(f ).
2         ¸˜
    DEFINICAO DE CATEGORIA                                    11




     Identidade e composi¸˜o devem satisfazer:
                         ca
     Lei da identidade Para quaisquer setas f e g, tal que
         cod(f ) = dom(g) = b, idb ◦ f = f e g ◦ idb = g;
     Lei da associatividade Para quaisquer setas f , g e h,
         tal que dom(f ) = cod(g) e dom(g) = cod(h),
         (f ◦ g) ◦ h = f ◦ (g ◦ h).
2         ¸˜
    DEFINICAO DE CATEGORIA                                      12




     Nota¸ao:
         c˜
       • f : a → b denota um morfismo com origem a e
         destino b;
       • Dados dois objetos a e b, o conjunto de todos os
         morfismos f tal que f : a → b ´ denotado por C[a, b].
                                        e
         Assim, f ∈ C[a, b] significa que dom(f ) = a e
         cod(f ) = b.
2         ¸˜
    DEFINICAO DE CATEGORIA                                       13




     Observa¸˜o: Pela defini¸ao de categoria, todo objeto
              ca              c˜
     b ∈ ObC deve possuir uma identidade idb : b → b, e esta
     identidade ´ unica pois se existisse uma idb = idb ent˜o,
                 e´                                        a
     pela lei da identidade, idb = idb ◦ idb = idb .
2         ¸˜
    DEFINICAO DE CATEGORIA                                      14




       • Um morfismo em que coincidem origem e destino ´
                                                      e
         chamado de endomorfismo;
       • Uma categoria C ´ pequena se ObC e MorC s˜o
                          e                          a
         conjuntos. Caso contr´rio a categoria ´ dita grande.
                              a                e
3   DIAGRAMAS                                                   15




     3    Diagramas
      • Diagramas s˜o usados para representar equa¸˜es;
                   a                              co
      • Permitem inferir novas equa¸oes a partir de outras j´
                                   c˜                       a
        conhecidas.
3   DIAGRAMAS                              16




                                  f
                             a        Gb




     Onde: a, b – objetos;
           f : a → b – morfismo.
3   DIAGRAMAS                                            17




     Exemplo: Sejam os morfismos f : a → b, g : a → c e
     h : c → b, ent˜o seu diagrama ´:
                   a               e
                                f
                           ab       Gb
                             bb       y
                               bb
                              g bb h
                                  b
                                    1
                                     c
3   DIAGRAMAS                                     18




     Representando a identidade:
                            ida

                                 Ô   f
                             a               Gb

     ou
                                         f
                              a           Gb
                                       ÐÐd
                                     ÐÐ
                           ida
                                   ÐÐ f
                                ÐÐ
                              a
3   DIAGRAMAS                                              19




     Um diagrama comuta se a composi¸˜o dos morfismos ao
                                      ca
     longo de qualquer caminho entre dois objetos fixos ´
                                                       e
     igual.
3   DIAGRAMAS                                                     20


     Lei associativa:
                                       h     Gb
                                 a
                                          ÑÑÑ
                                       ÑÑÑg
                                   ÐÑÑ        
                                 c           Gd
                                       f

     f : c → d g : b → c h : a → b (f ◦ g) ◦ h = f ◦ (g ◦ h)

     Lei da identidade:
                                 f
                          b bb     Ga
                                       bb
                             bb          bb g
                               bb a
                                id         bb
                             f   bb          bb
                                   0          1
                                    a          Gc
                                              g


          f : b → a g : a → c ida ◦ f = f           g ◦ ida = g
4   EXEMPLOS DE CATEGORIAS                                     21


     4      Exemplos de Categorias

      Categoria   Objetos                  Morfismos
      Set         conjuntos                fun¸˜es (totais)
                                              co
      Top         espa¸os topol´gicos
                      c        o           fun¸˜es cont´
                                              co       ınuas
      Vect        espa¸os vetoriais
                      c                    tranforma¸˜es
                                                    co
                                           lineares
      Grp         grupos                   homomorfismos
                                           de grupos
      PO          conjuntos parcialmente   fun¸˜es
                                              co
                  ordenados                monotˆnicas
                                                o
4   EXEMPLOS DE CATEGORIAS                                        22


     Sobre Set:
       • Para comprovar que Set ´ uma categoria basta
                                   e
         verificar a associatividade de fun¸oes e a identidade;
                                          c˜
       • Dados f : A → B, g : B → C e h : C → D, e para
         qualquer a ∈ A:

                   ((h ◦ g) ◦ f )(a) = (h ◦ g)(f (a)) =

             = h(g(f (a))) = h(g ◦ f (a)) = (h ◦ (g ◦ f ))(a)

       • Para qualquer f : A → B e para qualquer a ∈ A:

            (f ◦ idA )(a) = f (idA (a)) = f (a) = b = idB (b) =

                       = idB (f (a)) = (idB ◦ f )(a)
4   EXEMPLOS DE CATEGORIAS                               23




     Definindo Top:
       • Uma topologia em um conjunto A ´ uma cole¸ao
                                         e        c˜
         β = {Aλ ⊆ A|λ ∈ L} de partes de A, chamados
         abertos da topologia, tal que:
         1. ∅, A ∈ β;
         2. Se Aλ1 , . . . , Aλn ∈ β ent˜o ∩n Aλi ∈ β;
                                        a i=1
         3. Se {Aλ }λ∈V , com Aλ ∈ β para cada λ ∈ V e
            V ⊆ L, ent˜o ∪λ∈V Aλ ∈ β;
                       a
4   EXEMPLOS DE CATEGORIAS                                    24




       • Um conjunto A com uma topologia β ´ um espa¸o
                                           e        c
         topol´gico;
              o
       • Uma fun¸ao f : A → B ´ cont´nua em a ∈ A se para
                 c˜             e     ı
         todo aberto V de B tal que f (a) ∈ V existe um
         aberto U de A tal que a ∈ U e f (U ) ⊆ V ;
       • Se f : A → B ´ cont´
                      e     ınua para todo a ∈ A ent˜o
                                                    a
         dizemos que f ´ cont´nua;
                       e     ı
       • Observe-se que a composi¸˜o de fun¸˜es cont´
                                 ca        co       ınuas ´
                                                          e
         uma fun¸ao cont´
                c˜       ınua.
4   EXEMPLOS DE CATEGORIAS                                          25




     Definindo Vect:
       • Um espa¸o vetorial E ´ um conjunto, cujos elementos
                 c            e
         s˜o chamados vetores, no qual est˜o definidas duas
          a                               a
         opera¸˜es:
              co
         adi¸˜o u + v ∈ E para cada u, v ∈ E;
            ca
         multiplica¸˜o por escalar α.v, para cada α ∈ R e
                   ca
           v ∈ E;
       • Estas opera¸oes devem satisfazer as propriedades de
                      c˜
         comutatividade, associatividade, existˆncia do vetor
                                                 e
         nulo, existˆncia do inverso aditivo, e distributividade;
                    e
4   EXEMPLOS DE CATEGORIAS                                   26




       • Dados dois espa¸os vetoriais E e F, uma
                         c
         transforma¸˜o linear A : E → F ´ uma
                    ca                    e
         correspondˆncia que associa a cada vetor v ∈ E um
                    e
         vetor A(v) ∈ F de modo que vale, para quaisquer
         u, v ∈ E e α ∈ R:
         1. A(u + v) = A(u) + A(v);
         2. A(α.v) = α.A(v);
       • Observe-se que a composi¸˜o de transforma¸˜es
                                 ca               co
         lineares ´ associativa.
                  e
4   EXEMPLOS DE CATEGORIAS                                      27




     Definindo Grp:
       • Um conjunto G com uma opera¸˜o ⊕ : G × G → G ´
                                    ca                e
         um grupo se:
         1. a ⊕ (b ⊕ c) = (a ⊕ b) ⊕ c, para todo a, b, c ∈ G;
         2. Existe e ∈ G, chamado neutro, tal que
            a ⊕ e = e ⊕ a = a, para todo a ∈ G;
         3. Para todo a ∈ G existe a−1 ∈ G tal que
            a ⊕ a−1 = a−1 ⊕ a = e;
       • Exemplo: (Z, +) ´ um grupo;
                         e
4   EXEMPLOS DE CATEGORIAS                                        28




       • Uma fun¸˜o φ : G1 → G2 , onde G1 e G2 s˜o grupos, ´
                ca                              a          e
         um homomorfismo de grupos se:
         1. φ(eG1 ) = eG2 , onde eG1 ´ o neutro de G1 e eG2 ´ o
                                     e                      e
            neutro de G2 ;
         2. φ(a ⊕G1 b) = φ(a) ⊕G2 φ(b), para todo a, b ∈ G1 ;
       • Observe-se que a composi¸˜o de homomorfismos de
                                 ca
         grupos ´ associativa.
                e
4   EXEMPLOS DE CATEGORIAS                                    29




     Definindo PO:
       • Um conjunto parcialmente ordenado ´ um par (A, ),
                                           e
         onde A ´ um conjunto e ´ uma ordem parcial sobre
                e                 e
         o conjunto A;
       • Uma fun¸ao f ´ monotˆnica se ela preserva a ordem,
                  c˜  e       o
         ou seja, x1 x2 ⇒ f (x1 ) f (x2 );
       • Sabe-se que a composi¸ao de duas fun¸˜es
                              c˜             co
         monotˆnicas ´ uma fun¸˜o monotˆnica.
               o      e        ca        o
4   EXEMPLOS DE CATEGORIAS                                     30




     Observa¸˜es e mais exemplos:
            co
       • A no¸ao de “categoria” considera objetos como
              c˜
         cole¸˜es de conjuntos estruturados e morfismos como
             co
         as suas fun¸oes associadas;
                    c˜
       • N˜o devemos restringir nossas defini¸oes pois os
           a                                c˜
         morfismos n˜o necessariamente s˜o “fun¸˜es”, um
                      a                  a      co
         exemplo ´ a categoria Rel que possui conjuntos como
                  e
         objetos e rela¸˜es como morfismos;
                        co
4   EXEMPLOS DE CATEGORIAS                                   31


       • Em Teoria das Categorias n˜o consideramos a
                                      a
         estrutura interna dos objetos, apenas as rela¸oes
                                                      c˜
         estabelecidas entre eles pelos seus morfismos;
       • Categoria Amor:
4   EXEMPLOS DE CATEGORIAS                                    32




       • A menor categoria poss´ ´ a categoria 1 que possui
                               ıvel e
         apenas um objeto e uma seta (a identidade do
         objeto);
       • Uma categoria ´ chamada discreta se cada seta ´ a
                        e                              e
         identidade de algum objeto;
       • Esta categoria seria totalmente determinada pela
         cole¸˜o de seus objetos;
             ca
       • Um exemplo de categoria discreta ´ a categoria 1;
                                          e
4   EXEMPLOS DE CATEGORIAS                                     33




       • Uma categoria ´ chamada de pr´-ordem se, para cada
                        e                e
         par de objetos a e b, existe no m´ximo um morfismo
                                          a
         f : a → b;
       • Uma pr´-ordem ´ totalmente determinada pela
                 e        e
         rela¸˜o de pr´-ordem entre seus objetos;
             ca       e
       • Em uma pr´-ordem, toda seta f : a → b pode ser
                    e
         identificada pelo par (a, b);
       • Assim, toda a informa¸ao sobre a categoria C, que ´
                                c˜                         e
         uma pr´-ordem, ´ dada pela rela¸˜o
                e        e              ca
         RC = {(a, b)|∃f ∈ C[a, b]};
4   EXEMPLOS DE CATEGORIAS                                      34




       • Toda categoria discreta ´ uma pr´-ordem;
                                 e       e
       • A menor categoria n˜o-discreta que ´ uma pr´-ordem
                               a               e        e
         ´ a categoria 2, que possui dois objetos (chamaremos
         e
         de 0 e 1) e trˆs setas: as duas identidades e a seta
                       e
         (0, 1) : 0 → 1;
                              id0               id1

                                    Ö                 Ö
                               0                G1
                                        (0,1)
4   EXEMPLOS DE CATEGORIAS                              35




       • Um monoide ´ um conjunto tendo uma opera¸ao
                       e                           c˜
         bin´ria associativa e um elemento neutro:
            a

                               (A, ⊕, e)


         Onde: A – conjunto suporte;
               ⊕ : A × A → A – opera¸˜o bin´ria;
                                    ca     a
                e – elemento neutro, tal que
         a ⊕ e = e ⊕ a = a, ∀a ∈ A;
4   EXEMPLOS DE CATEGORIAS                                  36




       • Podemos interpretar um monoide como uma
         categoria que possui apenas um objeto, e a
         composi¸˜o de morfismos seria a opera¸ao bin´ria;
                 ca                           c˜    a
       • Exemplo: (N, +, 0), e o elemento neutro ´ o 0
                                                 e
         (identidade):
                                 1            2

                             0       5  Ò        3
                                       ∗ p™
                                        €
                                     ...          4

                                              5
4   EXEMPLOS DE CATEGORIAS                                        37




       • Sistemas dedutivos podem ser interpretados como
         categorias;
       • O morfismo f : a → b corresponde ` prova a
                                         a              b;
       • Observe-se que a categoria ´ obtida na presen¸a da
                                     e                c
         identidade ida : a → a, correspondente a prova trivial
         a a, e da composi¸ao associativa de provas:
                             c˜
                         f :a→b g:b→c
                                      .
                            g◦f :a→c
4   EXEMPLOS DE CATEGORIAS                                         38




       • Um grafo ´ uma qu´drupla G = (V, T, δ0 , δ1 ), tal que:
                  e       a
         V um conjunto de nodos ou v´rtices;
                                    e
         T um conjunto de arcos ou arestas;
         δ0 , δ1 : T → V fun¸˜es totais denominadas origem e
                            co
              destino;
       • Categoria Gr: Possui como objetos todos os grafos e
         como morfismos os homomorfismos de grafos;
4   EXEMPLOS DE CATEGORIAS                                                  39




       • Sejam G1 = (V1 , T1 , δ01 , δ11 ) e G2 = (V2 , T2 , δ02 , δ12 ).
         Um homomorfismo de grafos:

                                   h : G1 → G2

         ´ um par de fun¸oes:
         e              c˜

                                   h = (hV , hT )

         onde: hV : V1 → V2 e hT : T1 → T2 s˜o tais que:
                                            a

                  δ02 ◦ hT = hV ◦ δ01 e δ12 ◦ hT = hV ◦ δ11 .
4   EXEMPLOS DE CATEGORIAS                                      40




     Exemplo:
      G
          1
                      A                         G
                              hV                    2

                  r                             a
                              hT       1                    3

                      B
                                            c           b

              s           t
                                       2
                                   d

                      C                 e
5   SUBCATEGORIA                                             41




     5    Subcategoria
     Uma categoria D ´ uma subcategoria de uma categoria C
                     e
     se:
      1. ObD ⊆ ObC ;
      2. Para todo a e b em ObD , D[a, b] ⊆ C[a, b];
      3. Composi¸oes e identidades em D coincidem com as
                c˜
         de C.
5   SUBCATEGORIA                                            42




     Uma subcategoria ´ completa se, para todo a e b em
                         e
     ObD , D[a, b] = C[a, b]. Uma subcategoria completa ´
                                                        e
     totalmente determinada pela cole¸ao de seus objetos.
                                       c˜
6   CATEGORIA DUAL                                                     43




     6     Categoria Dual
     A categoria dual C op da categoria C tem os mesmos
     objetos e os mesmos morfismos de C, idop = idb ,
                                                b
     domop (f ) = cod(f ), codop (f ) = dom(f ), e f ◦op g = g ◦ f .
6   CATEGORIA DUAL                                               44




     Observa¸˜es:
            co
       • C op [b, a] = C[a, b] e (C op )op = C;
       • Se P ´ uma proposi¸ao que ´ verdadeira na categoria
               e             c˜      e
         C, ent˜o P op ´ verdadeira em C op ;
               a       e
       • Se P ´ uma proposi¸ao verdadeira para qualquer
               e              c˜
         categoria, ent˜o P op tamb´m ´ verdadeira para
                       a           e e
         qualquer categoria, pois toda categoria ´ dual de sua
                                                 e
         dual.
6   CATEGORIA DUAL                                         45




     Com rela¸ao ao diagrama da categoria dual:
             c˜
       • Para obter o diagrama da dual basta inverter as
         setas;
       • O diagrama da dual comuta se e somente se o
         diagrama original comuta.
7   CATEGORIA PRODUTO                                                 46




     7     Categoria Produto
     Dadas duas categorias C e D, a categoria produto C × D
     tem por objetos os pares (a, b), onde a e b s˜o os objetos
                                                           a
     das categorias C e D respectivamente, e por morfismos os
     pares (f, g) : (a, b) → (a , b ), onde f : a → a e g : b → b
     s˜o morfismos de C e D respectivamente. Finalmente,
      a
     id(a,b) = (ida , idb ) e (f, g) ◦ (f , g ) = (f ◦ f , g ◦ g ).
8   CATEGORIAS C ↓ A E C ↑ A                                     47




     8     Categorias C ↓ a e C ↑ a
     Dada uma categoria C e um objeto a ∈ ObC , a categoria
     C ↓ a de objetos sobre a (tamb´m conhecida como
                                      e
     categoria fatia, “slice category”) ´ definida como:
                                        e
       1. ObC↓a = {f ∈ MorC |cod(f ) = a};
       2. Dados dois objetos f : b → a e g : c → a, um
          morfismo com origem f e destino g ´ uma seta
                                               e
          h ∈ C[b, c] tal que g ◦ h = f ;
       3. Identidades e composi¸ao de C ↓ a s˜o herdadas de C.
                               c˜            a
8   CATEGORIAS C ↓ A E C ↑ A                               48




     Em C:
                                b bb
                                     bb f
                                       bb
                                         bb
                                            1
                               h              a
                                          c
                                       
                                   g
                                c
     Em C ↓ a:
                                      h    G [g : c → a]
                      [f : b → a]
8   CATEGORIAS C ↓ A E C ↑ A                        49




     Em C:
                                  b bb
                                       bb f
                                         bb
                                           bb
                                              0
                               idb              a
                                           ÐÐd
                                        ÐÐÐ
                                    ÐÐÐ f
                                  b
     Em C ↓ a:
                                      idb
                                            Ù
                               [f : b → a]
8   CATEGORIAS C ↓ A E C ↑ A                          50




       • Considere Set ↓ A;
       • Podemos pensar um objeto g : B → A desta
         categoria como sendo uma fam´ de conjuntos
                                        ılia
         disjuntos indexados por A, {g −1 (a)}a∈A ;
       • h : B → B ´ um morfismo de g : B → A para
                       e
         g : B → A se e somente se
         ∀b b ∈ g −1 (a) ⇒ h(b) ∈ g −1 (a);
8   CATEGORIAS C ↓ A E C ↑ A                               51




     Podemos definir tamb´m uma categoria C ↑ a, cujos
                          e
     objetos s˜o os morfismos de C que tem como origem a.
              a
9   MONOMORFISMO, EPIMORFISMO E ISOMORFISMO                       52



     9    Monomorfismo, Epimorfismo e
          Isomorfismo
       • Uma fun¸ao f : A → B ´ injetiva quando, para todo
                 c˜                e
         a, a ∈ A, se f (a) = f (a ) ent˜o a = a ;
                                        a
       • Conclui-se que, para f injetiva, dadas duas fun¸oes
                                                         c˜
         g : C → A e h : C → A, se para todo c ∈ C
         f (g(c)) = f (h(c)) ent˜o para todo c ∈ C g(c) = h(c),
                                a
         ou seja, f ◦ g = f ◦ h implica g = h;
       • O inverso tamb´m ´ verdade, ou seja, se f ◦ g = f ◦ h
                        e e
         implica g = h ent˜o f ´ injetiva;
                          a e
9   MONOMORFISMO, EPIMORFISMO E ISOMORFISMO                    53




       • Suponha o contr´rio, ent˜o existem a e a tal que
                          a         a
         f (a) = f (a ) mas a = a ;
       • Definimos g tal que g(c) = a para todo c ∈ C e h tal
         que h(c) = a para todo c ∈ C;
       • Ent˜o, f ◦ g = f ◦ h mas g = h, o que ´ uma
            a                                  e
         contradi¸ao;
                 c˜
9   MONOMORFISMO, EPIMORFISMO E ISOMORFISMO                     54




       • f ◦ g = f ◦ h implica g = h se e somente se f ´e
         injetiva (como se a aplica¸˜o de f se cancelasse a
                                   ca
         esquerda);
       • De forma similar, g ◦ f = h ◦ f implica g = h se e
         somente se f ´ sobrejetiva (como se a aplica¸ao de f
                       e                             c˜
         se cancelasse a direita).
9   MONOMORFISMO, EPIMORFISMO E ISOMORFISMO                     55




     Sejam uma categoria C e a, b ∈ ObC . Ent˜o:
                                             a
      1. Uma seta h ∈ C[a, b] ´ um monomorfismo (ou ´
                              e                        e
         mono) se e somente se h ◦ g = h ◦ f ⇒ g = f ;
      2. Uma seta h ∈ C[a, b] ´ um epimorfismo (ou ´ epi ) se
                              e                   e
         e somente se g ◦ h = f ◦ h ⇒ g = f ;
      3. Uma seta h ∈ C[a, b] ´ um isomorfismo (ou ´ iso) se e
                              e                       e
         somente se existe g ∈ C[b, a] tal que g ◦ h = id e
         h ◦ g = id.
9   MONOMORFISMO, EPIMORFISMO E ISOMORFISMO              56




                   h◦g=h◦f

                   g                 '
                        G       h    G b ent˜o g = f ;
     Mono c             Ga                  a
                   f

               g◦h=f ◦h

                            g   'G
               h   Gb
     Epi a                        G c ent˜o g = f ;
                                         a
                            f

          id       id

           Ó h G Ó
     Iso a o    b e g ◦ h = id e h ◦ g = id.
               g
9   MONOMORFISMO, EPIMORFISMO E ISOMORFISMO                      57




     Observa¸˜es:
            co
       • Se uma seta h ´ iso, ent˜o tamb´m ´ epi e mono,
                       e         a      e e
         embora o contr´rio n˜o seja necessariamente
                       a      a
         verdadeiro:
         Se h ´ iso, ent˜o existe f tal que f ◦ h = id. Logo,
              e         a
         h◦g =h◦g ⇒f ◦h◦g =f ◦h◦g ⇒g =g. O
         argumento ´ similar para epi.
                     e
       • Embora seja util em Set pensar mono e epi como
                      ´
         sendo inje¸ao e sobreje¸ao respectivamente, isto pode
                   c˜           c˜
         conduzir a confus˜o em outras categorias;
                           a
9   MONOMORFISMO, EPIMORFISMO E ISOMORFISMO                 58




       • Um mono h ∈ C[a, b] cinde (“split”) se existe um
         g ∈ C[b, a] tal que g ◦ h = ida ;
       • Um epi h ∈ C[a, b] cinde (“split”) se existe um
         g ∈ C[b, a] tal que h ◦ g = idb .
10               ´
     OBJETOS ISOMORFICOS                                       59




     10     Objetos Isom´rficos
                        o
       • Dois objetos a e b s˜o isom´rficos (a ∼ b) se existe
                             a      o         =
         um isomorfismo h ∈ C[a, b];
       • Isomorfismo estabelece, em certo grau de abstra¸ao,
                                                       c˜
         uma rela¸˜o de “semelhan¸a” ou “equivalˆncia” entre
                  ca              c              e
         objetos.
11   MORFISMO PRINCIPAL                                          60




     11     Morfismo Principal
     Seja C uma categoria e a, b ∈ ObC . Ent˜o:
                                            a
      1. Uma seta h ∈ C[a, b] ´ um morfismo principal se e
                              e
         somente se ∀f ∈ C[a, b] ∃g ∈ C[a, a] f = h ◦ g;
      2. Um par de setas f ∈ C[a, b] e g ∈ C[b, a] ´ um par de
                                                   e
         retra¸˜o se e somente se g ◦ f = id. Ent˜o a ´
              ca                                   a   e
         chamado de retra¸˜o de b (a  b) via o par de
                          ca
         retra¸˜o (f, g).
              ca
11   MORFISMO PRINCIPAL                                          61




     Observa¸˜es:
            co
       • h ´ principal se e somente se para todo f existe um g
           e
         tal que:
                                      h   Gb
                                 a
                                 y        d
                                       ÐÐÐ
                                g
                                    ÐÐÐf
                                  ÐÐ
                                 a
       • f e g s˜o um par de retra¸˜o (a  b) se:
                a                 ca
                                f         g
                            a        Gb        Ga

         e g ◦ f = id.
11   MORFISMO PRINCIPAL                                            62




     Teorema 1 Sejam C uma categoria e a, b ∈ ObC . Ent˜o:
                                                       a
      1. Se a  b via (i, h), ent˜o h ´ epi e principal, e i ´
                                 a    e                      e
         mono;
      2. Se h ∈ C[a, b] ´ principal e existe um epi k ∈ C[a, b],
                        e
         ent˜o h ´ epi;
            a    e
      3. Se a  b e f ∈ C[b, a] ´ principal, ent˜o existe
                                e               a
         g ∈ C[a, b] tal que a  b via (g, f ).
11   MORFISMO PRINCIPAL                                           63


     Prova:
      1. Se a  b via (i, h), ent˜o h ´ epi e principal, e i ´
                                 a    e                      e
         mono;
          • g ◦ h = f ◦ h ⇒ g ◦ h ◦ i = f ◦ h ◦ i ⇒ g = f para
            h ◦ i = id;
          • Prova que h ´ principal: ∀f ∃g f = h ◦ g. Tome
                           e
            g = i ◦ f , ent˜o h ◦ g = h ◦ i ◦ f = f . Segundo o
                           a
            diagrama:
                                   a i Gb
                                    y
                                 f            h
                                              
                                     b       Ga
                                         f

          • i ◦ g = i ◦ f ⇒ h ◦ i ◦ g = h ◦ i ◦ f ⇒ g = f;
11   MORFISMO PRINCIPAL                                            64




      2. Se h ∈ C[a, b] ´ principal e existe um epi k ∈ C[a, b],
                        e
         ent˜o h ´ epi;
            a    e
         g◦h=f ◦h⇒g◦h◦g =f ◦h◦g ⇒g◦k =
         f ◦ k ⇒ g = f (para um g apropriado);
                                           h    Gb
                                    a
                                    y
                                              ÐÐd
                                g          ÐÐÐ
                                        ÐÐÐ k
                                    a
11   MORFISMO PRINCIPAL                                        65




      3. Se a  b e f ∈ C[b, a] ´ principal, ent˜o existe
                                e               a
         g ∈ C[a, b] tal que a  b via (g, f );
         Seja a  b via (i, j). Como f ´ principal ent˜o
                                        e               a
         ∃s ∈ C[b, b] j = f ◦ s. Assim, para g = s ◦ i temos
         f ◦ g = j ◦ i = ida . Em diagrama:
                                  i        j
                             aa       Gb        Ga
                               aa               d
                                 aa          ÑÑÑ
                                g  aa s ÑÑÑ
                                     a0  ÑÑ f
                                      b
12   CATEGORIA DOS IDEMPOTENTES                                      66




     12      Categoria dos Idempotentes
     Se f : a → b e g : b → a s˜o um par de retra¸˜o, ent˜o a
                                a                     ca      a
     fun¸ao h = f ◦ g : b → b ´ idempotente, isto ´, h ◦ h = h,
        c˜                     e                      e
     pois h ◦ h = (f ◦ g) ◦ (f ◦ g) = f ◦ (g ◦ f ) ◦ g = f ◦ g = h
     (pela associatividade da composi¸˜o).
                                        ca
12   CATEGORIA DOS IDEMPOTENTES                                      67




     Dada uma categoria C e um objeto b ∈ ObC , a categoria
     dos idempotentes sobre b (Retb ) ´ definida como:
                                      e

                  ObRetb = {f ∈ C[b, b]|f ◦ f = f }
                 MorRetb = {(f, k, g)|f, g ∈ ObRetb , k ∈ C[b, b],
                                  k = g ◦ k ◦ f}
          dom((f, k, g)) = f
           cod((f, k, g)) = g
                       idf = (f, f, f )
     (f, k, g) ◦ (g , k , f ) = (g , k ◦ k , g)
12   CATEGORIA DOS IDEMPOTENTES                                                    68




     identidade (f, k, g) ◦ (f, f, f ) = (f, k ◦ f, g). Sabemos
         que f e g s˜o idempotentes e k = g ◦ k ◦ f :
                    a

                      k◦f =g◦k◦f ◦f =g◦k◦f =k

          Similar para (f, f, f ) ◦ (g, k, f );
     associatividade da composi¸˜o              ca
         ((f1 , f2 , f3 ) ◦ (g1 , g2 , f1 )) ◦ (h1 , h2 , g1 ) =
         (g1 , f2 ◦ g2 , f3 ) ◦ (h1 , h2 , g1 ) = (h1 , (f2 ◦ g2 ) ◦ h2 , f3 ) =
         (h1 , f2 ◦ (g2 ◦ h2 ), f3 ) e
         (f1 , f2 , f3 ) ◦ ((g1 , g2 , f1 ) ◦ (h1 , h2 , g1 )) =
         (f1 , f2 , f3 ) ◦ (h1 , g2 ◦ h2 , f1 ) = (h1 , f2 ◦ (g2 ◦ h2 ), f3 ).
13   SUB-OBJETO                                               69




     13     Sub-objeto
       • Sub-objeto ´ a vers˜o categorial de subconjunto da
                     e      a
         teoria dos conjuntos;
       • Baseia-se na id´ia de definir um subconjunto A ⊆ B
                        e
         como um monomorfismo f : D → B (intuitivamente
         “f (D) = A”);
13   SUB-OBJETO                                               70




       • Se existem muitas setas mono definindo o mesmo
         subconjunto, ´ necess´rio introduzir uma classe de
                       e       a
         equivalˆncia e definir sub-objetos usando-a;
                e
       • Seja C uma categoria. Se f : b → a e g : c → a s˜o
                                                         a
         duas setas mono com destino comum a, ent˜o  a
         dizemos que f ≤ g se e somente se existe h : b → c
         tal que g ◦ h = f ;
       • Note que o unico h ´ mono tamb´m, pois
                    ´       e          e
         h◦k =h◦k ⇒g◦h◦k =g◦h◦k ⇒f ◦k =
         f ◦k ⇒k =k;
13   SUB-OBJETO                                             71




       • Se f ≤ g e g ≤ f ent˜o dizemos que f ∼ g, e ∼ ´
                             a                =      =e
         uma rela¸ao de equivalˆncia entre monomorfismos
                 c˜            e
         com destino comum;
       • As classes de equivalˆncia determinadas por esta
                              e
         rela¸˜o de equivalˆncia s˜o os sub-objetos de a;
             ca            e      a
       • Nota¸˜o: [f ].
             ca
14   OBJETOS INICIAL E TERMINAL                                 72




     14      Objetos Inicial e Terminal
     Seja C uma categoria. Um objeto 0 ´ inicial se e somente
                                        e
     se para qualquer b ∈ ObC existe um unico f ∈ C[0, b].
                                        ´
14   OBJETOS INICIAL E TERMINAL                                   73


     Observa¸˜es:
            co
       • O t´
            ıpico exemplo de objeto inicial ´ ∅ (conjunto
                                             e
         vazio) em Set, pois a fun¸ao vazia (ou seja, a fun¸˜o
                                   c˜                      ca
         cujo grafo ´ vazio) ´ a unica seta com origem em ∅;
                    e        e ´
       • Deve-se observar que a fun¸˜o vazia, tendo como
                                   ca
         dom´
            ınio ∅, ´ total (como Set exige) por vacuidade;
                    e
       • Inicialidade ´ a mais simples no¸ao universal em
                      e                  c˜
         Teoria das Categorias, j´ que ´ dada pela existˆncia e
                                 a     e                e
         unicidade de morfismos satisfazendo certas
         propriedades;
       • Universalidade ´ um conceito fundamental em Teoria
                         e
         das Categorias.
14   OBJETOS INICIAL E TERMINAL                                 74




     Teorema 2 Se 0 e 0 s˜o dois objetos iniciais da
                              a
     categoria C, ent˜o eles s˜o isom´rficos (em outras
                     a        a       o
     palavras: o objeto inicial ´ unico a n˜o ser por
                                e´         a
     isomorfismos).
     Prova: Sejam i : 0 → 0 e j : 0 → 0 dois morfismos
     dados pela inicialidade de 0 e 0 . Ent˜o, j ◦ i : 0 → 0,
                                           a
     mas tamb´m id0 : 0 → 0. Pela inicialidade de 0 s´ pode
               e                                         o
     existir um morfismo em C[0, 0], ent˜o j ◦ i = id0 . Da
                                         a
     mesma forma, pela inicialidade de 0 , i ◦ j = id0 .
14   OBJETOS INICIAL E TERMINAL                                   75




       • Podemos usar dualidade para definir um novo
         conceito e provar novas propriedades;
       • Seja P (c) a propriedade “para qualquer b ∈ ObC
         existe um unico f tal que dom(f ) = c e cod(f ) = b”;
                    ´
       • Pela defini¸˜o, c ´ inicial se e somente se P (c) vale;
                   ca     e
       • O enunciado dual de P (c), P op (c), ´ “para qualquer
                                              e
         b ∈ ObC existe um unico f tal que dom(f ) = b e
                           ´
         cod(f ) = c”;
14   OBJETOS INICIAL E TERMINAL                                    76




       • Conceitos duais s˜o usualmente chamados usando-se
                          a
         o prefixo “co-”;
       • Assim, P op (c) define co-inicialidade, e o objeto que a
         satisfaz ´ o objeto co-inicial (tamb´m conhecido
                  e                           e
         como terminal );
       • Nota¸˜o: 1 ou t e o morfismo unico que tem como
               ca                    ´
         origem um objeto a e como destino t ´ denotado por
                                             e
         !a : a → t.
14   OBJETOS INICIAL E TERMINAL                              77




     Observa¸˜es:
            co
       • Qualquer conjunto unit´rio {∗} (que possui apenas
                               a
         um elemento) ´ terminal em Set;
                      e
       • Na categoria 2 um elemento ´ inicial e o outro ´
                                    e                   e
         terminal;
       • Se c ´ inicial em C ent˜o ´ terminal em C op e
              e                 a e
         vice-versa.
14   OBJETOS INICIAL E TERMINAL                         78




     Teorema 3 Se 1 e 1 s˜o dois objetos terminais na
                             a
     categoria C, ent˜o eles s˜o isom´rficos.
                     a        a      o
     Prova: Pela dualidade e pelo Teorema 2.
14   OBJETOS INICIAL E TERMINAL                            79




     Observa¸˜es:
            co
       • Um objeto pode ser inicial e terminal ao mesmo
         tempo, neste caso ´ chamado de objeto zero;
                           e
       • Em Set, um morfismo do conjunto unit´rio para um
                                             a
         conjunto A define os elementos de A;
       • Em uma categoria C qualquer, uma seta de um
         objeto terminal t para um objeto a ´ usualmente
                                            e
         chamada de elemento ou ponto de a;
14   OBJETOS INICIAL E TERMINAL                                  80




       • Seja C uma categoria. t ∈ ObC ´ um gerador se e
                                        e
         somente se para todos a, b ∈ ObC e todos
         f, g ∈ C[a, b], temos
         f = g ⇒ ∃h ∈ C[t, a] f ◦ h = g ◦ h;
       • C tem suficientes pontos (ou ´ bem pontuada), se
                                      e
         existe um gerador t que ´ terminal na categoria dada;
                                 e
       • Ou seja, a categoria tem suficientes pontos quando as
         setas com origem no objeto terminal permitem
         discriminar entre morfismos, de forma similar que
         para os elementos de Set.
15   PRODUTO E COPRODUTO CATEGORIAL                            81




     15     Produto e Coproduto
            Categorial
       • O produto categorial ´ uma generaliza¸ao estrutural
                              e               c˜
         da no¸ao de produto cartesiano;
              c˜
       • Dados dois conjuntos A e B, seu produto cartesiano
         ´:
         e
                    A × B = {(x, y)|x ∈ A, y ∈ B}
15   PRODUTO E COPRODUTO CATEGORIAL                                82




       • Associado com este conjunto existem dois
         mapeamentos especiais pA : A × B → A e
         pB : A × B → B, chamados proje¸˜es, tal que para
                                           co
         todo (x, y) ∈ A × B, pA ((x, y)) = x e pB ((x, y)) = y;
       • Sejam f : C → A e g : C → B, ent˜o
                                          a
          f, g : C → A × B, e  f, g  (c) = f (c), g(c) 
         para todo c ∈ C;
       • Seja c ∈ ObC . Definimos a opera¸ao   c˜
         , c : C[c, a] × C[c, b] → C[c, a × b] como acima
         descrito.
15   PRODUTO E COPRODUTO CATEGORIAL                               83




     Sejam C uma categoria e a, b ∈ ObC . O produto categorial
     de a e b ´ um objeto a × b junto com dois morfismos
              e
     pa : a × b → a e pb : a × b → b tal que, dado um c ∈ ObC ,
     para qualquer f ∈ C[c, a] e g ∈ C[c, b], existe exatamente
     um h ∈ C[c, a × b] tal que o seguinte diagrama ´  e
     comutativo:
                                  c
                                 y ii
                                  y     ii g
                            f   yy        ii
                              yy      h     ii
                         |oyyy               i4
                        a pa a × b pb G b
     Observa¸˜o: c ´ chamado de pr´-produto.
            ca     e              e
15   PRODUTO E COPRODUTO CATEGORIAL                                   84




     Exemplos: Em Set, sejam A = {1, 2}, B = {a, b} e
     C = {x, y}. Ent˜o A × B = {(1, a), (2, a), (1, b), (2, b)} e h
                    a
     ´ o unico morfismo que faz o seguinte diagrama comutar:
     e ´

                                    w C qqq
                               f www       qqg
                                w        h   qq
                              ww               qq
                           {ww                  5
                        A pA A × B pB G B
                         o
15   PRODUTO E COPRODUTO CATEGORIAL                                  85



     Definimos f , g e h de acordo com a seguinte ilustra¸ao:
                                                        c˜
                                                    C

                                       x    y



                          f                              g
                                                h



                 1                  (1,a)
                                                             a
                                            (2,a)
                 2                                           b
                                    (1,b)
             A       p                      (2,b)       p        B
                      A                                  B
                              AxB
15   PRODUTO E COPRODUTO CATEGORIAL                            86




     Na categoria 2,
                                   id0               id1

                                         Ö                 Ö
                                    0                G1
                                             (0,1)

     0 × 1 = 1 × 0 = 0:

                                        z 0 iii
                                 id0 zzz        i (0,1)
                                   zz        id0 iii
                                 zz                ii
                              |z
                               o                       4G
                          0      id0
                                        0 × 1 (0,1) 1
15   PRODUTO E COPRODUTO CATEGORIAL                          87




     Em Set, ∅ × A = A × ∅ = ∅:

                                    z ∅ iii
                             id∅ zzz        ii f
                                zz       id∅ iii
                               z                 ii
                           | zz                   4
                      ∅   oz        ∅×A              G   A
                              id∅              f
15   PRODUTO E COPRODUTO CATEGORIAL                                88


     Teorema 4 Em uma categoria, o produto, se existir, ´
                                                        e
     unico a n˜o ser por isomorfismos.
     ´        a
     Prova: Seja a ⊗ b um produto alternativo com proje¸˜esco
     qa e qb , ent˜o  qa , qb  ◦  pa , pb  ´ o morfismo unico
                  a                            e           ´
     que faz o seguinte diagrama comutar:

                                    a×b
                                      g
                                    zz      g p
                             pa    zp ,p ggg b
                                  z a b
                                zz             gg
                               z                 gg
                            }zz qa     
                             o
                         a —hh       a⊗b
                                             qb
                                                   Ga3 b
                                                  {
                               hh
                                 hh q ,q  {{  {{
                               pa h h a b {{{ pb
                                    h
                                          {
                                    a×b
     Logo,  qa , qb  ◦  pa , pb = ida×b e, por simetria,
      pa , pb  ◦  qa , qb = ida⊗b .
15   PRODUTO E COPRODUTO CATEGORIAL                               89


     Morfismo produto: Sejam f : a → c e g : b → d.
                                 pa          pb
                            ao        a×b         Gb

                        f             f ×g             g
                                                 
                            co   pc   c×d    pd
                                                  Gd


     Observa¸˜es:
            co
       • f × g ´ unico j´ que a × b ´ um pr´-produto de c × d;
               e´       a           e      e
       • Dizemos que f × g ´ univocamente induzido por f e
                           e
         g;
       • Exemplo em Set: Definimos
         (f × g)((x, y)) = (f (x), g(y)) tal que x ∈ A e y ∈ B.
15   PRODUTO E COPRODUTO CATEGORIAL                            90




       • Uma categoria C ´ cartesiana (C ´ CC) se e somente
                         e               e
         se:
         1. Cont´m um objeto terminal t;
                e
         2. Todo par a, b ∈ ObC tem um produto categorial
            (a × b, pa,b,1 : a × b → a, pa,b,2 : a × b → b);
       • Exemplos: Set, Top e Grp;
       • Uma categoria cartesiana interessante em teoria da
         computabilidade ´ a categoria EN dos conjuntos
                         e
         enumer´veis;
               a
15   PRODUTO E COPRODUTO CATEGORIAL                          91




       • Objetos de EN s˜o pares a = (a, ea ), onde a ´ um
                         a                            e
         conjunto cont´vel e ea : N → a ´ um mapeamento
                      a                 e
         dos elementos de a (uma enumera¸˜o de a);
                                           ca
       • f ∈ EN[a, b] se e somente se, para alguma fun¸ao
                                                       c˜
         (total) recursiva f , o seguinte diagrama comuta:
                                      f
                               N          GN

                             ea                eb
                                          
                                  a       Gb
                                      f


       • Dizemos que f representa f ;
15   PRODUTO E COPRODUTO CATEGORIAL                          92




       • O produto pode ser facilmente obtido por qualquer
         bije¸˜o efetiva [, ] : N × N → N;
             ca
       • Um conjunto enumer´vel de interesse ´
                             a                e
         PR = (PR, φ), das fun¸˜es parciais recursivas com
                               co
         n´meros de G¨del φ : N → PR, e EN[PR, PR] s˜o
          u           o                                  a
         exatamente os funcionais recursivos de segunda
         ordem.
15   PRODUTO E COPRODUTO CATEGORIAL                               93




     Sejam C uma categoria e a, b ∈ ObC . O coproduto de a e b
     ´ um objeto a + b junto com dois morfismos
     e
     qa : a → a + b e qb : b → a + b tal que, dado um c ∈ ObC ,
     para qualquer f ∈ C[a, b] e g ∈ C[b, c], existe exatamente
     um h ∈ C[a + b, c] tal que o seguinte diagrama comuta:

                                       c
                                    y` y ˜iii
                               f yyy           iig
                                y                ii
                              yy         h
                                                   ii
                            yy    G          o
                        a      qa   a+b       qb        b
15   PRODUTO E COPRODUTO CATEGORIAL                          94




     Observa¸˜es:
            co
       • O coproduto ´ o conceito dual do produto;
                     e
       • No coproduto a + b, os morfismos qa e qb s˜o
                                                  a
         chamados de inclus˜es ;
                           o
       • Por dualidade, o coproduto ´ unico (a n˜o ser por
                                    e´          a
         isomorfismos);
       • Em Set o coproduto ´ a uni˜o disjunta.
                            e      a
16    ´
     CALCULO LAMBDA                                           95




     16     C´lculo Lambda
             a
       • Simplifica e flexibiliza a representa¸ao de fun¸oes;
                                            c˜        c˜
       • Facilita as opera¸oes de currying e uncurrying.
                          c˜
16    ´
     CALCULO LAMBDA                                         96




     Express˜o-λ (ou termo-λ):
            a
      1. Uma vari´vel ´ uma express˜o-λ;
                 a    e            a
      2. Se M ´ uma express˜o-λ e x ´ uma vari´vel, ent˜o
              e            a        e         a        a
         λxM ´ uma express˜o-lambda, interpretada como
              e            a
         “uma fun¸ao com argumento x”;
                 c˜
      3. Se F e A s˜o express˜es-λ, ent˜o (F A) ´ uma
                   a          o        a        e
         express˜o-λ, interpretada como “F aplicado ao
                a
         argumento A”;
      4. Nada mais ´ express˜o-λ.
                   e        a
16    ´
     CALCULO LAMBDA            97


     Exemplos:
               M
      1. λx x ;
           F

      2. ( λxx (yz));
                       A

               F           A
      3. (λx (xx) y );
                   M

      4. (λxx λxx );
           F           A

      5. λx λy(xy).
                   M
16    ´
     CALCULO LAMBDA                                             98




     Ocorrˆncia de vari´vel livre e limitada:
          e            a
       • Se uma ocorrˆncia de uma vari´vel x est´ no escopo
                       e               a         a
         de um λx, ent˜o sua ocorrˆncia ´ dita limitada, caso
                        a         e      e
         contr´rio ´ dita livre;
              a e
       • Exemplo:
                              (xλxλy(xy))
         Primeira ocorrˆncia de x ´ livre, a segunda ´
                       e          e                  e
         limitada.
16    ´
     CALCULO LAMBDA                                          99




     Substitui¸˜o uniforme:
              ca
       • M [x ← A] denota a substitui¸ao uniforme de todas
                                       c˜
         as ocorrˆncias livres de x por A;
                 e
       • Exemplo:

               (xλxλy(xy))[x ← λzz] = (λzzλxλy(xy))
16    ´
     CALCULO LAMBDA                           100




     Abstra¸˜o-λ M ⇒ λxM ;
           ca
     Aplica¸˜o-λ (λxM A) ⇒ M [x ← A].
           ca

                      (λxM A) ⇒ M [x ← A]
                       redex     contractum
16    ´
     CALCULO LAMBDA                                          101




       • Uma forma normal ´ uma express˜o-λ na qual n˜o se
                           e           a             a
         pode efetuar uma aplica¸ao-λ;
                                c˜
       • Uma sequˆncia de aplica¸oes-λ at´ a obten¸˜o de
                 e              c˜       e        ca
         uma forma normal ´ chamada de redu¸˜o.
                          e                   ca
16    ´
     CALCULO LAMBDA                                       102




     Exemplos de redu¸˜es:
                     co
      1. (λxxλxx) ⇒ λxx;
      2. ((λxλy(xy)λxx)x) ⇒ (λy(λxxy)x) ⇒ (λxxx) ⇒ x;
      3. (λx(xx)λx(xx)) ⇒ (λx(xx)λx(xx)) (irredut´
                                                 ıvel);
      4. (λxyz) ⇒ y (jogar fora alguma coisa).
16    ´
     CALCULO LAMBDA                                            103




     Currying:
       • Ocorre quando da aplica¸˜o de um termo-λ em que
                                ca
         existem menos argumentos que vari´veis limitadas;
                                          a

                        (λxλy(xy)z) ⇒ λy(zy)

       • Ou seja, f (x, y), fixando um x qualquer, resulta em
         uma fun¸ao de y.
                 c˜
16    ´
     CALCULO LAMBDA                                 104




     Representando aritm´tica:
                        e
                      if A then B else C

                           T ≡ λxλyx

              ((T a)b) ≡ ((λxλyxa)b) ⇒ (λyab) ⇒ a
                           F ≡ λxλyy
              ((F a)b) ≡ ((λxλyya)b) ⇒ (λyyb) ⇒ b
     Observa¸˜o: T e F s˜o abreviaturas.
            ca          a
16    ´
     CALCULO LAMBDA                                            105




     Podemos usar F e T como seletores de elementos de
     listas (if-then-else aninhados):
       • T ≡ λxλyx (primeiro elemento da lista);
       • F T ≡ λxλy(yλxλyx) ≡ λxλy(yT ) (segundo elemento
         da lista);
       • F 2 T ≡ λxλy(yλxλy(yλxλyx)) ≡ λxλy(yF T )
         (terceiro elemento da lista);
       • F i+1 T ≡ λxλy(yF i T ) (o (i + 2)-´simo elemento).
                                            e
16    ´
     CALCULO LAMBDA                                                106




                              φ0 , φ1 , . . . , φn−1

       • φ0 ≡ λx((xφ0 )ψ) (ψ ´ o terminador de lista);
                             e
       • φ0 , φ1 ≡ λx((xφ0 )λx((xφ1 )ψ)) ≡ λx((xφ0 ) φ1 );
       • φ0 , φ1 , . . . , φn−1 ≡ λx((xφ0 ) φ1 , . . . , φn−1 ).
16    ´
     CALCULO LAMBDA                                      107




     Obtendo o primeiro elemento de uma lista:

       ( φ0 T ) ≡ (λx((xφ0 )ψ)λxλyx) ⇒ ((λxλyxφ0 )ψ) ⇒
                      ⇒ (λyφ0 ψ) ⇒ φ0
16    ´
     CALCULO LAMBDA                                           108



     Obtendo o segundo elemento de uma lista:

        ( φ0 , φ 1 , φ 2 F T ) ≡
         ≡ (λx((xφ0 )λx((xφ1 )λx((xφ2 )ψ))) λxλy(yλxλyx)) ⇒

         ⇒ ((λxλy(yλxλyx) φ0 )λx((xφ1 )λx((xφ2 )ψ))) ⇒
         ⇒ (λy(yλxλyx) λx((xφ1 )λx((xφ2 )ψ))) ⇒

         ⇒ (λx((xφ1 )λx((xφ2 )ψ)) λxλyx) ⇒
         ⇒ ((λxλyx φ1 )λx((xφ2 )ψ)) ⇒
         ⇒ (λyφ1 λx((xφ2 )ψ)) ⇒ φ1
16    ´
     CALCULO LAMBDA                                                109




     Representando n´meros: 0 ≡ T , 1 ≡ F T , 2 ≡ F F T , . . .,
                    u
     i ≡ F iT .
16    ´
     CALCULO LAMBDA                                 110




                      suc ≡ λzλxλy(yz)

              (suc1) ≡ (λzλxλy(yz)λxλy(yλxλyx)) ⇒
              λxλy(y λxλy(y λxλyx) ≡ F F T ≡ 2
                               T

                          FT
16    ´
     CALCULO LAMBDA                                           111




     Observa¸˜es:
            co
       • Esta defini¸ao conduz a possibilidade de definir
                   c˜
         soma, subtra¸ao, multiplica¸ao, etc.
                     c˜             c˜
       • Neste caso, podemos definir abreviaturas para +, −,
         ×, etc.
       • Assim, ocorre equivalˆncia entre o c´lculo-λ e a
                              e              a
         m´quina de Turing (fun¸˜es parciais recursivas).
          a                     co
16    ´
     CALCULO LAMBDA                                           112




     C´lculo-λ tipado:
      a
       • Cada vari´vel tem um tipo associado e a constru¸ao
                  a                                     c˜
         dos termos obedece a certas “regras de tipagem”;
       • Motiva¸ao: Paradoxo de Russel (teoria dos
               c˜
         conjuntos) e tipos de linguagens de programa¸ao.
                                                     c˜
16    ´
     CALCULO LAMBDA                                    113




     Tipos e construtores de termos:
     Tipos atˆmicos A, B, C, . . .;
             o
     Tipos n˜o-atˆmicos
            a    o
         • se α e β s˜o tipos, ent˜o α → β ´ um tipo
                     a            a        e
           (funcional);
         • se α e β s˜o tipos, ent˜o α × β ´ um tipo
                     a            a        e
           (produto cartesiano, record);
16    ´
     CALCULO LAMBDA                                              114




     Termos
         • se x ´ vari´vel do tipo ψ, ent˜o x : ψ ´ um termo
                e     a                  a        e
           do tipo ψ;
         • se x ´ vari´vel do tipo ψ e t ´ termo do tipo φ,
                e     a                  e
           ent˜o λxt : ψ → φ ´ um termo do tipo ψ → φ;
              a                e
         • se t1 e t2 s˜o termos do tipo ψ → φ e ψ
                       a
           respectivamente, ent˜o App(t1 , t2 ) : φ ´ um termo
                                a                   e
           do tipo φ (aplica¸ao);
                             c˜
16    ´
     CALCULO LAMBDA                                           115




         • se t1 e t2 s˜o termos do tipo ψ e φ
                       a
           respectivamente, ent˜o (t1 , t2 ) : ψ × φ ´ um
                                a                    e
           termo do tipo ψ × φ (produto cartesiano);
         • se t : ψ × φ ´ um termo do tipo ψ × φ, ent˜o
                         e                               a
           π1 (t) : ψ e π2 (t) : φ s˜o termos do tipo ψ e φ
                                    a
           respectivamente (proje¸oes).
                                      c˜
16    ´
     CALCULO LAMBDA                                      116




     Redu¸oes no c´lculo-λ tipado:
         c˜       a

                      π1 ((t1 , t2 )) : ψ ⇒ t1 : ψ

                      π2 ((t1 , t2 )) : φ ⇒ t2 : φ
                App(λxt1 , t2 ) : φ ⇒ t1 [x ← t2 ] : φ
16    ´
     CALCULO LAMBDA                                             117




     Observa¸˜es:
            co
       • O c´lculo-λ tipado corresponde `s fun¸oes (totais)
             a                           a      c˜
         recursivas, pois a introdu¸˜o dos tipos impede que a
                                   ca
         fun¸˜o fique indefinida (n˜o h´ loop infinito);
            ca                     a a
       • Ao representar o c´lculo-λ tipado em Teoria das
                           a
         Categorias:
          – Tipos s˜o objetos de uma categoria C;
                   a
          – Termos s˜o morfismos;
                    a
          – Problema: como representar a aplica¸ao-λ?
                                               c˜
            Resposta: objeto exponencial.
17   OBJETO EXPONENCIAL                                      118




     17     Objeto Exponencial
       • A conex˜o entre Teoria das Categorias e Teoria da
                 a
         Computabilidade, como “teorias de fun¸oes”, exige
                                               c˜
         interpretar fun¸˜es como morfismos, identificando
                        co
         tipos como A × B → C e A → (B → C) (currying e
         uncurrying);
       • O produto n˜o ´ suficiente para isto;
                    a e
       • Precisamos ent˜o representar fun¸˜es de mais alta
                       a                 co
         ordem (funcionais), como “morfismos entre
         morfismos”, mas isto n˜o ´ poss´
                               a e      ıvel;
17   OBJETO EXPONENCIAL                                            119




     Sejam C uma categoria cartesiana, e a, b ∈ ObC . O objeto
     exponencial de a e b ´ ba junto com o morfismo
                           e
     evala,b : ba × a → b (mapeamento de avalia¸ao), e para
                                               c˜
     cada objeto c uma opera¸ao Λc : C[c × a, b] → C[c, ba ] tal
                              c˜
     que, para todos os morfismosf : c × a → b e h : c → ba , as
     seguintes equa¸oes valem:
                      c˜
      1. evala,b ◦ (Λc (f ) × ida ) = f ;
      2. Λc (evala,b ◦ (h × ida )) = h.
17   OBJETO EXPONENCIAL                                         120




     Os conceitos centrais da defini¸ao s˜o:
                                   c˜ a
     Currying/Uncurrying f : c × a → b intercambiado
        com h : c → ba , onde ba ´ o espa¸o de fun¸oes a → b;
                                 e       c        c˜
     Existˆncia de eval evala,b : ba × a → b equivale a
          e
        avaliar f (x), onde f : a → b e x ∈ a.
17   OBJETO EXPONENCIAL                                          121



     Observa¸˜es:
            co
       • Λ : C[c × a, b] → C[c, ba ] ´ uma bije¸˜o;
                                     e         ca
       • Λ−1 : C[c, ba ] → C[c × a, b] ´ tal que
                                       e
         Λ−1 : h → evala,b ◦ (h × ida );
       • Se Λ : C[c × a, b] → C[c, ba ] ´ uma bije¸ao e (1) da
                                        e         c˜
         defini¸˜o vale, ent˜o (2) ´ necessariamente
              ca            a       e
         verdadeiro;
       • Seja h ∈ C[c, ba ] e tomemos f ∈ C[c × a, b] tal que
         h = Λ(f ), ent˜o Λ(evala,b ◦ (h × ida )) =
                        a
         Λ(evala,b ◦ (Λ(f ) × ida )) = Λ(f ) = h.
17   OBJETO EXPONENCIAL                                         122




     Defini¸ao alternativa: Sejam C uma categoria cartesiana
            c˜
     e a, b ∈ ObC . O objeto exponencial de a para b ´ um
                                                     e
     objeto ba junto com um morfismo evala,b : ba × a → b, tal
     que para todos os morfismos f : c × a → b, existe um e
     somente um h : c → ba tal que o seguinte diagrama
     comuta:
                                         f
                          c     c×a           G` b
                                             y
                                          yyy
                      h       h×id     yyy
                                   yy evala,b
                       ba      ba × a
17   OBJETO EXPONENCIAL                                       123




     Observa¸˜es:
            co
       • A defini¸ao de objeto exponencial sugere que ba
                 c˜
         “representa” C[a, b];
       • C[t, ba ] ∼ C[t × a, b] ∼ C[a, b];
                   =             =
       • Em Set, podemos dizer que a cardinalidade de B A ´
                                                          e
         mn , onde m ´ a cardinalidade de B e n ´ a
                     e                          e
         cardinalidade de A. Por exemplo, se A = ∅ ent˜o
                                                      a
         n = 0 e mn = 1. O que resulta no morfismo unico h
                                                    ´
                 h G A
         em C       B , j´ que, neste caso, B A ´ objeto
                         a                      e
         terminal;
17   OBJETO EXPONENCIAL                                      124




       • Em Set o objeto exponencial de A e B ´ o conjunto
                                               e
         das f tal que f ´ fun¸˜o de A para B;
                         e    ca
       • B A = Set[A, B];
       • eval : B A × A → B ´ dado pela regra
                               e
         eval((f, x)) = f (x);
       • Λ : Set[C × A, B] → Set[C, B A ] leva cada fun¸ao
                                                        c˜
         f : C × A → B na fun¸ao Λ(f ) : C → B A definida
                                 c˜
         por Λ(f )(c) = λaf (c, a), onde
         λaf (c, a) ∈ B A = Set[A, B] ´ a fun¸˜o que leva
                                       e     ca
         a ∈ A para f (c, a) ∈ B;
17   OBJETO EXPONENCIAL                                          125




       • Observe-se que se a  b via (i, j) ent˜o a retra¸ao ´
                                               a         c˜ e
         um sub-objeto de b;
       • Podemos estar interessados em categorias em que
         vale aa  a, mas isto ´ imposs´ em Set pelo
                               e       ıvel
         Teorema de Cantor, j´ que a cardinalidade de aa ´
                               a                         e
         maior que a de a, desde que a = {∗}.
17   OBJETO EXPONENCIAL                                          126




     Rela¸ao com Teoria da Computabilidade:
         c˜
       • Seja {φi }i∈N = PR uma enumera¸˜o de G¨del
                                           ca       o
         aceit´vel das fun¸˜es parciais recursivas. Ou seja,
              a            co
         dada uma fun¸ao parcial recursiva f qualquer, ent˜o
                        c˜                                   a
         existe um i tal que φi = f ;
       • Seja [, ] : N × N → N uma bije¸ao efetiva;
                                       c˜
       • Defina f : N × N → N uma fun¸˜o bin´ria parcial
                                        ca a
         recursiva se e somente se
         ∃f ∈ PR f (x, y) = f ([x, y]);
17   OBJETO EXPONENCIAL                                           127



       • Assim, f ´ parcial recursiva se e somente se
                  e
         ∃s ∈ PR φs(x) (y) = f (x, y). Ent˜o, f ´ comput´vel se
                                          a     e       a
         e somente se cada argumento e a fun¸ao x → f (x, )
                                               c˜
         ´ comput´vel;
         e        a
       • Isto significa que computacionalmente f est´ em
                                                   a
         N × N → N se e somente se x → f (x, ) est´ em
                                                  a
         N → (N → N);
       • Similarmente, na categoria cartesiana C vamos supor,
         para qualquer f : c × a → b, a existˆncia de um
                                             e
         morfismo que faz o mesmo que s em x → f (x, ) na
         teoria da recurs˜o. Este morfismo ´ o h.
                         a                  e
17   OBJETO EXPONENCIAL                                           128




     C ´ uma categoria cartesiana fechada (CCC) se e somente
       e
     se:
      1. C ´ cartesiana;
           e
      2. Para cada par a, b ∈ ObC existe um exponencial.
       • Exemplo: Set;
       • Contra-exemplo: EN. Basta ver que EN[N, N] = R,
         onde R s˜o as fun¸˜es (totais) recursivas. Ent˜o, eval
                   a       co                          a
         seria a fun¸ao universal para R, o que ´ um absurdo.
                     c˜                         e
17   OBJETO EXPONENCIAL                                129




     Teorema 5 Seja C uma CCC, ent˜o ab×c ∼ (ab )c .
                                  a       =
17   OBJETO EXPONENCIAL                                                   130


     Teorema 6 Seja C uma CCC. Se a  a via
     (ina : a → a , outa : a → a) e b  b via
     (inb : b → b , outb : b → b), ent˜o ba  b a via
                                         a
     (Λ(inb ◦ eval ◦ (id × outa )) : ba →
     b a , Λ(outb ◦ eval ◦ (id × ina )) : b a → ba ).
     Prova:

      Λ(outb ◦ eval ◦ (id × ina )) ◦ Λ(inb ◦ eval ◦ (id × outa )) =

     Λ(outb ◦ eval ◦ (id × ina ) ◦ Λ(inb ◦ eval ◦ (id × outa )) × id) =
     Λ(outb ◦ eval ◦ Λ(inb ◦ eval ◦ (id × outa )) × id ◦ (id × ina )) =
           Λ(outb ◦ (inb ◦ eval ◦ id × outa ) ◦ (id × ina )) =
         Λ(eval ◦ id × (outa ◦ ina )) = Λ(eval ◦ id × id) = id
17   OBJETO EXPONENCIAL                                 131




     Seja C uma CCC. Um objeto V de C ´ reflexivo se e
                                      e
     somente se V V  V .
17   OBJETO EXPONENCIAL                                          132




     Teorema 7 Sejam C uma CCC e V um objeto reflexivo.
     Ent˜o t  V e V × V  V .
        a
     Prova: Seja (in : V V → V, out : V → V V ) o par de
     retra¸˜o entre V e V V . Para provar t  V basta provar a
           ca
     existˆncia de um morfismo de t para V . Seja
           e
     p1 : t × V → V uma proje¸˜o, ent˜o Λ(p1 ) : t → V V e
                               ca       a
     in ◦ Λ(p1 ) : t → V .
     Para provar V × V  V devemos provar V × V  V V e
     V × V  V segue por composi¸˜o (prova completa
                                ca
     mostrada no livro).
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA         133




     18     Equalizador, Produto Fibrado
            e Soma Amalgamada
       • Sejam f, g : A → B um par de fun¸oes “paralelas”
                                         c˜
         em Set. O subconjunto E ⊆ A no qual f e g
         coincidem ´ chamado equalizador de f e g;
                    e
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA            134




       • Na linguagem de categorias, E deve ser representado
         por um sub-objeto, como uma seta mono i : E → A e
         i deve satisfazer f ◦ i = g ◦ i;
                  E                A             B
                                         f
                        i




                                          g
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA              135




       • Para garantir que i represente o sub-objeto
         “maximal” devemos adicionalmente exigir que se
         h : C → A ´ outra fun¸ao tal que f ◦ h = g ◦ h, ent˜o
                    e           c˜                          a
         h “fatora” de forma unica por meio de i, ou seja,
                              ´
         existe apenas um k : C → E tal que h = i ◦ k.
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA   136

                    E               A         B
                                        f
                            i




                                        g




                k
                                h




                        C
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA                137




     Dado um par de morfismos f, g ∈ C[a, b], um equalizador
     de f e g ´ um par (e, i), e ∈ ObC e i ∈ C[e, a] tal que:
              e
      1. f ◦ i = g ◦ i;
      2. Para todo h ∈ C[c, a], f ◦ h = g ◦ h implica que existe
         um unico k ∈ C[c, e] tal que i ◦ k = h.
            ´
                                           f
                                  i   Ga       G
                             e
                             y        c            Gb
                                   ÐÐÐ     g
                            k   ÐÐÐ
                              ÐÐ h
                             c

     Observa¸˜o: Chamamos h de pr´-equalizador.
            ca                   e
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA             138




     O conceito dual de equalizador ´ o co-equalizador (basta
                                    e
     inverter as setas).
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA                      139



     Teorema 8 Todo equalizador ´ mono.
                                e
     Prova: Seja i : e → a um equalizador de f, g : a → b.
     Assim, f ◦ i = g ◦ i. Sejam j, l : c → e tal que i ◦ j = i ◦ l
     (hip´tese). Desde que
          o
     f ◦ (i ◦ j) = (f ◦ i) ◦ j = (g ◦ i) ◦ j = g ◦ (i ◦ j) ent˜o i ◦ j
                                                              a
     ´ um pr´-equalizador de f e g e existe um unico k : c → e
     e        e                                       ´
     tal que i ◦ j = i ◦ k. Assim, j = k = l.
                                           f
                                  i   Ga       G
                             e
                             y                 Gb
                                    ÐÐc    g
                            k    ÐÐÐ
                              ÐÐÐ i◦j
                             c
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA                 140



     Teorema 9 Todo equalizador epi ´ iso.
                                    e
     Prova: Seja i : e → a um equalizador de f, g : a → b.
     Como i ´ epi e f ◦ i = g ◦ i, ent˜o f = g. Logo, a
               e                          a
     identidade ida equaliza f e g (´ um pr´-equalizador) e
                                        e      e
     existe um unico k : a → e tal que ida = i ◦ k. Al´m disto,
                 ´                                       e
     i ◦ k ◦ i = ida ◦ i = i = i ◦ ide e desde que i ´ mono (pelo
                                                     e
     Teorema 8) ent˜o k ◦ i = ide .
                       a

                            e    i    G a f =g G b
                            y          c
                                   ÐÐÐ
                          k     ÐÐÐ
                              ÐÐ ida
                           a
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA           141




       • Queremos generalizar os equalizadores para
         morfismos com diferentes origens;
       • Este conceito se chama produto fibrado (pullback );
       • O produto fibrado ´ uma das no¸˜es mais poderosas
                           e          co
         de Teoria das Categorias.
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA                 142




     Dadas duas setas f : b → a e g : c → a com destino
     comum a, o produto fibrado de (f, g) ´ um objeto b ×a c e
                                            e
     duas setas p : b ×a c → b e q : b ×a c → c tal que:
      1. f ◦ p = g ◦ q, onde f ◦ p, g ◦ q : b ×a c → a;
      2. Para qualquer outra tripla (d, h : d → b, k : d → c) tal
         que g ◦ k = f ◦ h, existe uma unica seta
                                        ´
          h, k a : d → b ×a c tal que p◦  h, k a = h e
         q◦  h, k a = k.
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA           143




                      d ii
                         ii              k
                            i
                        h,ka
                             ii4
                                                 6G
                              b ×a c         q        c
                         h
                                         p                g
                                   0        f    
                                    b            Ga
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA        144




     Observa¸˜es:
            co
       • O “quadrado” de baixo ´ chamado de “quadrado do
                                e
         produto fibrado” (“pullback square”);
       • Note a semelhan¸a entre o produto fibrado e o
                        c
         produto;
       • Na verdade, o produto ´ um caso particular de
                               e
         produto fibrado;
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA              145




       • Observe que os subscritos “a” indicam dependˆncia
                                                        e
         de b ×a c e  h, k a sobre f e g, mas os subscritos
         n˜o s˜o opcionais pois a nota¸˜o deve indicar quando
          a a                          ca
         se trata de um produto fibrado;
       • Exemplo de produto fibrado em Set: o produto
         fibrado de (f : B → A, g : C → A) ´   e
         ({(x, y)|x ∈ B, y ∈ C, f (x) = g(y)}, p1 , p2 ), onde
         p1 ((x, y)) = x e p2 ((x, y)) = y.
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA   146




     O conceito dual de produto fibrado ´ a soma
                                       e
     amalgamada (pushout).
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA                147




     Teorema 10 Seja C uma categoria com objeto terminal
     t. Se C tem produtos fibrados para todo par de setas,
     ent˜o C tamb´m tem produtos para todo par de objetos.
        a         e
     Prova: (esbo¸o) Dados a, b ∈ C, seja
                    c
     (a × b, p1 : a × b → a, p2 : a × b → b) um produto fibrado
                                  ´ a
     de (!a : a → t, !b : b → t). E f´cil verificar que este ´ um
                                                            e
     produto.
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA                   148



     Teorema 11 Se uma categoria C tem produtos fibrados
     para todo par de setas e tem objeto terminal, ent˜o tem
                                                      a
     um equalizador para todo par de setas.
     Prova: Sejam f, g : a → b. Seja
     (c, fst : c → a, snd : c → a) um produto fibrado de
     ( f, ida : a → b × a,  g, ida : a → b × a). Ent˜o o a
     equalizador de f, g ´ (c, fst = snd). Pois,
                           e
     f ◦ fst = p1 ◦  f ◦ fst, fst = p1 ◦  f, ida  ◦fst = p1 ◦ 
     g, ida  ◦snd = p1 ◦  g ◦ snd, snd = g ◦ snd. Al´m disto,
                                                           e
     para qualquer (c , h : c → a) tal que f ◦ h = g ◦ h, tamb´m e
      f, ida  ◦h = g, ida  ◦h, e por defini¸˜o de produto
                                                   ca
     fibrado, existe um unico k : c → c tal que fst ◦ k = h.
                          ´
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA           149


     Lema 1 (Lema do Produto Fibrado - Pullback Lemma -
     PBL) Se um diagrama da forma:

                         ◦     G◦     G◦

                                      
                         ◦     G◦     G◦

     comuta, ent˜o:
                a
      1. Se os dois quadrados menores s˜o produtos fibrados,
                                       a
         ent˜o o retˆngulo externo ´ um produto fibrado;
            a       a              e
      2. Se o retˆngulo externo e o quadrado a direita s˜o
                 a                                      a
         produtos fibrados, ent˜o o quadrado a esquerda ´ um
                              a                          e
         produto fibrado.
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA     150




     Teorema 12 Se o quadrado:

                         b ×a c         Gc
                                    q
                                p            g
                                   f    
                           b            Ga

     ´ um produto fibrado e g ´ mono, ent˜o p tamb´m ´
     e                       e          a        e e
     mono.
18   EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA               151


     Observa¸˜es:
            co
       • Esta ultima propriedade sugere uma generaliza¸ao de
              ´                                       c˜
         uma constru¸ao conjunto-teor´tica;
                     c˜               e
       • Se f : A → B ´ uma fun¸ao e C ⊆ B, ent˜o a
                        e          c˜              a
         imagem inversa de C sob f , denotada por f −1 (C) ´ o
                                                            e
         subconjunto de A definido como
                                          ´ a
         f −1 (C) = {x|x ∈ A, f (x) ∈ C}. E f´cil mostrar que o
         diagrama:
                                               f∗
                            f   −1
                                         (C)        GC

                                         in              in
                                              f     
                            A        GB

         ´ um quadrado de produto fibrado em Set.
         e
19   MORFISMOS PARCIAIS                                        152




     19     Morfismos Parciais
       • Aplicar Teoria das Categorias no contexto de Teoria
         da Computabilidade;
       • Neste contexto, a no¸˜o de parcialidade aparece
                             ca
         naturalmente pois programas de computador podem
         eventualmente n˜o terminar;
                         a
19   MORFISMOS PARCIAIS                                       153




       • Uma fun¸ao parcial f : A → B com campo de
                  c˜
         defini¸˜o D ⊆ A pode ser representada por um par
              ca
         de fun¸oes totais (i : D → A, h : D → B), onde i ´
               c˜                                         e
         uma inje¸ao e h ´ a restri¸ao de f para D.
                  c˜      e        c˜
19   MORFISMOS PARCIAIS                                       154




     Dados uma categoria C e dois objetos a e b, um
     mapeamento parcial [m, h] : a → b ´ uma classe de
                                         e
     equivalˆncia de pares (m : d → a, h : d → b), onde m ´
            e                                             e
     mono, com respeito a seguinte rela¸ao R:
                                         c˜
     (m : d → a, h : d → b)R(m : d → a, h : d → b) se e
     somente se existir k : d → d, k iso, m = m ◦ k e
     h = h ◦ k.
19   MORFISMOS PARCIAIS                                      155




       • Desejamos definir a categoria pC, de mapeamentos
         parciais sobre C;
       • Um problema ´ definir as composi¸oes;
                     e                  c˜
       • Se C tem produtos fibrados para todo par de setas,
         podemos resolver o problema;
19   MORFISMOS PARCIAIS                                           156


       • Dados (n : e → b, k : e → c) e (m : d → a, h : d → b);
       • Defina [n, k] ◦ [m, h] : a → c a classe de equivalˆncia
                                                          e
         determinada pelos lados mais externos do seguinte
         diagrama, ou seja,
         (m ◦ n : d ×b e → a, k ◦ h : d ×b e → c), onde o
         quadrado ´ um produto fibrado:
                   e
                                   h   Ge       k   Gc
                          d ×b e
                           n                n
                                       
                               d       Gb
                                   h
                           m
                               
                               a
       • Pelo Teorema 12, como n ´ mono, n tamb´m o ´.
                                 e             e    e
19   MORFISMOS PARCIAIS                                       157




     Exemplo em Set:
       • Supomos D ⊆ A e E ⊆ B e tomamos m : D → A e
         n : E → B como as inje¸oes canˆnicas;
                               c˜      o
       • Ent˜o, D ×B E = {(x, y)|x ∈ D, y ∈ E, h(x) =
             a
         n(y)} = {(x, y)|x ∈ D, y ∈ E, h(x) = y} ∼ {x|x ∈
                                                 =
         D, h(x) ∈ E}, ou seja, o campo de defini¸ao da
                                                 c˜
         fun¸˜o composta;
            ca
       • Concluimos que, para todo x ∈ {x|x ∈ D, h(x) ∈ E},
         temos k(h (x)) = k(h(x)), como era necess´rio.
                                                  a
19   MORFISMOS PARCIAIS                                  158




     Toda seta f ∈ C[a, b] tem naturalmente uma seta
     associada em pC, isto ´, (id : a → a, f : a → b).
                            e
20                        ¸˜
     FUNTORES E TRANSFORMACOES NATURAIS   159




     20     Funtores e Transforma¸oes
                                 c˜
            Naturais

Mais conteúdo relacionado

Mais procurados

Nbr 6120 cargas para o cálculo de estruturas de edificações
Nbr 6120   cargas para o cálculo de estruturas de edificaçõesNbr 6120   cargas para o cálculo de estruturas de edificações
Nbr 6120 cargas para o cálculo de estruturas de edificaçõesmjmcreatore
 
Representar os numeros reais na recta graduada
Representar os numeros reais na recta graduadaRepresentar os numeros reais na recta graduada
Representar os numeros reais na recta graduadaJeremias Manhica
 
Energia potencial gravitacional.pptx
Energia potencial gravitacional.pptxEnergia potencial gravitacional.pptx
Energia potencial gravitacional.pptxISAIASDONASCIMENTOSI
 
400 questões de física resolvidas e comentadas
400 questões de física resolvidas e comentadas400 questões de física resolvidas e comentadas
400 questões de física resolvidas e comentadasLuizHenriqueFerreira46
 
Reações de Apoio em Estruturas
Reações de Apoio em EstruturasReações de Apoio em Estruturas
Reações de Apoio em Estruturascamilapasta
 
Sistema métrico Decimal
Sistema métrico Decimal Sistema métrico Decimal
Sistema métrico Decimal Raimund M Souza
 
Exercícios de aplicação sobre momento de uma força e alavanca
Exercícios de aplicação sobre momento de uma força e alavancaExercícios de aplicação sobre momento de uma força e alavanca
Exercícios de aplicação sobre momento de uma força e alavancawilkerfilipel
 
21655210 exercicios-de-dinamica
21655210 exercicios-de-dinamica21655210 exercicios-de-dinamica
21655210 exercicios-de-dinamicaafpinto
 
Diagrama de fases e equilibrio
Diagrama de fases e equilibrioDiagrama de fases e equilibrio
Diagrama de fases e equilibrioLukasSeize
 
Potenciação com números naturais
Potenciação com números naturaisPotenciação com números naturais
Potenciação com números naturaisClaudia Zandonai
 
HERANÇA - Programação Orientada a Objetos JAVA
HERANÇA - Programação Orientada a Objetos JAVAHERANÇA - Programação Orientada a Objetos JAVA
HERANÇA - Programação Orientada a Objetos JAVAAparicio Junior
 
Apostila de Banco de Dados
Apostila de Banco de Dados Apostila de Banco de Dados
Apostila de Banco de Dados info_cimol
 
Noções de resistências dos materiais: esforços axiais e transversais
Noções de resistências dos materiais: esforços axiais e transversaisNoções de resistências dos materiais: esforços axiais e transversais
Noções de resistências dos materiais: esforços axiais e transversaisSamanta Lacerda
 
Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)Armando Daniel
 

Mais procurados (20)

Aula 4 vetores
Aula 4  vetoresAula 4  vetores
Aula 4 vetores
 
Nbr 6120 cargas para o cálculo de estruturas de edificações
Nbr 6120   cargas para o cálculo de estruturas de edificaçõesNbr 6120   cargas para o cálculo de estruturas de edificações
Nbr 6120 cargas para o cálculo de estruturas de edificações
 
Representar os numeros reais na recta graduada
Representar os numeros reais na recta graduadaRepresentar os numeros reais na recta graduada
Representar os numeros reais na recta graduada
 
Energia potencial gravitacional.pptx
Energia potencial gravitacional.pptxEnergia potencial gravitacional.pptx
Energia potencial gravitacional.pptx
 
Apostila de isostática
Apostila de isostáticaApostila de isostática
Apostila de isostática
 
400 questões de física resolvidas e comentadas
400 questões de física resolvidas e comentadas400 questões de física resolvidas e comentadas
400 questões de física resolvidas e comentadas
 
Reações de Apoio em Estruturas
Reações de Apoio em EstruturasReações de Apoio em Estruturas
Reações de Apoio em Estruturas
 
Geo jeca plana
Geo jeca planaGeo jeca plana
Geo jeca plana
 
Sistema métrico Decimal
Sistema métrico Decimal Sistema métrico Decimal
Sistema métrico Decimal
 
Exercícios de aplicação sobre momento de uma força e alavanca
Exercícios de aplicação sobre momento de uma força e alavancaExercícios de aplicação sobre momento de uma força e alavanca
Exercícios de aplicação sobre momento de uma força e alavanca
 
21655210 exercicios-de-dinamica
21655210 exercicios-de-dinamica21655210 exercicios-de-dinamica
21655210 exercicios-de-dinamica
 
Diagrama de fases e equilibrio
Diagrama de fases e equilibrioDiagrama de fases e equilibrio
Diagrama de fases e equilibrio
 
Potenciação com números naturais
Potenciação com números naturaisPotenciação com números naturais
Potenciação com números naturais
 
Slide conjuntos
Slide conjuntosSlide conjuntos
Slide conjuntos
 
HERANÇA - Programação Orientada a Objetos JAVA
HERANÇA - Programação Orientada a Objetos JAVAHERANÇA - Programação Orientada a Objetos JAVA
HERANÇA - Programação Orientada a Objetos JAVA
 
Matemática I - Tópico 04: Equações do 1º e 2º graus e Inequações
Matemática I - Tópico 04: Equações do 1º e 2º graus e InequaçõesMatemática I - Tópico 04: Equações do 1º e 2º graus e Inequações
Matemática I - Tópico 04: Equações do 1º e 2º graus e Inequações
 
Física1 09
Física1 09Física1 09
Física1 09
 
Apostila de Banco de Dados
Apostila de Banco de Dados Apostila de Banco de Dados
Apostila de Banco de Dados
 
Noções de resistências dos materiais: esforços axiais e transversais
Noções de resistências dos materiais: esforços axiais e transversaisNoções de resistências dos materiais: esforços axiais e transversais
Noções de resistências dos materiais: esforços axiais e transversais
 
Java orientação a objetos (associacao, composicao, agregacao)
Java   orientação a objetos (associacao, composicao, agregacao)Java   orientação a objetos (associacao, composicao, agregacao)
Java orientação a objetos (associacao, composicao, agregacao)
 

Mais de Carlos Campani

Técnicas de integração
Técnicas de integraçãoTécnicas de integração
Técnicas de integraçãoCarlos Campani
 
Lista de exercícios 3
Lista de exercícios 3Lista de exercícios 3
Lista de exercícios 3Carlos Campani
 
Lista de exercícios 2
Lista de exercícios 2Lista de exercícios 2
Lista de exercícios 2Carlos Campani
 
Aplicações da integração
Aplicações da integraçãoAplicações da integração
Aplicações da integraçãoCarlos Campani
 
Lista de exercícios 1
Lista de exercícios 1Lista de exercícios 1
Lista de exercícios 1Carlos Campani
 
ANÁLISE COMPLETA DE UMA FUNÇÃO
ANÁLISE COMPLETA DE UMA FUNÇÃOANÁLISE COMPLETA DE UMA FUNÇÃO
ANÁLISE COMPLETA DE UMA FUNÇÃOCarlos Campani
 
PROPRIEDADES DAS FUNÇÕES
PROPRIEDADES DAS FUNÇÕESPROPRIEDADES DAS FUNÇÕES
PROPRIEDADES DAS FUNÇÕESCarlos Campani
 
Funções, suas propriedades e gráfico
Funções, suas propriedades e gráficoFunções, suas propriedades e gráfico
Funções, suas propriedades e gráficoCarlos Campani
 
Solução de equações modulares
Solução de equações modularesSolução de equações modulares
Solução de equações modularesCarlos Campani
 
Equações polinomiais
Equações polinomiaisEquações polinomiais
Equações polinomiaisCarlos Campani
 
Instruções de Aprendiz
Instruções de AprendizInstruções de Aprendiz
Instruções de AprendizCarlos Campani
 
Álgebra básica, potenciação, notação científica, radiciação, polinômios, fato...
Álgebra básica, potenciação, notação científica, radiciação, polinômios, fato...Álgebra básica, potenciação, notação científica, radiciação, polinômios, fato...
Álgebra básica, potenciação, notação científica, radiciação, polinômios, fato...Carlos Campani
 

Mais de Carlos Campani (20)

Técnicas de integração
Técnicas de integraçãoTécnicas de integração
Técnicas de integração
 
Lista de exercícios 3
Lista de exercícios 3Lista de exercícios 3
Lista de exercícios 3
 
Lista de exercícios 2
Lista de exercícios 2Lista de exercícios 2
Lista de exercícios 2
 
Aplicações da integração
Aplicações da integraçãoAplicações da integração
Aplicações da integração
 
Lista de exercícios 1
Lista de exercícios 1Lista de exercícios 1
Lista de exercícios 1
 
Integral
IntegralIntegral
Integral
 
Semana 14
Semana 14 Semana 14
Semana 14
 
Semana 13
Semana 13 Semana 13
Semana 13
 
Semana 12
Semana 12Semana 12
Semana 12
 
Semana 11
Semana 11Semana 11
Semana 11
 
Semana 10
Semana 10 Semana 10
Semana 10
 
Semana 9
Semana 9 Semana 9
Semana 9
 
ANÁLISE COMPLETA DE UMA FUNÇÃO
ANÁLISE COMPLETA DE UMA FUNÇÃOANÁLISE COMPLETA DE UMA FUNÇÃO
ANÁLISE COMPLETA DE UMA FUNÇÃO
 
PROPRIEDADES DAS FUNÇÕES
PROPRIEDADES DAS FUNÇÕESPROPRIEDADES DAS FUNÇÕES
PROPRIEDADES DAS FUNÇÕES
 
Funções, suas propriedades e gráfico
Funções, suas propriedades e gráficoFunções, suas propriedades e gráfico
Funções, suas propriedades e gráfico
 
Solução de equações modulares
Solução de equações modularesSolução de equações modulares
Solução de equações modulares
 
Equações polinomiais
Equações polinomiaisEquações polinomiais
Equações polinomiais
 
PROVAS DE TEOREMAS
PROVAS DE TEOREMASPROVAS DE TEOREMAS
PROVAS DE TEOREMAS
 
Instruções de Aprendiz
Instruções de AprendizInstruções de Aprendiz
Instruções de Aprendiz
 
Álgebra básica, potenciação, notação científica, radiciação, polinômios, fato...
Álgebra básica, potenciação, notação científica, radiciação, polinômios, fato...Álgebra básica, potenciação, notação científica, radiciação, polinômios, fato...
Álgebra básica, potenciação, notação científica, radiciação, polinômios, fato...
 

Teoria das Categorias: Uma introdução

  • 1. 1 Teoria das Categorias: uma introdu¸˜o ca Prof. Carlos A. P. Campani 8 de mar¸o de 2006 c
  • 2. 2 Copyright c 2005 Carlos A. P. Campani. ´ E garantida a permiss˜o para copiar, distribuir e/ou a modificar este documento sob os termos da Licen¸a de c Documenta¸ao Livre GNU (GNU Free Documentation c˜ License), Vers˜o 1.2 ou qualquer vers˜o posterior a a publicada pela Free Software Foundation; sem Se¸oes c˜ Invariantes, Textos de Capa Frontal, e sem Textos de Quarta Capa. Uma c´pia da licen¸a ´ inclu´ na se¸ao o c e ıda c˜ intitulada “GNU Free Documentation License”. veja: http://www.ic.unicamp.br/~norton/fdl.html.
  • 3. 3 Bibliografia • ASPERTI, A. ; LONGO, G. Categories Types and Structures: an introduction to Category Theory for the working computer scientist. MIT Press, 1991. Dispon´ em: ftp://ftp.di.ens.fr/pub/users/ ıvel longo/CategTypesStructures/book.pdf. • MENEZES, P. ; HAEUSLER, E. Teoria das Categorias para Ciˆncia da Computa¸˜o. Editora e ca Sagra Luzzatto, 2001. • MAC LANE, S. Categories for the Working Mathematician, Springer-Verlag, 1971.
  • 4. 1 ¸˜ INTRODUCAO 4 1 Introdu¸˜o ca • Teoria das Categorias estuda “objetos” e “morfismos” entre eles; • Ela ´ uma generaliza¸ao da teoria dos conjuntos e e c˜ das fun¸oes: c˜ – Objetos = Conjuntos estruturados; – Morfismos = “fun¸˜es”; co
  • 5. 1 ¸˜ INTRODUCAO 5 • Fornece uma ferramenta para a descri¸˜o abstrata de ca problemas de matem´tica; a • Fornece um jarg˜o matem´tico e um ambiente a a matem´tico consistente e unificado para a a investiga¸ao em matem´tica; c˜ a
  • 6. 1 ¸˜ INTRODUCAO 6 Teoria das categorias P1 P2 Outra teoria E1 E2
  • 7. 1 ¸˜ INTRODUCAO 7 • A capacidade de generaliza¸ao, abstra¸˜o e unifica¸ao c˜ ca c˜ s˜o os principais m´ritos de Teoria das Categorias; a e • A relevˆncia de Teoria das Categorias para Ciˆncia a e da Computa¸ao ´ que Teoria da Computa¸ao, assim c˜ e c˜ como Teoria das Categorias, ´ uma “teoria das e fun¸˜es”; co • Fornece uma estrutura para o estudo de semˆntica de a linguagens de programa¸ao. c˜
  • 8. 2 ¸˜ DEFINICAO DE CATEGORIA 8 2 Defini¸˜o de Categoria ca • A unica opera¸ao b´sica de Teoria das Categorias ´ a ´ c˜ a e composi¸˜o; ca • Exige-se que a composi¸ao seja associativa e que c˜ exista uma identidade para todos os objetos;
  • 9. 2 ¸˜ DEFINICAO DE CATEGORIA 9 Uma categoria C ´: e 1. Uma cole¸ao ObC de objetos, denotados por c˜ a, b, . . . , A, B, . . .; 2. Uma cole¸ao MorC de morfismos (setas), denotadas c˜ por f, g, . . .; 3. As opera¸˜es dom e cod atribuindo para cada seta f co dois objetos, respectivamente dom´nio (origem) e ı codom´nio (destino) de f ; ı
  • 10. 2 ¸˜ DEFINICAO DE CATEGORIA 10 4. Uma opera¸˜o id associando a cada objeto b um ca morfismo idb (a identidade de b) tal que dom(idb ) = cod(idb ) = b; 5. Uma opera¸˜o ◦ (composi¸˜o) associando a cada par ca ca de setas f e g, com dom(f ) = cod(g) uma seta f ◦ g tal que dom(f ◦ g) = dom(g) e cod(f ◦ g) = cod(f ).
  • 11. 2 ¸˜ DEFINICAO DE CATEGORIA 11 Identidade e composi¸˜o devem satisfazer: ca Lei da identidade Para quaisquer setas f e g, tal que cod(f ) = dom(g) = b, idb ◦ f = f e g ◦ idb = g; Lei da associatividade Para quaisquer setas f , g e h, tal que dom(f ) = cod(g) e dom(g) = cod(h), (f ◦ g) ◦ h = f ◦ (g ◦ h).
  • 12. 2 ¸˜ DEFINICAO DE CATEGORIA 12 Nota¸ao: c˜ • f : a → b denota um morfismo com origem a e destino b; • Dados dois objetos a e b, o conjunto de todos os morfismos f tal que f : a → b ´ denotado por C[a, b]. e Assim, f ∈ C[a, b] significa que dom(f ) = a e cod(f ) = b.
  • 13. 2 ¸˜ DEFINICAO DE CATEGORIA 13 Observa¸˜o: Pela defini¸ao de categoria, todo objeto ca c˜ b ∈ ObC deve possuir uma identidade idb : b → b, e esta identidade ´ unica pois se existisse uma idb = idb ent˜o, e´ a pela lei da identidade, idb = idb ◦ idb = idb .
  • 14. 2 ¸˜ DEFINICAO DE CATEGORIA 14 • Um morfismo em que coincidem origem e destino ´ e chamado de endomorfismo; • Uma categoria C ´ pequena se ObC e MorC s˜o e a conjuntos. Caso contr´rio a categoria ´ dita grande. a e
  • 15. 3 DIAGRAMAS 15 3 Diagramas • Diagramas s˜o usados para representar equa¸˜es; a co • Permitem inferir novas equa¸oes a partir de outras j´ c˜ a conhecidas.
  • 16. 3 DIAGRAMAS 16 f a Gb Onde: a, b – objetos; f : a → b – morfismo.
  • 17. 3 DIAGRAMAS 17 Exemplo: Sejam os morfismos f : a → b, g : a → c e h : c → b, ent˜o seu diagrama ´: a e f ab Gb bb y bb g bb h b 1 c
  • 18. 3 DIAGRAMAS 18 Representando a identidade: ida Ô f a Gb ou f a Gb ÐÐd ÐÐ ida ÐÐ f ÐÐ a
  • 19. 3 DIAGRAMAS 19 Um diagrama comuta se a composi¸˜o dos morfismos ao ca longo de qualquer caminho entre dois objetos fixos ´ e igual.
  • 20. 3 DIAGRAMAS 20 Lei associativa: h Gb a ÑÑÑ ÑÑÑg ÐÑÑ c Gd f f : c → d g : b → c h : a → b (f ◦ g) ◦ h = f ◦ (g ◦ h) Lei da identidade: f b bb Ga bb bb bb g bb a id bb f bb bb 0 1 a Gc g f : b → a g : a → c ida ◦ f = f g ◦ ida = g
  • 21. 4 EXEMPLOS DE CATEGORIAS 21 4 Exemplos de Categorias Categoria Objetos Morfismos Set conjuntos fun¸˜es (totais) co Top espa¸os topol´gicos c o fun¸˜es cont´ co ınuas Vect espa¸os vetoriais c tranforma¸˜es co lineares Grp grupos homomorfismos de grupos PO conjuntos parcialmente fun¸˜es co ordenados monotˆnicas o
  • 22. 4 EXEMPLOS DE CATEGORIAS 22 Sobre Set: • Para comprovar que Set ´ uma categoria basta e verificar a associatividade de fun¸oes e a identidade; c˜ • Dados f : A → B, g : B → C e h : C → D, e para qualquer a ∈ A: ((h ◦ g) ◦ f )(a) = (h ◦ g)(f (a)) = = h(g(f (a))) = h(g ◦ f (a)) = (h ◦ (g ◦ f ))(a) • Para qualquer f : A → B e para qualquer a ∈ A: (f ◦ idA )(a) = f (idA (a)) = f (a) = b = idB (b) = = idB (f (a)) = (idB ◦ f )(a)
  • 23. 4 EXEMPLOS DE CATEGORIAS 23 Definindo Top: • Uma topologia em um conjunto A ´ uma cole¸ao e c˜ β = {Aλ ⊆ A|λ ∈ L} de partes de A, chamados abertos da topologia, tal que: 1. ∅, A ∈ β; 2. Se Aλ1 , . . . , Aλn ∈ β ent˜o ∩n Aλi ∈ β; a i=1 3. Se {Aλ }λ∈V , com Aλ ∈ β para cada λ ∈ V e V ⊆ L, ent˜o ∪λ∈V Aλ ∈ β; a
  • 24. 4 EXEMPLOS DE CATEGORIAS 24 • Um conjunto A com uma topologia β ´ um espa¸o e c topol´gico; o • Uma fun¸ao f : A → B ´ cont´nua em a ∈ A se para c˜ e ı todo aberto V de B tal que f (a) ∈ V existe um aberto U de A tal que a ∈ U e f (U ) ⊆ V ; • Se f : A → B ´ cont´ e ınua para todo a ∈ A ent˜o a dizemos que f ´ cont´nua; e ı • Observe-se que a composi¸˜o de fun¸˜es cont´ ca co ınuas ´ e uma fun¸ao cont´ c˜ ınua.
  • 25. 4 EXEMPLOS DE CATEGORIAS 25 Definindo Vect: • Um espa¸o vetorial E ´ um conjunto, cujos elementos c e s˜o chamados vetores, no qual est˜o definidas duas a a opera¸˜es: co adi¸˜o u + v ∈ E para cada u, v ∈ E; ca multiplica¸˜o por escalar α.v, para cada α ∈ R e ca v ∈ E; • Estas opera¸oes devem satisfazer as propriedades de c˜ comutatividade, associatividade, existˆncia do vetor e nulo, existˆncia do inverso aditivo, e distributividade; e
  • 26. 4 EXEMPLOS DE CATEGORIAS 26 • Dados dois espa¸os vetoriais E e F, uma c transforma¸˜o linear A : E → F ´ uma ca e correspondˆncia que associa a cada vetor v ∈ E um e vetor A(v) ∈ F de modo que vale, para quaisquer u, v ∈ E e α ∈ R: 1. A(u + v) = A(u) + A(v); 2. A(α.v) = α.A(v); • Observe-se que a composi¸˜o de transforma¸˜es ca co lineares ´ associativa. e
  • 27. 4 EXEMPLOS DE CATEGORIAS 27 Definindo Grp: • Um conjunto G com uma opera¸˜o ⊕ : G × G → G ´ ca e um grupo se: 1. a ⊕ (b ⊕ c) = (a ⊕ b) ⊕ c, para todo a, b, c ∈ G; 2. Existe e ∈ G, chamado neutro, tal que a ⊕ e = e ⊕ a = a, para todo a ∈ G; 3. Para todo a ∈ G existe a−1 ∈ G tal que a ⊕ a−1 = a−1 ⊕ a = e; • Exemplo: (Z, +) ´ um grupo; e
  • 28. 4 EXEMPLOS DE CATEGORIAS 28 • Uma fun¸˜o φ : G1 → G2 , onde G1 e G2 s˜o grupos, ´ ca a e um homomorfismo de grupos se: 1. φ(eG1 ) = eG2 , onde eG1 ´ o neutro de G1 e eG2 ´ o e e neutro de G2 ; 2. φ(a ⊕G1 b) = φ(a) ⊕G2 φ(b), para todo a, b ∈ G1 ; • Observe-se que a composi¸˜o de homomorfismos de ca grupos ´ associativa. e
  • 29. 4 EXEMPLOS DE CATEGORIAS 29 Definindo PO: • Um conjunto parcialmente ordenado ´ um par (A, ), e onde A ´ um conjunto e ´ uma ordem parcial sobre e e o conjunto A; • Uma fun¸ao f ´ monotˆnica se ela preserva a ordem, c˜ e o ou seja, x1 x2 ⇒ f (x1 ) f (x2 ); • Sabe-se que a composi¸ao de duas fun¸˜es c˜ co monotˆnicas ´ uma fun¸˜o monotˆnica. o e ca o
  • 30. 4 EXEMPLOS DE CATEGORIAS 30 Observa¸˜es e mais exemplos: co • A no¸ao de “categoria” considera objetos como c˜ cole¸˜es de conjuntos estruturados e morfismos como co as suas fun¸oes associadas; c˜ • N˜o devemos restringir nossas defini¸oes pois os a c˜ morfismos n˜o necessariamente s˜o “fun¸˜es”, um a a co exemplo ´ a categoria Rel que possui conjuntos como e objetos e rela¸˜es como morfismos; co
  • 31. 4 EXEMPLOS DE CATEGORIAS 31 • Em Teoria das Categorias n˜o consideramos a a estrutura interna dos objetos, apenas as rela¸oes c˜ estabelecidas entre eles pelos seus morfismos; • Categoria Amor:
  • 32. 4 EXEMPLOS DE CATEGORIAS 32 • A menor categoria poss´ ´ a categoria 1 que possui ıvel e apenas um objeto e uma seta (a identidade do objeto); • Uma categoria ´ chamada discreta se cada seta ´ a e e identidade de algum objeto; • Esta categoria seria totalmente determinada pela cole¸˜o de seus objetos; ca • Um exemplo de categoria discreta ´ a categoria 1; e
  • 33. 4 EXEMPLOS DE CATEGORIAS 33 • Uma categoria ´ chamada de pr´-ordem se, para cada e e par de objetos a e b, existe no m´ximo um morfismo a f : a → b; • Uma pr´-ordem ´ totalmente determinada pela e e rela¸˜o de pr´-ordem entre seus objetos; ca e • Em uma pr´-ordem, toda seta f : a → b pode ser e identificada pelo par (a, b); • Assim, toda a informa¸ao sobre a categoria C, que ´ c˜ e uma pr´-ordem, ´ dada pela rela¸˜o e e ca RC = {(a, b)|∃f ∈ C[a, b]};
  • 34. 4 EXEMPLOS DE CATEGORIAS 34 • Toda categoria discreta ´ uma pr´-ordem; e e • A menor categoria n˜o-discreta que ´ uma pr´-ordem a e e ´ a categoria 2, que possui dois objetos (chamaremos e de 0 e 1) e trˆs setas: as duas identidades e a seta e (0, 1) : 0 → 1; id0 id1 Ö Ö 0 G1 (0,1)
  • 35. 4 EXEMPLOS DE CATEGORIAS 35 • Um monoide ´ um conjunto tendo uma opera¸ao e c˜ bin´ria associativa e um elemento neutro: a (A, ⊕, e) Onde: A – conjunto suporte; ⊕ : A × A → A – opera¸˜o bin´ria; ca a e – elemento neutro, tal que a ⊕ e = e ⊕ a = a, ∀a ∈ A;
  • 36. 4 EXEMPLOS DE CATEGORIAS 36 • Podemos interpretar um monoide como uma categoria que possui apenas um objeto, e a composi¸˜o de morfismos seria a opera¸ao bin´ria; ca c˜ a • Exemplo: (N, +, 0), e o elemento neutro ´ o 0 e (identidade): 1 2 0 5 Ò 3 ∗ p™ € ... 4 5
  • 37. 4 EXEMPLOS DE CATEGORIAS 37 • Sistemas dedutivos podem ser interpretados como categorias; • O morfismo f : a → b corresponde ` prova a a b; • Observe-se que a categoria ´ obtida na presen¸a da e c identidade ida : a → a, correspondente a prova trivial a a, e da composi¸ao associativa de provas: c˜ f :a→b g:b→c . g◦f :a→c
  • 38. 4 EXEMPLOS DE CATEGORIAS 38 • Um grafo ´ uma qu´drupla G = (V, T, δ0 , δ1 ), tal que: e a V um conjunto de nodos ou v´rtices; e T um conjunto de arcos ou arestas; δ0 , δ1 : T → V fun¸˜es totais denominadas origem e co destino; • Categoria Gr: Possui como objetos todos os grafos e como morfismos os homomorfismos de grafos;
  • 39. 4 EXEMPLOS DE CATEGORIAS 39 • Sejam G1 = (V1 , T1 , δ01 , δ11 ) e G2 = (V2 , T2 , δ02 , δ12 ). Um homomorfismo de grafos: h : G1 → G2 ´ um par de fun¸oes: e c˜ h = (hV , hT ) onde: hV : V1 → V2 e hT : T1 → T2 s˜o tais que: a δ02 ◦ hT = hV ◦ δ01 e δ12 ◦ hT = hV ◦ δ11 .
  • 40. 4 EXEMPLOS DE CATEGORIAS 40 Exemplo: G 1 A G hV 2 r a hT 1 3 B c b s t 2 d C e
  • 41. 5 SUBCATEGORIA 41 5 Subcategoria Uma categoria D ´ uma subcategoria de uma categoria C e se: 1. ObD ⊆ ObC ; 2. Para todo a e b em ObD , D[a, b] ⊆ C[a, b]; 3. Composi¸oes e identidades em D coincidem com as c˜ de C.
  • 42. 5 SUBCATEGORIA 42 Uma subcategoria ´ completa se, para todo a e b em e ObD , D[a, b] = C[a, b]. Uma subcategoria completa ´ e totalmente determinada pela cole¸ao de seus objetos. c˜
  • 43. 6 CATEGORIA DUAL 43 6 Categoria Dual A categoria dual C op da categoria C tem os mesmos objetos e os mesmos morfismos de C, idop = idb , b domop (f ) = cod(f ), codop (f ) = dom(f ), e f ◦op g = g ◦ f .
  • 44. 6 CATEGORIA DUAL 44 Observa¸˜es: co • C op [b, a] = C[a, b] e (C op )op = C; • Se P ´ uma proposi¸ao que ´ verdadeira na categoria e c˜ e C, ent˜o P op ´ verdadeira em C op ; a e • Se P ´ uma proposi¸ao verdadeira para qualquer e c˜ categoria, ent˜o P op tamb´m ´ verdadeira para a e e qualquer categoria, pois toda categoria ´ dual de sua e dual.
  • 45. 6 CATEGORIA DUAL 45 Com rela¸ao ao diagrama da categoria dual: c˜ • Para obter o diagrama da dual basta inverter as setas; • O diagrama da dual comuta se e somente se o diagrama original comuta.
  • 46. 7 CATEGORIA PRODUTO 46 7 Categoria Produto Dadas duas categorias C e D, a categoria produto C × D tem por objetos os pares (a, b), onde a e b s˜o os objetos a das categorias C e D respectivamente, e por morfismos os pares (f, g) : (a, b) → (a , b ), onde f : a → a e g : b → b s˜o morfismos de C e D respectivamente. Finalmente, a id(a,b) = (ida , idb ) e (f, g) ◦ (f , g ) = (f ◦ f , g ◦ g ).
  • 47. 8 CATEGORIAS C ↓ A E C ↑ A 47 8 Categorias C ↓ a e C ↑ a Dada uma categoria C e um objeto a ∈ ObC , a categoria C ↓ a de objetos sobre a (tamb´m conhecida como e categoria fatia, “slice category”) ´ definida como: e 1. ObC↓a = {f ∈ MorC |cod(f ) = a}; 2. Dados dois objetos f : b → a e g : c → a, um morfismo com origem f e destino g ´ uma seta e h ∈ C[b, c] tal que g ◦ h = f ; 3. Identidades e composi¸ao de C ↓ a s˜o herdadas de C. c˜ a
  • 48. 8 CATEGORIAS C ↓ A E C ↑ A 48 Em C: b bb bb f bb bb 1 h a c    g c Em C ↓ a: h G [g : c → a] [f : b → a]
  • 49. 8 CATEGORIAS C ↓ A E C ↑ A 49 Em C: b bb bb f bb bb 0 idb a ÐÐd ÐÐÐ ÐÐÐ f b Em C ↓ a: idb Ù [f : b → a]
  • 50. 8 CATEGORIAS C ↓ A E C ↑ A 50 • Considere Set ↓ A; • Podemos pensar um objeto g : B → A desta categoria como sendo uma fam´ de conjuntos ılia disjuntos indexados por A, {g −1 (a)}a∈A ; • h : B → B ´ um morfismo de g : B → A para e g : B → A se e somente se ∀b b ∈ g −1 (a) ⇒ h(b) ∈ g −1 (a);
  • 51. 8 CATEGORIAS C ↓ A E C ↑ A 51 Podemos definir tamb´m uma categoria C ↑ a, cujos e objetos s˜o os morfismos de C que tem como origem a. a
  • 52. 9 MONOMORFISMO, EPIMORFISMO E ISOMORFISMO 52 9 Monomorfismo, Epimorfismo e Isomorfismo • Uma fun¸ao f : A → B ´ injetiva quando, para todo c˜ e a, a ∈ A, se f (a) = f (a ) ent˜o a = a ; a • Conclui-se que, para f injetiva, dadas duas fun¸oes c˜ g : C → A e h : C → A, se para todo c ∈ C f (g(c)) = f (h(c)) ent˜o para todo c ∈ C g(c) = h(c), a ou seja, f ◦ g = f ◦ h implica g = h; • O inverso tamb´m ´ verdade, ou seja, se f ◦ g = f ◦ h e e implica g = h ent˜o f ´ injetiva; a e
  • 53. 9 MONOMORFISMO, EPIMORFISMO E ISOMORFISMO 53 • Suponha o contr´rio, ent˜o existem a e a tal que a a f (a) = f (a ) mas a = a ; • Definimos g tal que g(c) = a para todo c ∈ C e h tal que h(c) = a para todo c ∈ C; • Ent˜o, f ◦ g = f ◦ h mas g = h, o que ´ uma a e contradi¸ao; c˜
  • 54. 9 MONOMORFISMO, EPIMORFISMO E ISOMORFISMO 54 • f ◦ g = f ◦ h implica g = h se e somente se f ´e injetiva (como se a aplica¸˜o de f se cancelasse a ca esquerda); • De forma similar, g ◦ f = h ◦ f implica g = h se e somente se f ´ sobrejetiva (como se a aplica¸ao de f e c˜ se cancelasse a direita).
  • 55. 9 MONOMORFISMO, EPIMORFISMO E ISOMORFISMO 55 Sejam uma categoria C e a, b ∈ ObC . Ent˜o: a 1. Uma seta h ∈ C[a, b] ´ um monomorfismo (ou ´ e e mono) se e somente se h ◦ g = h ◦ f ⇒ g = f ; 2. Uma seta h ∈ C[a, b] ´ um epimorfismo (ou ´ epi ) se e e e somente se g ◦ h = f ◦ h ⇒ g = f ; 3. Uma seta h ∈ C[a, b] ´ um isomorfismo (ou ´ iso) se e e e somente se existe g ∈ C[b, a] tal que g ◦ h = id e h ◦ g = id.
  • 56. 9 MONOMORFISMO, EPIMORFISMO E ISOMORFISMO 56 h◦g=h◦f g ' G h G b ent˜o g = f ; Mono c Ga a f g◦h=f ◦h g 'G h Gb Epi a G c ent˜o g = f ; a f id id Ó h G Ó Iso a o b e g ◦ h = id e h ◦ g = id. g
  • 57. 9 MONOMORFISMO, EPIMORFISMO E ISOMORFISMO 57 Observa¸˜es: co • Se uma seta h ´ iso, ent˜o tamb´m ´ epi e mono, e a e e embora o contr´rio n˜o seja necessariamente a a verdadeiro: Se h ´ iso, ent˜o existe f tal que f ◦ h = id. Logo, e a h◦g =h◦g ⇒f ◦h◦g =f ◦h◦g ⇒g =g. O argumento ´ similar para epi. e • Embora seja util em Set pensar mono e epi como ´ sendo inje¸ao e sobreje¸ao respectivamente, isto pode c˜ c˜ conduzir a confus˜o em outras categorias; a
  • 58. 9 MONOMORFISMO, EPIMORFISMO E ISOMORFISMO 58 • Um mono h ∈ C[a, b] cinde (“split”) se existe um g ∈ C[b, a] tal que g ◦ h = ida ; • Um epi h ∈ C[a, b] cinde (“split”) se existe um g ∈ C[b, a] tal que h ◦ g = idb .
  • 59. 10 ´ OBJETOS ISOMORFICOS 59 10 Objetos Isom´rficos o • Dois objetos a e b s˜o isom´rficos (a ∼ b) se existe a o = um isomorfismo h ∈ C[a, b]; • Isomorfismo estabelece, em certo grau de abstra¸ao, c˜ uma rela¸˜o de “semelhan¸a” ou “equivalˆncia” entre ca c e objetos.
  • 60. 11 MORFISMO PRINCIPAL 60 11 Morfismo Principal Seja C uma categoria e a, b ∈ ObC . Ent˜o: a 1. Uma seta h ∈ C[a, b] ´ um morfismo principal se e e somente se ∀f ∈ C[a, b] ∃g ∈ C[a, a] f = h ◦ g; 2. Um par de setas f ∈ C[a, b] e g ∈ C[b, a] ´ um par de e retra¸˜o se e somente se g ◦ f = id. Ent˜o a ´ ca a e chamado de retra¸˜o de b (a b) via o par de ca retra¸˜o (f, g). ca
  • 61. 11 MORFISMO PRINCIPAL 61 Observa¸˜es: co • h ´ principal se e somente se para todo f existe um g e tal que: h Gb a y d ÐÐÐ g ÐÐÐf ÐÐ a • f e g s˜o um par de retra¸˜o (a b) se: a ca f g a Gb Ga e g ◦ f = id.
  • 62. 11 MORFISMO PRINCIPAL 62 Teorema 1 Sejam C uma categoria e a, b ∈ ObC . Ent˜o: a 1. Se a b via (i, h), ent˜o h ´ epi e principal, e i ´ a e e mono; 2. Se h ∈ C[a, b] ´ principal e existe um epi k ∈ C[a, b], e ent˜o h ´ epi; a e 3. Se a b e f ∈ C[b, a] ´ principal, ent˜o existe e a g ∈ C[a, b] tal que a b via (g, f ).
  • 63. 11 MORFISMO PRINCIPAL 63 Prova: 1. Se a b via (i, h), ent˜o h ´ epi e principal, e i ´ a e e mono; • g ◦ h = f ◦ h ⇒ g ◦ h ◦ i = f ◦ h ◦ i ⇒ g = f para h ◦ i = id; • Prova que h ´ principal: ∀f ∃g f = h ◦ g. Tome e g = i ◦ f , ent˜o h ◦ g = h ◦ i ◦ f = f . Segundo o a diagrama: a i Gb y f h b Ga f • i ◦ g = i ◦ f ⇒ h ◦ i ◦ g = h ◦ i ◦ f ⇒ g = f;
  • 64. 11 MORFISMO PRINCIPAL 64 2. Se h ∈ C[a, b] ´ principal e existe um epi k ∈ C[a, b], e ent˜o h ´ epi; a e g◦h=f ◦h⇒g◦h◦g =f ◦h◦g ⇒g◦k = f ◦ k ⇒ g = f (para um g apropriado); h Gb a y ÐÐd g ÐÐÐ ÐÐÐ k a
  • 65. 11 MORFISMO PRINCIPAL 65 3. Se a b e f ∈ C[b, a] ´ principal, ent˜o existe e a g ∈ C[a, b] tal que a b via (g, f ); Seja a b via (i, j). Como f ´ principal ent˜o e a ∃s ∈ C[b, b] j = f ◦ s. Assim, para g = s ◦ i temos f ◦ g = j ◦ i = ida . Em diagrama: i j aa Gb Ga aa d aa ÑÑÑ g aa s ÑÑÑ a0 ÑÑ f b
  • 66. 12 CATEGORIA DOS IDEMPOTENTES 66 12 Categoria dos Idempotentes Se f : a → b e g : b → a s˜o um par de retra¸˜o, ent˜o a a ca a fun¸ao h = f ◦ g : b → b ´ idempotente, isto ´, h ◦ h = h, c˜ e e pois h ◦ h = (f ◦ g) ◦ (f ◦ g) = f ◦ (g ◦ f ) ◦ g = f ◦ g = h (pela associatividade da composi¸˜o). ca
  • 67. 12 CATEGORIA DOS IDEMPOTENTES 67 Dada uma categoria C e um objeto b ∈ ObC , a categoria dos idempotentes sobre b (Retb ) ´ definida como: e ObRetb = {f ∈ C[b, b]|f ◦ f = f } MorRetb = {(f, k, g)|f, g ∈ ObRetb , k ∈ C[b, b], k = g ◦ k ◦ f} dom((f, k, g)) = f cod((f, k, g)) = g idf = (f, f, f ) (f, k, g) ◦ (g , k , f ) = (g , k ◦ k , g)
  • 68. 12 CATEGORIA DOS IDEMPOTENTES 68 identidade (f, k, g) ◦ (f, f, f ) = (f, k ◦ f, g). Sabemos que f e g s˜o idempotentes e k = g ◦ k ◦ f : a k◦f =g◦k◦f ◦f =g◦k◦f =k Similar para (f, f, f ) ◦ (g, k, f ); associatividade da composi¸˜o ca ((f1 , f2 , f3 ) ◦ (g1 , g2 , f1 )) ◦ (h1 , h2 , g1 ) = (g1 , f2 ◦ g2 , f3 ) ◦ (h1 , h2 , g1 ) = (h1 , (f2 ◦ g2 ) ◦ h2 , f3 ) = (h1 , f2 ◦ (g2 ◦ h2 ), f3 ) e (f1 , f2 , f3 ) ◦ ((g1 , g2 , f1 ) ◦ (h1 , h2 , g1 )) = (f1 , f2 , f3 ) ◦ (h1 , g2 ◦ h2 , f1 ) = (h1 , f2 ◦ (g2 ◦ h2 ), f3 ).
  • 69. 13 SUB-OBJETO 69 13 Sub-objeto • Sub-objeto ´ a vers˜o categorial de subconjunto da e a teoria dos conjuntos; • Baseia-se na id´ia de definir um subconjunto A ⊆ B e como um monomorfismo f : D → B (intuitivamente “f (D) = A”);
  • 70. 13 SUB-OBJETO 70 • Se existem muitas setas mono definindo o mesmo subconjunto, ´ necess´rio introduzir uma classe de e a equivalˆncia e definir sub-objetos usando-a; e • Seja C uma categoria. Se f : b → a e g : c → a s˜o a duas setas mono com destino comum a, ent˜o a dizemos que f ≤ g se e somente se existe h : b → c tal que g ◦ h = f ; • Note que o unico h ´ mono tamb´m, pois ´ e e h◦k =h◦k ⇒g◦h◦k =g◦h◦k ⇒f ◦k = f ◦k ⇒k =k;
  • 71. 13 SUB-OBJETO 71 • Se f ≤ g e g ≤ f ent˜o dizemos que f ∼ g, e ∼ ´ a = =e uma rela¸ao de equivalˆncia entre monomorfismos c˜ e com destino comum; • As classes de equivalˆncia determinadas por esta e rela¸˜o de equivalˆncia s˜o os sub-objetos de a; ca e a • Nota¸˜o: [f ]. ca
  • 72. 14 OBJETOS INICIAL E TERMINAL 72 14 Objetos Inicial e Terminal Seja C uma categoria. Um objeto 0 ´ inicial se e somente e se para qualquer b ∈ ObC existe um unico f ∈ C[0, b]. ´
  • 73. 14 OBJETOS INICIAL E TERMINAL 73 Observa¸˜es: co • O t´ ıpico exemplo de objeto inicial ´ ∅ (conjunto e vazio) em Set, pois a fun¸ao vazia (ou seja, a fun¸˜o c˜ ca cujo grafo ´ vazio) ´ a unica seta com origem em ∅; e e ´ • Deve-se observar que a fun¸˜o vazia, tendo como ca dom´ ınio ∅, ´ total (como Set exige) por vacuidade; e • Inicialidade ´ a mais simples no¸ao universal em e c˜ Teoria das Categorias, j´ que ´ dada pela existˆncia e a e e unicidade de morfismos satisfazendo certas propriedades; • Universalidade ´ um conceito fundamental em Teoria e das Categorias.
  • 74. 14 OBJETOS INICIAL E TERMINAL 74 Teorema 2 Se 0 e 0 s˜o dois objetos iniciais da a categoria C, ent˜o eles s˜o isom´rficos (em outras a a o palavras: o objeto inicial ´ unico a n˜o ser por e´ a isomorfismos). Prova: Sejam i : 0 → 0 e j : 0 → 0 dois morfismos dados pela inicialidade de 0 e 0 . Ent˜o, j ◦ i : 0 → 0, a mas tamb´m id0 : 0 → 0. Pela inicialidade de 0 s´ pode e o existir um morfismo em C[0, 0], ent˜o j ◦ i = id0 . Da a mesma forma, pela inicialidade de 0 , i ◦ j = id0 .
  • 75. 14 OBJETOS INICIAL E TERMINAL 75 • Podemos usar dualidade para definir um novo conceito e provar novas propriedades; • Seja P (c) a propriedade “para qualquer b ∈ ObC existe um unico f tal que dom(f ) = c e cod(f ) = b”; ´ • Pela defini¸˜o, c ´ inicial se e somente se P (c) vale; ca e • O enunciado dual de P (c), P op (c), ´ “para qualquer e b ∈ ObC existe um unico f tal que dom(f ) = b e ´ cod(f ) = c”;
  • 76. 14 OBJETOS INICIAL E TERMINAL 76 • Conceitos duais s˜o usualmente chamados usando-se a o prefixo “co-”; • Assim, P op (c) define co-inicialidade, e o objeto que a satisfaz ´ o objeto co-inicial (tamb´m conhecido e e como terminal ); • Nota¸˜o: 1 ou t e o morfismo unico que tem como ca ´ origem um objeto a e como destino t ´ denotado por e !a : a → t.
  • 77. 14 OBJETOS INICIAL E TERMINAL 77 Observa¸˜es: co • Qualquer conjunto unit´rio {∗} (que possui apenas a um elemento) ´ terminal em Set; e • Na categoria 2 um elemento ´ inicial e o outro ´ e e terminal; • Se c ´ inicial em C ent˜o ´ terminal em C op e e a e vice-versa.
  • 78. 14 OBJETOS INICIAL E TERMINAL 78 Teorema 3 Se 1 e 1 s˜o dois objetos terminais na a categoria C, ent˜o eles s˜o isom´rficos. a a o Prova: Pela dualidade e pelo Teorema 2.
  • 79. 14 OBJETOS INICIAL E TERMINAL 79 Observa¸˜es: co • Um objeto pode ser inicial e terminal ao mesmo tempo, neste caso ´ chamado de objeto zero; e • Em Set, um morfismo do conjunto unit´rio para um a conjunto A define os elementos de A; • Em uma categoria C qualquer, uma seta de um objeto terminal t para um objeto a ´ usualmente e chamada de elemento ou ponto de a;
  • 80. 14 OBJETOS INICIAL E TERMINAL 80 • Seja C uma categoria. t ∈ ObC ´ um gerador se e e somente se para todos a, b ∈ ObC e todos f, g ∈ C[a, b], temos f = g ⇒ ∃h ∈ C[t, a] f ◦ h = g ◦ h; • C tem suficientes pontos (ou ´ bem pontuada), se e existe um gerador t que ´ terminal na categoria dada; e • Ou seja, a categoria tem suficientes pontos quando as setas com origem no objeto terminal permitem discriminar entre morfismos, de forma similar que para os elementos de Set.
  • 81. 15 PRODUTO E COPRODUTO CATEGORIAL 81 15 Produto e Coproduto Categorial • O produto categorial ´ uma generaliza¸ao estrutural e c˜ da no¸ao de produto cartesiano; c˜ • Dados dois conjuntos A e B, seu produto cartesiano ´: e A × B = {(x, y)|x ∈ A, y ∈ B}
  • 82. 15 PRODUTO E COPRODUTO CATEGORIAL 82 • Associado com este conjunto existem dois mapeamentos especiais pA : A × B → A e pB : A × B → B, chamados proje¸˜es, tal que para co todo (x, y) ∈ A × B, pA ((x, y)) = x e pB ((x, y)) = y; • Sejam f : C → A e g : C → B, ent˜o a f, g : C → A × B, e f, g (c) = f (c), g(c) para todo c ∈ C; • Seja c ∈ ObC . Definimos a opera¸ao c˜ , c : C[c, a] × C[c, b] → C[c, a × b] como acima descrito.
  • 83. 15 PRODUTO E COPRODUTO CATEGORIAL 83 Sejam C uma categoria e a, b ∈ ObC . O produto categorial de a e b ´ um objeto a × b junto com dois morfismos e pa : a × b → a e pb : a × b → b tal que, dado um c ∈ ObC , para qualquer f ∈ C[c, a] e g ∈ C[c, b], existe exatamente um h ∈ C[c, a × b] tal que o seguinte diagrama ´ e comutativo: c y ii y ii g f yy ii yy h ii |oyyy i4 a pa a × b pb G b Observa¸˜o: c ´ chamado de pr´-produto. ca e e
  • 84. 15 PRODUTO E COPRODUTO CATEGORIAL 84 Exemplos: Em Set, sejam A = {1, 2}, B = {a, b} e C = {x, y}. Ent˜o A × B = {(1, a), (2, a), (1, b), (2, b)} e h a ´ o unico morfismo que faz o seguinte diagrama comutar: e ´ w C qqq f www qqg w h qq ww qq {ww 5 A pA A × B pB G B o
  • 85. 15 PRODUTO E COPRODUTO CATEGORIAL 85 Definimos f , g e h de acordo com a seguinte ilustra¸ao: c˜ C x y f g h 1 (1,a) a (2,a) 2 b (1,b) A p (2,b) p B A B AxB
  • 86. 15 PRODUTO E COPRODUTO CATEGORIAL 86 Na categoria 2, id0 id1 Ö Ö 0 G1 (0,1) 0 × 1 = 1 × 0 = 0: z 0 iii id0 zzz i (0,1) zz id0 iii zz ii |z o 4G 0 id0 0 × 1 (0,1) 1
  • 87. 15 PRODUTO E COPRODUTO CATEGORIAL 87 Em Set, ∅ × A = A × ∅ = ∅: z ∅ iii id∅ zzz ii f zz id∅ iii z ii | zz 4 ∅ oz ∅×A G A id∅ f
  • 88. 15 PRODUTO E COPRODUTO CATEGORIAL 88 Teorema 4 Em uma categoria, o produto, se existir, ´ e unico a n˜o ser por isomorfismos. ´ a Prova: Seja a ⊗ b um produto alternativo com proje¸˜esco qa e qb , ent˜o qa , qb ◦ pa , pb ´ o morfismo unico a e ´ que faz o seguinte diagrama comutar: a×b g zz g p pa zp ,p ggg b z a b zz gg z gg }zz qa o a —hh a⊗b qb Ga3 b { hh hh q ,q {{ {{ pa h h a b {{{ pb h { a×b Logo, qa , qb ◦ pa , pb = ida×b e, por simetria, pa , pb ◦ qa , qb = ida⊗b .
  • 89. 15 PRODUTO E COPRODUTO CATEGORIAL 89 Morfismo produto: Sejam f : a → c e g : b → d. pa pb ao a×b Gb f f ×g g co pc c×d pd Gd Observa¸˜es: co • f × g ´ unico j´ que a × b ´ um pr´-produto de c × d; e´ a e e • Dizemos que f × g ´ univocamente induzido por f e e g; • Exemplo em Set: Definimos (f × g)((x, y)) = (f (x), g(y)) tal que x ∈ A e y ∈ B.
  • 90. 15 PRODUTO E COPRODUTO CATEGORIAL 90 • Uma categoria C ´ cartesiana (C ´ CC) se e somente e e se: 1. Cont´m um objeto terminal t; e 2. Todo par a, b ∈ ObC tem um produto categorial (a × b, pa,b,1 : a × b → a, pa,b,2 : a × b → b); • Exemplos: Set, Top e Grp; • Uma categoria cartesiana interessante em teoria da computabilidade ´ a categoria EN dos conjuntos e enumer´veis; a
  • 91. 15 PRODUTO E COPRODUTO CATEGORIAL 91 • Objetos de EN s˜o pares a = (a, ea ), onde a ´ um a e conjunto cont´vel e ea : N → a ´ um mapeamento a e dos elementos de a (uma enumera¸˜o de a); ca • f ∈ EN[a, b] se e somente se, para alguma fun¸ao c˜ (total) recursiva f , o seguinte diagrama comuta: f N GN ea eb a Gb f • Dizemos que f representa f ;
  • 92. 15 PRODUTO E COPRODUTO CATEGORIAL 92 • O produto pode ser facilmente obtido por qualquer bije¸˜o efetiva [, ] : N × N → N; ca • Um conjunto enumer´vel de interesse ´ a e PR = (PR, φ), das fun¸˜es parciais recursivas com co n´meros de G¨del φ : N → PR, e EN[PR, PR] s˜o u o a exatamente os funcionais recursivos de segunda ordem.
  • 93. 15 PRODUTO E COPRODUTO CATEGORIAL 93 Sejam C uma categoria e a, b ∈ ObC . O coproduto de a e b ´ um objeto a + b junto com dois morfismos e qa : a → a + b e qb : b → a + b tal que, dado um c ∈ ObC , para qualquer f ∈ C[a, b] e g ∈ C[b, c], existe exatamente um h ∈ C[a + b, c] tal que o seguinte diagrama comuta: c y` y ˜iii f yyy iig y ii yy h ii yy G o a qa a+b qb b
  • 94. 15 PRODUTO E COPRODUTO CATEGORIAL 94 Observa¸˜es: co • O coproduto ´ o conceito dual do produto; e • No coproduto a + b, os morfismos qa e qb s˜o a chamados de inclus˜es ; o • Por dualidade, o coproduto ´ unico (a n˜o ser por e´ a isomorfismos); • Em Set o coproduto ´ a uni˜o disjunta. e a
  • 95. 16 ´ CALCULO LAMBDA 95 16 C´lculo Lambda a • Simplifica e flexibiliza a representa¸ao de fun¸oes; c˜ c˜ • Facilita as opera¸oes de currying e uncurrying. c˜
  • 96. 16 ´ CALCULO LAMBDA 96 Express˜o-λ (ou termo-λ): a 1. Uma vari´vel ´ uma express˜o-λ; a e a 2. Se M ´ uma express˜o-λ e x ´ uma vari´vel, ent˜o e a e a a λxM ´ uma express˜o-lambda, interpretada como e a “uma fun¸ao com argumento x”; c˜ 3. Se F e A s˜o express˜es-λ, ent˜o (F A) ´ uma a o a e express˜o-λ, interpretada como “F aplicado ao a argumento A”; 4. Nada mais ´ express˜o-λ. e a
  • 97. 16 ´ CALCULO LAMBDA 97 Exemplos: M 1. λx x ; F 2. ( λxx (yz)); A F A 3. (λx (xx) y ); M 4. (λxx λxx ); F A 5. λx λy(xy). M
  • 98. 16 ´ CALCULO LAMBDA 98 Ocorrˆncia de vari´vel livre e limitada: e a • Se uma ocorrˆncia de uma vari´vel x est´ no escopo e a a de um λx, ent˜o sua ocorrˆncia ´ dita limitada, caso a e e contr´rio ´ dita livre; a e • Exemplo: (xλxλy(xy)) Primeira ocorrˆncia de x ´ livre, a segunda ´ e e e limitada.
  • 99. 16 ´ CALCULO LAMBDA 99 Substitui¸˜o uniforme: ca • M [x ← A] denota a substitui¸ao uniforme de todas c˜ as ocorrˆncias livres de x por A; e • Exemplo: (xλxλy(xy))[x ← λzz] = (λzzλxλy(xy))
  • 100. 16 ´ CALCULO LAMBDA 100 Abstra¸˜o-λ M ⇒ λxM ; ca Aplica¸˜o-λ (λxM A) ⇒ M [x ← A]. ca (λxM A) ⇒ M [x ← A] redex contractum
  • 101. 16 ´ CALCULO LAMBDA 101 • Uma forma normal ´ uma express˜o-λ na qual n˜o se e a a pode efetuar uma aplica¸ao-λ; c˜ • Uma sequˆncia de aplica¸oes-λ at´ a obten¸˜o de e c˜ e ca uma forma normal ´ chamada de redu¸˜o. e ca
  • 102. 16 ´ CALCULO LAMBDA 102 Exemplos de redu¸˜es: co 1. (λxxλxx) ⇒ λxx; 2. ((λxλy(xy)λxx)x) ⇒ (λy(λxxy)x) ⇒ (λxxx) ⇒ x; 3. (λx(xx)λx(xx)) ⇒ (λx(xx)λx(xx)) (irredut´ ıvel); 4. (λxyz) ⇒ y (jogar fora alguma coisa).
  • 103. 16 ´ CALCULO LAMBDA 103 Currying: • Ocorre quando da aplica¸˜o de um termo-λ em que ca existem menos argumentos que vari´veis limitadas; a (λxλy(xy)z) ⇒ λy(zy) • Ou seja, f (x, y), fixando um x qualquer, resulta em uma fun¸ao de y. c˜
  • 104. 16 ´ CALCULO LAMBDA 104 Representando aritm´tica: e if A then B else C T ≡ λxλyx ((T a)b) ≡ ((λxλyxa)b) ⇒ (λyab) ⇒ a F ≡ λxλyy ((F a)b) ≡ ((λxλyya)b) ⇒ (λyyb) ⇒ b Observa¸˜o: T e F s˜o abreviaturas. ca a
  • 105. 16 ´ CALCULO LAMBDA 105 Podemos usar F e T como seletores de elementos de listas (if-then-else aninhados): • T ≡ λxλyx (primeiro elemento da lista); • F T ≡ λxλy(yλxλyx) ≡ λxλy(yT ) (segundo elemento da lista); • F 2 T ≡ λxλy(yλxλy(yλxλyx)) ≡ λxλy(yF T ) (terceiro elemento da lista); • F i+1 T ≡ λxλy(yF i T ) (o (i + 2)-´simo elemento). e
  • 106. 16 ´ CALCULO LAMBDA 106 φ0 , φ1 , . . . , φn−1 • φ0 ≡ λx((xφ0 )ψ) (ψ ´ o terminador de lista); e • φ0 , φ1 ≡ λx((xφ0 )λx((xφ1 )ψ)) ≡ λx((xφ0 ) φ1 ); • φ0 , φ1 , . . . , φn−1 ≡ λx((xφ0 ) φ1 , . . . , φn−1 ).
  • 107. 16 ´ CALCULO LAMBDA 107 Obtendo o primeiro elemento de uma lista: ( φ0 T ) ≡ (λx((xφ0 )ψ)λxλyx) ⇒ ((λxλyxφ0 )ψ) ⇒ ⇒ (λyφ0 ψ) ⇒ φ0
  • 108. 16 ´ CALCULO LAMBDA 108 Obtendo o segundo elemento de uma lista: ( φ0 , φ 1 , φ 2 F T ) ≡ ≡ (λx((xφ0 )λx((xφ1 )λx((xφ2 )ψ))) λxλy(yλxλyx)) ⇒ ⇒ ((λxλy(yλxλyx) φ0 )λx((xφ1 )λx((xφ2 )ψ))) ⇒ ⇒ (λy(yλxλyx) λx((xφ1 )λx((xφ2 )ψ))) ⇒ ⇒ (λx((xφ1 )λx((xφ2 )ψ)) λxλyx) ⇒ ⇒ ((λxλyx φ1 )λx((xφ2 )ψ)) ⇒ ⇒ (λyφ1 λx((xφ2 )ψ)) ⇒ φ1
  • 109. 16 ´ CALCULO LAMBDA 109 Representando n´meros: 0 ≡ T , 1 ≡ F T , 2 ≡ F F T , . . ., u i ≡ F iT .
  • 110. 16 ´ CALCULO LAMBDA 110 suc ≡ λzλxλy(yz) (suc1) ≡ (λzλxλy(yz)λxλy(yλxλyx)) ⇒ λxλy(y λxλy(y λxλyx) ≡ F F T ≡ 2 T FT
  • 111. 16 ´ CALCULO LAMBDA 111 Observa¸˜es: co • Esta defini¸ao conduz a possibilidade de definir c˜ soma, subtra¸ao, multiplica¸ao, etc. c˜ c˜ • Neste caso, podemos definir abreviaturas para +, −, ×, etc. • Assim, ocorre equivalˆncia entre o c´lculo-λ e a e a m´quina de Turing (fun¸˜es parciais recursivas). a co
  • 112. 16 ´ CALCULO LAMBDA 112 C´lculo-λ tipado: a • Cada vari´vel tem um tipo associado e a constru¸ao a c˜ dos termos obedece a certas “regras de tipagem”; • Motiva¸ao: Paradoxo de Russel (teoria dos c˜ conjuntos) e tipos de linguagens de programa¸ao. c˜
  • 113. 16 ´ CALCULO LAMBDA 113 Tipos e construtores de termos: Tipos atˆmicos A, B, C, . . .; o Tipos n˜o-atˆmicos a o • se α e β s˜o tipos, ent˜o α → β ´ um tipo a a e (funcional); • se α e β s˜o tipos, ent˜o α × β ´ um tipo a a e (produto cartesiano, record);
  • 114. 16 ´ CALCULO LAMBDA 114 Termos • se x ´ vari´vel do tipo ψ, ent˜o x : ψ ´ um termo e a a e do tipo ψ; • se x ´ vari´vel do tipo ψ e t ´ termo do tipo φ, e a e ent˜o λxt : ψ → φ ´ um termo do tipo ψ → φ; a e • se t1 e t2 s˜o termos do tipo ψ → φ e ψ a respectivamente, ent˜o App(t1 , t2 ) : φ ´ um termo a e do tipo φ (aplica¸ao); c˜
  • 115. 16 ´ CALCULO LAMBDA 115 • se t1 e t2 s˜o termos do tipo ψ e φ a respectivamente, ent˜o (t1 , t2 ) : ψ × φ ´ um a e termo do tipo ψ × φ (produto cartesiano); • se t : ψ × φ ´ um termo do tipo ψ × φ, ent˜o e a π1 (t) : ψ e π2 (t) : φ s˜o termos do tipo ψ e φ a respectivamente (proje¸oes). c˜
  • 116. 16 ´ CALCULO LAMBDA 116 Redu¸oes no c´lculo-λ tipado: c˜ a π1 ((t1 , t2 )) : ψ ⇒ t1 : ψ π2 ((t1 , t2 )) : φ ⇒ t2 : φ App(λxt1 , t2 ) : φ ⇒ t1 [x ← t2 ] : φ
  • 117. 16 ´ CALCULO LAMBDA 117 Observa¸˜es: co • O c´lculo-λ tipado corresponde `s fun¸oes (totais) a a c˜ recursivas, pois a introdu¸˜o dos tipos impede que a ca fun¸˜o fique indefinida (n˜o h´ loop infinito); ca a a • Ao representar o c´lculo-λ tipado em Teoria das a Categorias: – Tipos s˜o objetos de uma categoria C; a – Termos s˜o morfismos; a – Problema: como representar a aplica¸ao-λ? c˜ Resposta: objeto exponencial.
  • 118. 17 OBJETO EXPONENCIAL 118 17 Objeto Exponencial • A conex˜o entre Teoria das Categorias e Teoria da a Computabilidade, como “teorias de fun¸oes”, exige c˜ interpretar fun¸˜es como morfismos, identificando co tipos como A × B → C e A → (B → C) (currying e uncurrying); • O produto n˜o ´ suficiente para isto; a e • Precisamos ent˜o representar fun¸˜es de mais alta a co ordem (funcionais), como “morfismos entre morfismos”, mas isto n˜o ´ poss´ a e ıvel;
  • 119. 17 OBJETO EXPONENCIAL 119 Sejam C uma categoria cartesiana, e a, b ∈ ObC . O objeto exponencial de a e b ´ ba junto com o morfismo e evala,b : ba × a → b (mapeamento de avalia¸ao), e para c˜ cada objeto c uma opera¸ao Λc : C[c × a, b] → C[c, ba ] tal c˜ que, para todos os morfismosf : c × a → b e h : c → ba , as seguintes equa¸oes valem: c˜ 1. evala,b ◦ (Λc (f ) × ida ) = f ; 2. Λc (evala,b ◦ (h × ida )) = h.
  • 120. 17 OBJETO EXPONENCIAL 120 Os conceitos centrais da defini¸ao s˜o: c˜ a Currying/Uncurrying f : c × a → b intercambiado com h : c → ba , onde ba ´ o espa¸o de fun¸oes a → b; e c c˜ Existˆncia de eval evala,b : ba × a → b equivale a e avaliar f (x), onde f : a → b e x ∈ a.
  • 121. 17 OBJETO EXPONENCIAL 121 Observa¸˜es: co • Λ : C[c × a, b] → C[c, ba ] ´ uma bije¸˜o; e ca • Λ−1 : C[c, ba ] → C[c × a, b] ´ tal que e Λ−1 : h → evala,b ◦ (h × ida ); • Se Λ : C[c × a, b] → C[c, ba ] ´ uma bije¸ao e (1) da e c˜ defini¸˜o vale, ent˜o (2) ´ necessariamente ca a e verdadeiro; • Seja h ∈ C[c, ba ] e tomemos f ∈ C[c × a, b] tal que h = Λ(f ), ent˜o Λ(evala,b ◦ (h × ida )) = a Λ(evala,b ◦ (Λ(f ) × ida )) = Λ(f ) = h.
  • 122. 17 OBJETO EXPONENCIAL 122 Defini¸ao alternativa: Sejam C uma categoria cartesiana c˜ e a, b ∈ ObC . O objeto exponencial de a para b ´ um e objeto ba junto com um morfismo evala,b : ba × a → b, tal que para todos os morfismos f : c × a → b, existe um e somente um h : c → ba tal que o seguinte diagrama comuta: f c c×a G` b y yyy h h×id yyy yy evala,b ba ba × a
  • 123. 17 OBJETO EXPONENCIAL 123 Observa¸˜es: co • A defini¸ao de objeto exponencial sugere que ba c˜ “representa” C[a, b]; • C[t, ba ] ∼ C[t × a, b] ∼ C[a, b]; = = • Em Set, podemos dizer que a cardinalidade de B A ´ e mn , onde m ´ a cardinalidade de B e n ´ a e e cardinalidade de A. Por exemplo, se A = ∅ ent˜o a n = 0 e mn = 1. O que resulta no morfismo unico h ´ h G A em C B , j´ que, neste caso, B A ´ objeto a e terminal;
  • 124. 17 OBJETO EXPONENCIAL 124 • Em Set o objeto exponencial de A e B ´ o conjunto e das f tal que f ´ fun¸˜o de A para B; e ca • B A = Set[A, B]; • eval : B A × A → B ´ dado pela regra e eval((f, x)) = f (x); • Λ : Set[C × A, B] → Set[C, B A ] leva cada fun¸ao c˜ f : C × A → B na fun¸ao Λ(f ) : C → B A definida c˜ por Λ(f )(c) = λaf (c, a), onde λaf (c, a) ∈ B A = Set[A, B] ´ a fun¸˜o que leva e ca a ∈ A para f (c, a) ∈ B;
  • 125. 17 OBJETO EXPONENCIAL 125 • Observe-se que se a b via (i, j) ent˜o a retra¸ao ´ a c˜ e um sub-objeto de b; • Podemos estar interessados em categorias em que vale aa a, mas isto ´ imposs´ em Set pelo e ıvel Teorema de Cantor, j´ que a cardinalidade de aa ´ a e maior que a de a, desde que a = {∗}.
  • 126. 17 OBJETO EXPONENCIAL 126 Rela¸ao com Teoria da Computabilidade: c˜ • Seja {φi }i∈N = PR uma enumera¸˜o de G¨del ca o aceit´vel das fun¸˜es parciais recursivas. Ou seja, a co dada uma fun¸ao parcial recursiva f qualquer, ent˜o c˜ a existe um i tal que φi = f ; • Seja [, ] : N × N → N uma bije¸ao efetiva; c˜ • Defina f : N × N → N uma fun¸˜o bin´ria parcial ca a recursiva se e somente se ∃f ∈ PR f (x, y) = f ([x, y]);
  • 127. 17 OBJETO EXPONENCIAL 127 • Assim, f ´ parcial recursiva se e somente se e ∃s ∈ PR φs(x) (y) = f (x, y). Ent˜o, f ´ comput´vel se a e a e somente se cada argumento e a fun¸ao x → f (x, ) c˜ ´ comput´vel; e a • Isto significa que computacionalmente f est´ em a N × N → N se e somente se x → f (x, ) est´ em a N → (N → N); • Similarmente, na categoria cartesiana C vamos supor, para qualquer f : c × a → b, a existˆncia de um e morfismo que faz o mesmo que s em x → f (x, ) na teoria da recurs˜o. Este morfismo ´ o h. a e
  • 128. 17 OBJETO EXPONENCIAL 128 C ´ uma categoria cartesiana fechada (CCC) se e somente e se: 1. C ´ cartesiana; e 2. Para cada par a, b ∈ ObC existe um exponencial. • Exemplo: Set; • Contra-exemplo: EN. Basta ver que EN[N, N] = R, onde R s˜o as fun¸˜es (totais) recursivas. Ent˜o, eval a co a seria a fun¸ao universal para R, o que ´ um absurdo. c˜ e
  • 129. 17 OBJETO EXPONENCIAL 129 Teorema 5 Seja C uma CCC, ent˜o ab×c ∼ (ab )c . a =
  • 130. 17 OBJETO EXPONENCIAL 130 Teorema 6 Seja C uma CCC. Se a a via (ina : a → a , outa : a → a) e b b via (inb : b → b , outb : b → b), ent˜o ba b a via a (Λ(inb ◦ eval ◦ (id × outa )) : ba → b a , Λ(outb ◦ eval ◦ (id × ina )) : b a → ba ). Prova: Λ(outb ◦ eval ◦ (id × ina )) ◦ Λ(inb ◦ eval ◦ (id × outa )) = Λ(outb ◦ eval ◦ (id × ina ) ◦ Λ(inb ◦ eval ◦ (id × outa )) × id) = Λ(outb ◦ eval ◦ Λ(inb ◦ eval ◦ (id × outa )) × id ◦ (id × ina )) = Λ(outb ◦ (inb ◦ eval ◦ id × outa ) ◦ (id × ina )) = Λ(eval ◦ id × (outa ◦ ina )) = Λ(eval ◦ id × id) = id
  • 131. 17 OBJETO EXPONENCIAL 131 Seja C uma CCC. Um objeto V de C ´ reflexivo se e e somente se V V V .
  • 132. 17 OBJETO EXPONENCIAL 132 Teorema 7 Sejam C uma CCC e V um objeto reflexivo. Ent˜o t V e V × V V . a Prova: Seja (in : V V → V, out : V → V V ) o par de retra¸˜o entre V e V V . Para provar t V basta provar a ca existˆncia de um morfismo de t para V . Seja e p1 : t × V → V uma proje¸˜o, ent˜o Λ(p1 ) : t → V V e ca a in ◦ Λ(p1 ) : t → V . Para provar V × V V devemos provar V × V V V e V × V V segue por composi¸˜o (prova completa ca mostrada no livro).
  • 133. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 133 18 Equalizador, Produto Fibrado e Soma Amalgamada • Sejam f, g : A → B um par de fun¸oes “paralelas” c˜ em Set. O subconjunto E ⊆ A no qual f e g coincidem ´ chamado equalizador de f e g; e
  • 134. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 134 • Na linguagem de categorias, E deve ser representado por um sub-objeto, como uma seta mono i : E → A e i deve satisfazer f ◦ i = g ◦ i; E A B f i g
  • 135. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 135 • Para garantir que i represente o sub-objeto “maximal” devemos adicionalmente exigir que se h : C → A ´ outra fun¸ao tal que f ◦ h = g ◦ h, ent˜o e c˜ a h “fatora” de forma unica por meio de i, ou seja, ´ existe apenas um k : C → E tal que h = i ◦ k.
  • 136. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 136 E A B f i g k h C
  • 137. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 137 Dado um par de morfismos f, g ∈ C[a, b], um equalizador de f e g ´ um par (e, i), e ∈ ObC e i ∈ C[e, a] tal que: e 1. f ◦ i = g ◦ i; 2. Para todo h ∈ C[c, a], f ◦ h = g ◦ h implica que existe um unico k ∈ C[c, e] tal que i ◦ k = h. ´ f i Ga G e y c Gb ÐÐÐ g k ÐÐÐ ÐÐ h c Observa¸˜o: Chamamos h de pr´-equalizador. ca e
  • 138. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 138 O conceito dual de equalizador ´ o co-equalizador (basta e inverter as setas).
  • 139. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 139 Teorema 8 Todo equalizador ´ mono. e Prova: Seja i : e → a um equalizador de f, g : a → b. Assim, f ◦ i = g ◦ i. Sejam j, l : c → e tal que i ◦ j = i ◦ l (hip´tese). Desde que o f ◦ (i ◦ j) = (f ◦ i) ◦ j = (g ◦ i) ◦ j = g ◦ (i ◦ j) ent˜o i ◦ j a ´ um pr´-equalizador de f e g e existe um unico k : c → e e e ´ tal que i ◦ j = i ◦ k. Assim, j = k = l. f i Ga G e y Gb ÐÐc g k ÐÐÐ ÐÐÐ i◦j c
  • 140. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 140 Teorema 9 Todo equalizador epi ´ iso. e Prova: Seja i : e → a um equalizador de f, g : a → b. Como i ´ epi e f ◦ i = g ◦ i, ent˜o f = g. Logo, a e a identidade ida equaliza f e g (´ um pr´-equalizador) e e e existe um unico k : a → e tal que ida = i ◦ k. Al´m disto, ´ e i ◦ k ◦ i = ida ◦ i = i = i ◦ ide e desde que i ´ mono (pelo e Teorema 8) ent˜o k ◦ i = ide . a e i G a f =g G b y c ÐÐÐ k ÐÐÐ ÐÐ ida a
  • 141. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 141 • Queremos generalizar os equalizadores para morfismos com diferentes origens; • Este conceito se chama produto fibrado (pullback ); • O produto fibrado ´ uma das no¸˜es mais poderosas e co de Teoria das Categorias.
  • 142. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 142 Dadas duas setas f : b → a e g : c → a com destino comum a, o produto fibrado de (f, g) ´ um objeto b ×a c e e duas setas p : b ×a c → b e q : b ×a c → c tal que: 1. f ◦ p = g ◦ q, onde f ◦ p, g ◦ q : b ×a c → a; 2. Para qualquer outra tripla (d, h : d → b, k : d → c) tal que g ◦ k = f ◦ h, existe uma unica seta ´ h, k a : d → b ×a c tal que p◦ h, k a = h e q◦ h, k a = k.
  • 143. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 143 d ii ii k i h,ka ii4 6G b ×a c q c h p g 0 f b Ga
  • 144. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 144 Observa¸˜es: co • O “quadrado” de baixo ´ chamado de “quadrado do e produto fibrado” (“pullback square”); • Note a semelhan¸a entre o produto fibrado e o c produto; • Na verdade, o produto ´ um caso particular de e produto fibrado;
  • 145. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 145 • Observe que os subscritos “a” indicam dependˆncia e de b ×a c e h, k a sobre f e g, mas os subscritos n˜o s˜o opcionais pois a nota¸˜o deve indicar quando a a ca se trata de um produto fibrado; • Exemplo de produto fibrado em Set: o produto fibrado de (f : B → A, g : C → A) ´ e ({(x, y)|x ∈ B, y ∈ C, f (x) = g(y)}, p1 , p2 ), onde p1 ((x, y)) = x e p2 ((x, y)) = y.
  • 146. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 146 O conceito dual de produto fibrado ´ a soma e amalgamada (pushout).
  • 147. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 147 Teorema 10 Seja C uma categoria com objeto terminal t. Se C tem produtos fibrados para todo par de setas, ent˜o C tamb´m tem produtos para todo par de objetos. a e Prova: (esbo¸o) Dados a, b ∈ C, seja c (a × b, p1 : a × b → a, p2 : a × b → b) um produto fibrado ´ a de (!a : a → t, !b : b → t). E f´cil verificar que este ´ um e produto.
  • 148. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 148 Teorema 11 Se uma categoria C tem produtos fibrados para todo par de setas e tem objeto terminal, ent˜o tem a um equalizador para todo par de setas. Prova: Sejam f, g : a → b. Seja (c, fst : c → a, snd : c → a) um produto fibrado de ( f, ida : a → b × a, g, ida : a → b × a). Ent˜o o a equalizador de f, g ´ (c, fst = snd). Pois, e f ◦ fst = p1 ◦ f ◦ fst, fst = p1 ◦ f, ida ◦fst = p1 ◦ g, ida ◦snd = p1 ◦ g ◦ snd, snd = g ◦ snd. Al´m disto, e para qualquer (c , h : c → a) tal que f ◦ h = g ◦ h, tamb´m e f, ida ◦h = g, ida ◦h, e por defini¸˜o de produto ca fibrado, existe um unico k : c → c tal que fst ◦ k = h. ´
  • 149. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 149 Lema 1 (Lema do Produto Fibrado - Pullback Lemma - PBL) Se um diagrama da forma: ◦ G◦ G◦ ◦ G◦ G◦ comuta, ent˜o: a 1. Se os dois quadrados menores s˜o produtos fibrados, a ent˜o o retˆngulo externo ´ um produto fibrado; a a e 2. Se o retˆngulo externo e o quadrado a direita s˜o a a produtos fibrados, ent˜o o quadrado a esquerda ´ um a e produto fibrado.
  • 150. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 150 Teorema 12 Se o quadrado: b ×a c Gc q p g f b Ga ´ um produto fibrado e g ´ mono, ent˜o p tamb´m ´ e e a e e mono.
  • 151. 18 EQUALIZADOR, PRODUTO FIBRADO E SOMA AMALGAMADA 151 Observa¸˜es: co • Esta ultima propriedade sugere uma generaliza¸ao de ´ c˜ uma constru¸ao conjunto-teor´tica; c˜ e • Se f : A → B ´ uma fun¸ao e C ⊆ B, ent˜o a e c˜ a imagem inversa de C sob f , denotada por f −1 (C) ´ o e subconjunto de A definido como ´ a f −1 (C) = {x|x ∈ A, f (x) ∈ C}. E f´cil mostrar que o diagrama: f∗ f −1 (C) GC in in f A GB ´ um quadrado de produto fibrado em Set. e
  • 152. 19 MORFISMOS PARCIAIS 152 19 Morfismos Parciais • Aplicar Teoria das Categorias no contexto de Teoria da Computabilidade; • Neste contexto, a no¸˜o de parcialidade aparece ca naturalmente pois programas de computador podem eventualmente n˜o terminar; a
  • 153. 19 MORFISMOS PARCIAIS 153 • Uma fun¸ao parcial f : A → B com campo de c˜ defini¸˜o D ⊆ A pode ser representada por um par ca de fun¸oes totais (i : D → A, h : D → B), onde i ´ c˜ e uma inje¸ao e h ´ a restri¸ao de f para D. c˜ e c˜
  • 154. 19 MORFISMOS PARCIAIS 154 Dados uma categoria C e dois objetos a e b, um mapeamento parcial [m, h] : a → b ´ uma classe de e equivalˆncia de pares (m : d → a, h : d → b), onde m ´ e e mono, com respeito a seguinte rela¸ao R: c˜ (m : d → a, h : d → b)R(m : d → a, h : d → b) se e somente se existir k : d → d, k iso, m = m ◦ k e h = h ◦ k.
  • 155. 19 MORFISMOS PARCIAIS 155 • Desejamos definir a categoria pC, de mapeamentos parciais sobre C; • Um problema ´ definir as composi¸oes; e c˜ • Se C tem produtos fibrados para todo par de setas, podemos resolver o problema;
  • 156. 19 MORFISMOS PARCIAIS 156 • Dados (n : e → b, k : e → c) e (m : d → a, h : d → b); • Defina [n, k] ◦ [m, h] : a → c a classe de equivalˆncia e determinada pelos lados mais externos do seguinte diagrama, ou seja, (m ◦ n : d ×b e → a, k ◦ h : d ×b e → c), onde o quadrado ´ um produto fibrado: e h Ge k Gc d ×b e n n d Gb h m a • Pelo Teorema 12, como n ´ mono, n tamb´m o ´. e e e
  • 157. 19 MORFISMOS PARCIAIS 157 Exemplo em Set: • Supomos D ⊆ A e E ⊆ B e tomamos m : D → A e n : E → B como as inje¸oes canˆnicas; c˜ o • Ent˜o, D ×B E = {(x, y)|x ∈ D, y ∈ E, h(x) = a n(y)} = {(x, y)|x ∈ D, y ∈ E, h(x) = y} ∼ {x|x ∈ = D, h(x) ∈ E}, ou seja, o campo de defini¸ao da c˜ fun¸˜o composta; ca • Concluimos que, para todo x ∈ {x|x ∈ D, h(x) ∈ E}, temos k(h (x)) = k(h(x)), como era necess´rio. a
  • 158. 19 MORFISMOS PARCIAIS 158 Toda seta f ∈ C[a, b] tem naturalmente uma seta associada em pC, isto ´, (id : a → a, f : a → b). e
  • 159. 20 ¸˜ FUNTORES E TRANSFORMACOES NATURAIS 159 20 Funtores e Transforma¸oes c˜ Naturais