Teoria das categorias

Origem: Wikipédia, a enciclopédia livre.

Na matemática, a teoria das categorias provê uma linguagem interdisciplinar capaz de delinear resultados e construções gerais, separando-os dos específicos a cada área, possibilitando a simplificação e clarificação de demonstrações. A teoria centra-se nos conceitos de categoria, que é uma abstração do conceito de composição de funções, de functor, transformações entre categorias, e de transformação natural, a qual provê um significado preciso para expressões como "natural" e "canônico".[1]

O conceito de categorias, functores e transformações naturais, em maior generalidade, foi introduzido por Samuel Eilenberg e Saunders Mac Lane, em 1945, em seu artigo "General Theory of Natural Equivalences". Nos anos seguintes, a teoria das categorias foi empregada na topologia algébrica e álgebra homológica, por Norman Steenrod, Alexander Grothendieck e outros. Em 1958, Daniel Kan descobre o conceito de functores adjuntos, que, segundo Mac Lane, são "onipresentes na matemática".[2][3][4][5] Desde então, houve diversos desenvolvimentos.[6]

Sendo de alto nível de abstração, é recomendada, antes do estudo de teoria das categorias, familiaridade de conceitos básicos de álgebra linear, álgebra abstrata e topologia, por exemplo.[1]

Categoria[editar | editar código-fonte]

Ver artigo principal: Categoria (teoria das categorias)

Uma categoria C consiste nos seguintes elementos:

  • Uma coleção de objetos de C.
  • Para cada dupla a, b de objetos, uma coleção de setas (ou morfismos) do domínio (ou origem) a até o contradomínio (ou destino) b, para as quais são usadas a notações f : ab e f ∈ homC(a, b).
  • Para cada objeto a, uma seta de a até a, chamada identidade 1a : aa.
  • Para cada tripla de objetos a, b, c, uma operação de composição, levando
    cada seta f : ab e cada seta g : bc a uma seta gf : ac.
  • Devem ser satisfeitas as igualdades:
    (Lei da identidade) Para todos objetos a, b e todas as setas f : ab, vale 1bf = f = f ∘ 1a.
    (Associatividade) Para todos objetos a, b, c, d e todas as setas f : ab, g : bc e h : cd, vale (hg) ∘ f = h ∘ (gf).[7][8][9]

Há, por exemplo, categorias:

  • cujos objetos são conjuntos, e cujos morfismos são funções entre conjuntos;
  • cujos objetos são grupos, e cujos morfismos são homomorfismos de grupos;
  • cujos objetos são espaços topológicos, e cujos morfismos são funções contínuas;
  • cujos objetos são os elementos de um conjunto pré-ordenado fixo (P, ≤), e tal que, para quaisquer objetos x, yP, o número de morfismos xy é exatamente um se xy, e zero se ¬ (xy).[10]
  • cujos objetos são vértices de um grafo, e cujos morfismos são caminhos nesse grafo.[11]

Nestes dois últimos exemplos, percebe-se que os objetos podem não ter "elementos", e os morfismos podem não ter relação com funções.

O diagrama acima é comutativo exatamente quando f = gh.

Para a representação de relações entre os morfismos, usam-se diagramas consistindo de alguns dos objetos e setas de uma categoria; uma sequência de setas, cada uma tendo destino coincidindo com a origem da seguinte, representa a composição de morfismos correspondentes. Um desses diagramas é chamado diagrama comutativo quando quaisquer duas sequências de setas que iniciam num mesmo objeto, e que terminam também num mesmo objeto, têm composições iguais.[12][13]

Dualizar consiste em inverter o sentido de cada uma das setas em um diagrama; cada categoria tem uma categoria oposta. Desse modo, os teoremas e definições em teoria das categorias se organizam em duplas, um enunciado sendo obtido do outro trocando cada categoria pela oposta; por exemplo, um epimorfismo é um monomorfismo na categoria oposta, um coproduto é um produto na categoria oposta etc.[14]

Tipos de morfismos[editar | editar código-fonte]

Como os objetos de uma categoria podem não ter "elementos", generalizações de conceitos como função injetiva e função sobrejetiva devem envolver somente setas, e pode haver mais de uma generalização possível.

Teoria das categorias Como uma categoria consiste de setas, nossa disciplina também poderia ser descrita como aprender como viver sem elementos, usando setas em vez deles. Teoria das categorias

Saunders Mac Lane[15]

Como exemplo, generalizando o conceito de função injetiva, um morfismo f : ab é chamado monomorfismo se e só se

para todo objeto c e morfismos g, h : ca satisfazendo fg = fh, vale g = h.

Na categoria dos conjuntos, na categoria dos grupos e na categoria dos espaços topológicos, os monomorfismos são exatamente as funções injetivas.[16] Já um morfismo f : ab é chamado seção se e só se existe g : ba tal que gf = 1a. Toda seção é um monomorfismo, mas a recíproca pode falhar; com efeito, na categoria dos grupos abelianos, as seções são exatamente os homomorfismos de grupos abelianos f : AB que são injetivos e tais que B é a soma direta da imagem de f com algum subgrupo de B.[17]

Dualizando, um morfismo f : ba é um epimorfismo se e só se

para todo objeto c e morfismos g, h : ac satisfazendo gf = hf, vale g = h.

Na categoria dos conjuntos, os epimorfismos são precisamente as funções sobrejetivas. Na categoria dos anéis, no entanto, a inclusão ℤ → ℚ é um epimorfismo não sobrejetivo.[18]

Como outro exemplo, um isomorfismo é um morfismo f : ab tal que há g : ba satisfazendo gf = 1a e fg = 1b. Na categoria dos espaços topológicos, os isomorfismos são precisamente os homeomorfismos.[19]

Propriedade universal[editar | editar código-fonte]

Ver artigo principal: Propriedade universal

Construções como produto cartesiano, soma direta, e espaço funcional podem ser generalizadas para todas as categorias. Com exemplo, dados objetos a, b numa categoria C, um objeto a × b, junto a morfismos pa : a × ba e pb : a × bb, forma um sistema de produto categorial (binário) se e só se, para qualquer outro objeto c e quaisquer morfismos f : ca e g : cb, existe único morfismo h : ca × b tal que pah = f e pbh = g.

Diagrama representado o produto categorial.

Dualmente, há o conceito de coproduto (binário). Na categoria dos conjuntos, os produtos correspondem aos produtos cartesianos, e os coprodutos correspondem às uniões disjuntas. Na categoria dos grupos abelianos, os produtos e coprodutos binários coincidem, e são chamados de soma direta.[20][21]

Uma propriedade universal é uma propriedade que envolve a existência de único morfismo que faz certo diagrama comutar. Maneiras de definir rigorosamente o conceito incluem functores representáveis e limites e colimites.[22][23]

Functor[editar | editar código-fonte]

Ver artigo principal: Functor
Teoria das categorias […] sempre que novos objetos abstratos são construídos de uma maneira especificada a partir de outros, é recomendado tratar a construção dos mapeamentos induzidos correspondentes nesses novos objetos como parte integral de sua definição. Teoria das categorias

Samuel Eilenberg, Saunders Mac Lane[24]

Um functor é uma correspondência entre objetos de duas categorias que pode ser estendida a uma correspondência entre morfismos, de modo que sejam preservadas as identidades e as composições. Mais precisamente, dadas categorias C e D, um functor (covariante) de C até D, escrito F : CD, consiste

  • de uma atribuição, a cada objeto xC, de um objeto F(x) ∈ D,
  • de uma atribuição, a cada morfismo f : xy, de um morfismo Fx, y(f) = F(f) : F(x) → F(y),

satisfazendo

  • F(1x) = 1F(x) para cada objeto xC,
  • F(gf) = F(g) ∘ F(f) para cada dupla de morfismos f : xy e g : yz.

Exemplos de correspondências que podem ser estendidas a functores são: a correspondência entre cada conjunto A e seu conjunto de partes P(A) (levando cada f : AB à função f = (SA) ↦ {f(x) | xS}, de imagens de subconjuntos de A); a correspondência entre cada anel comutativo K e seu grupo de matrizes invertíveis GLn(K) de ordem n.[25]

Noutros casos, há um functor contravariante, atribuindo um morfismo F(f) : F(y) → F(x) a cada morfismo f : xy, e invertendo a ordem das composições. Exemplos de correspondências que podem ser estendidas a functores contravariantes são: a correspondência entre cada conjunto e seu conjunto de partes (levando cada f : AB à função f = (TB) ↦ {y | f(y) ∈ T}, de pré-imagens de subconjuntos de B); a correspondência entre cada espaço vetorial e seu espaço dual; a correspondência entre cada anel comutativo e seu espaço de ideais primos.[26]

Transformação natural[editar | editar código-fonte]

Teoria das categorias Não é muito enganoso, pelo menos historicamente, dizer que categorias são o que deve ser definido para definir functores, e que functores são o que deve ser definido para definir transformações naturais. Teoria das categorias

Peter Freyd[27]

Intuitivamente, uma transformação natural é uma família de morfismos numa categoria dados simultaneamente por uma mesma definição, sem depender de escolhas "arbitrárias". Por exemplo, para cada V espaço vetorial, há mapeamento linear natural e de V ao dual de seu dual, dado por e(v) = ff(v). Mais precisamente, uma transformação natural entre functores F, G : CD é uma família de morfismos ηX : F(X) → G(X), para cada X objeto de C, satisfazendo

para qualquer morfismo f : XY, ηYF(f) = G(f) ∘ ηX.[28]
Diagrama comutativo da condição de naturalidade.

Eis exemplos:

  • A projeção GG∕[G, G] de cada grupo em sua abelianização (quociente pelo subgrupo comutador) pode ser representada como uma transformação natural.[29]
  • A dualidade de Pontryagin pode ser descrita como a existência de isomorfismo natural GG∧∧, para cada G grupo abeliano localmente compacto, onde H denota o grupo topológico dos homomorfismos contínuos de H a 𝕋, grupo multiplicativo dos complexos de valor absoluto um.[30]

Functores e transformações naturais permitem definir o conceito de equivalência de categorias.

Adjunção[editar | editar código-fonte]

Uma adjunção entre functores F : CD e G : DC é uma família natural de isomorfismos, para quaisquer objetos c de C e d de D,

Neste caso, diz-se que F é adjunto esquerdo e G é adjunto direito. Exemplos de adjunções incluem:

  • Sendo C = Set a categoria de conjuntos e D = K-Vet a categoria de espaços vetoriais sobre um corpo fixo K, a adjunção
    onde K[S] é um espaço vetorial de base indexada pelo conjunto S, e G(V) é o conjunto de elementos do espaço vetorial V.[31]
  • Sendo C = Set a categoria de conjuntos e D = Grp a categoria de grupos, a adjunção
    onde F(S) é o grupo livre no conjunto S, e G(H) é o conjunto de elementos do grupo H.
  • Sendo D = CompMet a categoria dos espaços métricos completos (cujos morfismos são os mapeamentos uniformemente contínuos) e C = Met a categoria dos espaços métricos, a adjunção
    onde K(M) é a completação do espaço métrico M, e G(N) = N.[32]
  • Sendo C = D = Ab a categoria dos grupos abelianos, e sendo H grupo abeliano fixo, a adjunção
    onde denota o produto tensorial entre grupos abelianos, e Hom(H, B) denota o grupo abeliano de homomorfismos de grupo HB.[33]
  • Sendo C = Top a categoria dos espaços topológicos e D = CHaus a categoria dos espaços compactos de Hausdorff, a adjunção
    onde F(X) é a compactificação de Stone–Čech de X, e G(K) = K.[34]

Se um functor F : CD é adjunto esquerdo a G : DC, a composição GF : CC faz parte de uma mônade em C.[35]

Aplicações[editar | editar código-fonte]

Abaixo, seguem algumas aplicações elementares da teoria das categorias.

  • Functores são usados para expressar conceitos de topologia algébrica; com efeito, foi nessa área que o conceito começou a ser reconhecido.[36]
  • Os teoremas do functor adjunto podem ser usados para demonstrar a existência (e propriedades) de grupos livres, monoides livres, anéis livres etc. (mas não "corpos livres", que não existem), da compactificação de Stone–Čech e de "maiores quocientes de Hausdorff".[37][38]
  • Como adjuntos esquerdos são functores cocontínuos, F(A ⨿ B) ≅ F(A) ∗ F(B), onde F(_) denota o grupo livre, ⨿ denota a união disjunta, e denota o produto livre (coproduto de grupos).
  • Se M é um (R, S)-bimódulo, o functor MS _ é adjunto esquerdo, logo cocontínuo, e em particular é functor exato direito (não "exato esquerdo"); isto tem aplicações à álgebra homológica.[39]
  • O grupo p dos inteiros p-ádicos pode ser descrito como o limite do functor representado diagramaticamente por
    e o grupo ℤ[1p]∕ℤ de Prüfer pode ser descrito como o colimite do functor representado diagramaticamente por[1]
  • Mônades são usadas na linguagem de programação Haskell para modelar, por exemplo, a manipulação de estado global e o não determinismo.[40]
  • Tom Leinster emprega teoria das categorias para construir um objeto inicial numa categoria envolvendo espaços de Banach, dando, assim, uma caracterização alternativa do espaço L1([0 … 1]) das funções Lebesgue-integráveis no intervalo [0 … 1].[41]

Referências

  1. a b c (RIEHL 2014, Prefácio)
  2. (MAC LANE 1998, §I, notas)
  3. (MAC LANE 1998, Introdução)
  4. (MAC LANE 1998, §IV, notas)
  5. «Category Theory». Stanford Encyclopedia of Philosophy. Consultado em 20 de abril de 2020 
  6. (DUREN 1988, Concepts and Categories in Perspective by Saunders Mac Lane)
  7. (MAC LANE, §I.1, §I.2)
  8. (RIEHL, §1.1)
  9. (ADÁMEK, §I.3.1)
  10. (MAC LANE 1998, §I.1, §I.2)
  11. (MAC LANE 1998, §II.7)
  12. (ADÁMEK 2004, §I.3.4)
  13. (RIEHL 2014, §1.6)
  14. (RIEHL 2014, §1.2)
  15. (MAC LANE 1998, Prefácio). Texto original: "Since a category consists of arrows, our subject could also be described as learning how to live without elements, using arrows instead."
  16. (ADÁMEK 2004, §II.7.32)
  17. (ADÁMEK 2004, §II.7.20)
  18. (ADÁMEK 2004, §II.7.40)
  19. (RIEHL 2014, §1.1)
  20. (ADÁMEK 2004, §III.10.20)
  21. (ADÁMEK 2004, §III.10.67)
  22. (RIEHL 2014, §2)
  23. (RIEHL 2014, §3)
  24. (EILENBERG 1945, p. 236). Texto original: […] whenever new abstract objects are constructed in a specified way out of given ones, it is advisable to regard the construction of the corresponding induced mappings on these new objects as an integral part of their definition.
  25. (MAC LANE 1998, §I.3)
  26. (RIEHL 2014, §1.3)
  27. (FREYD 1964, Introdução). Texto original: It is not too misleading, at least historically, to say that categories are that one must define in order to define functors, and that functors are what one must define in order to define natural transformations.
  28. (RIEHL 2014, §1.4)
  29. (MAC LANE 1998, §I.4)
  30. «Pontrjagin dual – nLab». Consultado em 20 de abril de 2020 
  31. (RIEHL 2014, §4)
  32. (MAC LANE 1998, §IV.2)
  33. (RIEHL 2014, §4.3)
  34. (MAC LANE 1998, §V.8)
  35. (RIEHL 2014, §5.1)
  36. (MAC LANE 1998, §I.3)
  37. (MAC LANE 1998, §V.5, V.8)
  38. (RIEHL 1998, §4.6)
  39. (RIEHL 1998, §4.5)
  40. Wadler, Philip (agosto de 2001). «Monads for functional programming» (PDF). Departamento de ciência da computação, Universidade de Glásgua. Consultado em 28 de fevereiro de 2020 
  41. Leinster, Tom (maio de 2006). «A universal Banach space». Consultado em 22 de abril de 2020 

Bibliografia[editar | editar código-fonte]