Kategoriateoria

Kategoriateoria on matematiikan osa-alue, joka tutkii matemaattisia rakenteita keskittymällä objektien välisiin suhteisiin ja yhteyksiin. Kategoriateorian peruskäsite on kategoria, jonka voidaan ajatella olevan tietty matemaattinen konteksti, jossa käsillä olevan matemaattisen teorian diskurssi tapahtuu. Kategorioita tavataan lähes kaikilla matematiikan osa-alueilla, joten kategoriateoreettisia käsitteitä ja tuloksia voidaan käyttää matemaattisten teorioiden jäsentelyyn ja tutkimiseen. Kategorioita voidaan kuitenkin tutkia myös itsenäisinä olioina, ilman suoraa yhteyttä muihin matematiikan osa-alueisiin.

Yonedan lemman isomorfismin määrittelevä kommutatiivinen kaavio.

Kategoriateorian keskiössä ovat niin sanotut universaaliominaisuudet: oliot määritellään suhteessa kaikkiin tietyn kontekstin (eli kategorian) olioiden suhteen.[1] Tällä tavoin määritellyt oliot eivät siis ole olemassa itsenäisesti, vaan oleellisella tavalla riippuvat ja sisältävät informaatiota siitä kontekstista tai teoriasta, johon kuuluvat. Tärkeä kategoriateoreettinen tulos on Yonedan lemma, joka karkeasti ottaen sanoo, että kaikki kategorian objektit määräytyvät yksikäsitteisesti universaaliominaisuuksiensa kautta.[2]

Kategoriateoria syntyi puhtaan matematiikan osa-alueena homologisen algebran tarpeisiin, minkä jälkeen sitä on sovellettu ja kehitetty matematiikan sisällä muun muassa algebrallisen topologian, algebran ja matemaattisen logiikan yhteydessä. Tämän lisäksi kategoriateoriaa on sovellettu matematiikan ulkopuolella muun muassa tietojenkäsittelytieteessä, fysiikassa, teoreettisessa biologiassa, systeemiteoriassa ja kieliteknologiassa.

Historia ja motivaatioMuokkaa

Saunders Mac Lane ja Samuel Eilenberg määrittelivät funktorit ja luonnolliset isomorfismit ryhmäteorian kontekstissa artikkelissaan vuodelta 1942. Heidän tarkoituksensa oli homologisessa algebrassa usein esiintyneiden "luonnollisten isomorfismien" systematisointi ja täsmällinen määrittely. Näiden määrittelemistä varten tarvittiin funktorin määritelmä, mikä puolestaan johti heidät esittelemään esimerkkejä luonnollisista muunnoksista muilta matematiikan osa-alueilta heidän seuraavassa artikkelissaan vuodelta 1945. Tässä artikkelissa myös määriteltiin kategoria ensimmäisen kerran.[3]

KategoriatMuokkaa

Pääartikkeli: Kategoria (matematiikka)

Kategoria on kategoriateorian perusyksikkö, joka koostuu objekteista sekä näiden välisistä morfismeista. Morfismit voidaan ajatella prosesseina, joilla on lähtöpiste tietyssä oliossa (morfismin lähtöobjekti) sekä päätepiste jossakin toisessa oliossa (morfismin maaliobjekti). Morfismien ja objektien määritelmä on kuitenkin täysin formaali eikä edellytä tällaista intuitiota. Kategorian mille tahansa objektille on olemassa identiteettimorfismi, ja mitkä tahansa kaksi peräkkäistä morfismia voidaan yhdistää yhdisteeksi. Lisäksi pätevät identiteettilaki ja liitäntälaki: minkä tahansa morfismin yhdiste identiteettimorfismin kanssa on sama kuin kyseinen morfismi, ja yhdisteen järjestyksellä ei ole väliä (katso kategorian täsmällinen määritelmä).

Yleisiä periaatteitaMuokkaa

Kommutatiiviset kaaviotMuokkaa

 
Esimerkki kommutatiivisesta kaaviosta. Kommutatiivisuus tarkoittaa tässä tapauksessa, että  .

Kategoriateorian tunnusomaisin merkintä ja samalla tärkeä todistustekniikka on kommutatiivinen kaavio. Tässä kontekstissa kaavioita (kommutatiivisia tai ei) käytetään yleensä epämuodollisesti, mutta mikä tahansa kaavio voitaisiin periaatteessa esittää muodollisesti kaavion määritelmän avulla.

Kaavio koostuu objekteista, joita merkitään pistein tai kirjaimin, esimerkiksi   ja  , ja näiden välisistä morfismeista, joita merkitään nuolin, esimerkiksi   ja  . Kaavio on kommutatiivinen, jos kaikki kaavion morfismit kaavion minkä tahansa kahden objektin välillä (mukaan lukien yhdisteet) ovat yhtä suuria. Toisin sanoen kommutatiivisessa kaaviossa ei ole väliä, mitä "reittiä" (eli morfismien yhdisteitä) yhdestä objektista päädytään toiseen.[4] Yllä olevassa esimerkissä kommutatiivisuus tarkoittaisi, että  .

Universaaliominaisuudet ja yksikäsitteisyys isomorfismia vailleMuokkaa

Koska kategoriateoria keskittyy objektien (ja morfismien) keskinäisiin suhteisiin, tietty objekti tai morfismi määritellään yleensä suhteessa muihin kategorian objekteihin tai morfismeihin. Tällöin puhutaan objektin tai morfismin universaaliominaisuudesta.[1] Universaaliominaisuuden kautta määriteltyä objektia tai morfismia kutsutaan vastaavasti universaaliobjektiksi tai universaalimorfismiksi.

Esimerkiksi alkuobjekti määritellään universaaliominaisuuden kautta: objekti   on alkuobjekti mikäli mille tahansa objektille   on olemassa täsmälleen yksi morfismi  .

Objekteille (ja morfismeille), jotka on määritelty universaaliominaisuuden kautta, on tyypillistä yksikäsitteisyys, mikäli isomorfisten objektien katsotaan olevan "yhtä suuria" tai "samoja".[5] Täsmällisesti, määritellään objektien yksikäsitteisyys isomorfismia vaille ominaisuuden   suhteen seuraavasti: mikäli sekä objektilla   että objektilla   on ominaisuus  , niin on olemassa isomorfismi  :sta  :hen (eli siis myös isomorfismi  :stä  :hen). Tätä tiukempi käsite on yksikäsitteisyys yksikäsitteistä isomorfismia vaille, joka määritellään muuten samalla tavalla kuin yksikäsitteisyys isomorfismia vaille, mutta objektien välinen isomorfismi on lisäksi yksikäsitteinen.

Esimerkiksi alkuobjekti, mikäli se on olemassa, on yksikäsitteistä isomorfismia vaille yksikäsitteinen.

Vastakkainen kategoria ja duaalisuusMuokkaa

Olkoon   kategoria. Tällöin sen vastakkainen kategoria   määritellään siten että  , ja jokaiselle objektiparille   olkoon  .[6] Selvästi  .

Tärkeä kategoriateoreettinen käsite on duaalisuus: mitä tahansa lausetta tai käsitettä, joka pätee tai on määritelty jossakin kategoriassa, vastaa lause tai käsite vastakkaisessa kategoriassa, jota kutsutaan duaalilauseeksi tai -käsitteeksi.[7] Esimerkiksi yllä mainituista käsitteistä alku- ja loppuobjekti sekä mono- ja epimorfismi ovat toistensa duaalikäsitteitä. Täsmällisesti, erään kategorian objekti on alkuobjekti jos ja vain jos se on loppuobjekti vastakkaisessa kategoriassa, ja morfismi on monomorfismi jos ja vain jos se on epimorfismi vastakkaisessa kategoriassa.

Tietyn käsitteen duaalikäsitteen nimi muodostetaan usein, muttei kuitenkaan aina, lisäämällä kyseisen käsitteen nimen eteen ko-etuliite.

FunktoritMuokkaa

Myös kategoriat muodostavat kategorian, jonka morfismeina ovat funktorit.

Olkoot   ja   kategorioita. Funktori   kategoriasta   kategoriaan   koostuu seuraavista kuvauksista:[8]

  • jokaiselle objektille  , objekti  , ja
  • jokaiselle  :n morfismille   kategorian   morfismi  ,

jotka lisäksi toteuttavat seuraavat ehdot:

  • identiteetin säilytys: jokaiselle objektille   pätee  , ja
  • yhdisteen säilytys: jokaiselle  :n morfismiparille   ja   pätee  .

Erityisiä funktoreitaMuokkaa

Olkoon   funktori. Määritellään jokaiselle objektiparille   kuvaus   siten että  . Funktori   on

  • täysi mikäli jokaiselle objektiparille  , kuvaus   on surjektio,[9]
  • uskollinen mikäli jokaiselle objektiparille  , kuvaus   on injektio,[9]
  • täysin uskollinen mikäli se on sekä täysi että uskollinen,[10]
  • oleellisesti surjektio objekteille mikäli jokaiselle objektille   on olemassa objekti   siten että   ja   ovat isomorfisia.[11]

EsimerkkejäMuokkaa

  • Mille tahansa (ei tyhjille) kategorioille   ja   sekä objektille   voidaan määritellä vakiofunktori  , jonka arvo kaikilla  :n objekteilla on   ja kaikilla  :n morfismeilla  .

Luonnolliset muunnoksetMuokkaa

Kahden kategorian väliset funktorit voidaan niin ikään järjestää kategoriaksi. Morfismeiksi tarvitaan tällöin luonnolliset muunnokset. Itse asiassa Eilenbergin ja Mac Lanen alkuperäinen motivaatio oli algebrallisessa topologiassa käytettyjen "luonnollisten" kuvausten täsmällinen määritelmä, jota varten he määrittelivät sekä kategoriat että funktorit.

Olkoot   funktoreita. Luonnollinen muunnos   koostuu  :n morfismista   jokaiselle  :n objektille  , siten että jokaiselle  :n morfismille   pätee  . Toisin sanottuna jokaiselle morfismille   kaavio

on kommutatiivinen.[12]

Luonnollisesta muunnoksesta käytetään myös suomenkielistä nimeä luonnollinen transformaatio (engl. natural transformation).[13]

Yksittäistä morfismia  , joka on osa luonnollista muunnosta, kutsutaan  :n komponentiksi, tai täsmällisemmin  -komponentiksi.[12]

Luonnollista muunnosta, jonka jokainen komponentti on isomorfismi, kutsutaan luonnolliseksi isomorfismiksi.[14] Luonnolliset isomorfismit ovat isomorfismeja kategoriassa, jonka muodostavat kahden kategorian väliset funktorit sekä näiden väliset luonnolliset muunnokset.

Kategorioiden ekvivalenssiMuokkaa

Koska (pienet) kategoriat ja funktorit muodostavat (suuren) kategorian, isomorfismin määritelmä pätee myös funktoreille. Kategorioiden isomorfisuus yhtenevyyden mittana on kuitenkin useissa tilanteissa liian tiukka, sillä se sivuuttaa sen faktan, että kategorioiden kategoriassa jokainen objekti omaa kategorian rakenteen. "Oikeampi", tai ainakin käytännällisempi, yhtenevyyden mitta onkin kategorioiden ekvivalenssi, joka muistuttaa muodoltaan topologisten avaruuksien homotopiaekvivalenssia.

Olkoot   ja   kategorioita. Tällöin kategorioiden   ja   ekvivalenssi koostuu seuraavista:

  • funktori  ,
  • funktori  ,
  • luonnollinen isomorfismi  ,
  • luonnollinen isomorfismi  .[15]

Rajat ja korajatMuokkaa

 
Kaavion   rajaa ja korajaa havainnollistava piirros.

Kaaviot ja kartiotMuokkaa

Olkoon   pieni kategoria. Tällöin funktoria   kutsutaan  :n muotoiseksi kaavioksi kategoriassa  . Kategoriaa   kutsutaan kaavion indeksikategoriaksi.[12]

Kaavion   kartio on luonnollinen muunnos  . Objektia   kutsutaan kartion kärjeksi ja luonnollisen muunnoksen komponentteja   kartion särmiksi.[12] Yksityiskohtaisesti kartio koostuu siis objektista   ja kokoelmasta morfismeja   jokaiseen objektin   kuvaan, siten että jokaiselle  :n morfismille   kaavio

on kommutatiivinen.

Merkitään   kartiota, jonka kärki on   ja luonnollinen muunnos  . Määritellään kartiomorfismi kartiosta   kartioon   morfismina   siten että  , jossa   on vakio luonnollinen muunnos, jonka jokainen komponentti on  .[12] Yksityiskohtaisesti ehto, jonka  :n pitää toteuttaa ollakseen kartiomorfismi   on: jokaiselle objektille   pätee  . Jokaisen kaavion   kartiot ja kartiomorfismit muodostavat kategorian, jota merkitään   ja jota kutsutaan kaavion   kartiokategoriaksi.[12]

RajatMuokkaa

Raja voidaan määritellä hyvin lyhyesti kartiokategorian avulla: kaavion   raja on kategorian   loppuobjekti.[16] Huomataan, että kaikilla kaavioilla ei välttämättä ole rajaa, sillä kartiokategoriassa ei välttämättä ole loppuobjektia. Tästä määritelmästä seuraa, että raja on yksikäsitteistä isomorfismia vaille yksikäsitteinen.

Koska yllä annettu rajan määritelmä on hyvin tiivis, rajan käsitteen merkitys ei välttämättä avaudu siitä. Näin ollen annetaan seuraavaksi yksityiskohtaisempi, mutta yhtäpitävä määritelmä. Olkoon   kaavio. Tällöin  :n raja koostuu objektista   sekä kokoelmasta morfismeja   jokaiselle objektille   siten että   muodostavat kartion (eli jokaiselle  :n morfismille   alla olevan kaavion sisempi kolmio on kommutatiivinen), ja kartio   on lisäksi universaali tämän ominaisuuden suhteen: mikäli   on  :n objekti ja   on morfismi jokaiselle objektille   siten että   on kartio (eli jokaiselle  :n morfismille   alla olevan kaavion ulompi kolmio on kommutatiivinen), niin tällöin on olemassa yksikäsitteinen morfismi   siten että jokaiselle objektille   pätee  , eli toisin sanottuna kaavio

on kommutatiivinen.

Kokartiot ja korajatMuokkaa

Kaavion   kokartio on kaavion   kartio, eli luonnollinen muunnos  . Samoin kuin kartiolle, objektia   kutsutaan kokartion kärjeksi ja komponentteja   särmiksi, ja kokartiota merkitään  . Kokartiomorfismi kokartiosta   kokartioon   on morfismi   siten että  . Merkitään kaavion   kokartioiden ja kokartiomorfismien kategoriaa  . Tällöin kaavion   koraja on kategorian   alkuobjekti, mikäli se on olemassa.[17]

Yksityiskohtaisesti, kaavion   koraja on kokartio   siten että mille tahansa kokartiolle   on olemassa yksikäsitteinen morfismi  , joka jokaiselle  :n morfismille   tekee kaaviosta

kommutatiivisen.

EsimerkkejäMuokkaa

Esimerkkejä rajoista:

  • loppuobjekti on tyhjän kaavion raja,[18]
    • joukkojen ja funktioiden kategoriassa loppuobjekti (eli tyhjän kaavion raja) on täsmälleen yhden alkion sisältävä joukko,[19]
    • osittain järjestetyssä joukossa loppuobjekti on suurin alkio;[19]
  • binäärinen tulo on sellaisen diskreetin kaavion raja, jossa on täsmälleen kaksi objektia,[20]
    • joukkojen ja funktioiden kategoriassa binäärinen tulo on (vailla yksikäsitteistä isomorfismia) kahden joukon karteesinen tulo,[21]
    • osittain järjestetyssä joukossa binäärinen tulo on kahden alkion infimum.[20]

Esimerkkejä korajoista:

  • alkuobjekti on tyhjän kaavion koraja,[22]
    • joukkojen ja funktioiden kategoriassa alkuobjekti (eli tyhjän kaavion koraja) on tyhjä joukko,[19]
    • osittain järjestetyssä joukossa alkuobjekti on pienin alkio;[19]
  • binäärinen kotulo on sellaisen diskreetin kaavion koraja, jossa on täsmälleen kaksi objektia,[23]
    • joukkojen ja funktioiden kategoriassa binäärinen kotulo on (vailla yksikäsitteistä isomorfismia) kahden joukon erillinen yhdiste,[23]
    • osittain järjestetyssä joukossa binäärinen kotulo on kahden alkion supremum.[2]

Täydellisyys ja kotäydellisyysMuokkaa

Kategorian   sanotaan omaavan  :n muotoiset (ko)rajat mikäli millä tahansa  :n muotoisella kaaviolla on (ko)raja  :ssä. Kategoria on (ko)täydellinen mikäli se omaa  :n muotoiset (ko)rajat jokaiselle indeksikategorialle  .[16] Kategoria on äärellisesti (ko)täydellinen mikäli se omaa  :n muotoiset (ko)rajat jokaiselle äärelliselle indeksikategorialle  .

Hom-funktorit ja Yonedan lemmaMuokkaa

EsilyhteetMuokkaa

Kategorian   esilyhde on funktori  . Esilyhteet ja niiden väliset luonnolliset muunnokset muodostavat kategorian, jota merkitään  .[24] Mikäli   on jonkin topologisen avaruuden avointen joukkojen osittaisjärjestys, niin tämä esilyhteen määritelmä vastaa algebrallisen topologian joukkojen esilyhteen määritelmää.

Hom-funktoritMuokkaa

Olkoon   lokaalisti pieni kategoria ja olkoon  . Määritellään esilyhde   seuraavasti: jos   ja   ovat  :n objekteja ja   morfismi, niin

  ja  ,

jossa   on funktio  .[25]

Esilyhdettä   kutsutaan  :n (kontravariantiksi) hom-funktoriksi.[26]

Yonedan upotusMuokkaa

Sillä hom-funktori   on määritelty mille tahansa lokaalisti pienen kategorian   objektille  , tämä määrittää kuvauksen

 .

Laajennetaan kyseinen kuvaus funktoriksi

 

määrittelemällä jokaiselle morfismille   luonnollinen muunnos  , jonka  -komponentti on funktio  , joka kuvaa  .[27]

Funktoria   kutsutaan  :n Yonedan upotukseksi.[26] Termin upotus käyttö on perusteltua, sillä yksi Yonedan lemman (ks. alla) seurauksista on Yonedan upotuksen täysi uskollisuus. Näin ollen mikä tahansa lokaalisti pieni kategoria voidaan upottaa sen esilyhteiden kategoriaan; toisin sanottuna on olemassa esilyhteiden kategorian alakategoria, joka on isomorfinen sen kanssa.

Yonedan lemmaMuokkaa

Hom-funktoreiden erityistä asemaa esilyhteiden kategoriassa kuvastaa Yonedan lemma.

Lause. Olkoon   lokaalisti pieni kategoria. Tällöin on olemassa isomorfismi

 ,

joka on luonnollinen sekä objektin   että esilyhteen   suhteen.[28]

Korollaari. Yonedan upotus on täysi ja uskollinen.[10]

Korollaari. Olkoon   lokaalisti pieni kategoria. Tällöin kaikille objekteille   pätee:

  jos ja vain jos  .[29]

LiittofunktoritMuokkaa

Määritelmä morfismijoukkojen isomorfismin kauttaMuokkaa

Olkoot   ja   lokaalisti pieniä kategorioita, ja   vastakkaisiin suuntiin osoittavien funktoreiden pari. Tällöin sanotaan, että   on funktorin   vasen liittofunktori (ja vastaavasti   on  :n oikea liittofunktori) mikäli on olemassa luonnollinen isomorfismi  .[10] Isomorfismin luonnollisuus voidaan ilmaista eksplisiittisemmin seuraavasti. Merkitään sekä isomorfismia että sen käänteismorfismia viivalla, eli:

  ja   siten että   ja  .

Tällöin luonnollisuusehto on yhtäpitävä seuraavan ehdon kanssa: kaikille  :n morfismeille   sekä  :n morfismeille   pätee

  ja  .[30]

Yllä määriteltyä tilannetta merkitään  .[10]

Määritelmä yksikön ja koyksikön kauttaMuokkaa

Oletetaan, että on olemassa luonnollinen muunnos   sekä luonnollinen muunnos  . Tällöin   on liitto mikäli molemmat kaaviot

kommutoivat.

Lause.   on liitto jos ja vain jos   on  :n vasen liittofunktori. Tällöin liitto määrää morfismijoukkojen isomorfismin yksikäsitteisesti, ja käänteisesti, morfismijoukkojen isomorfismi määrää yksikön ja koyksikön yksikäsitteisesti.[31]

EsimerkkejäMuokkaa

  • Unohdusfunktorilla   on sekä vasen että oikea liittofunktorit:  , jossa vasen liittofunktori määrittelee jokaiselle joukolle diskreetin topologian, ja oikea liittofunktori indiskreetin topologian.[32]
  • Unohdusfunktorilla   on vasen liittofunktori, joka määrittelee jokaiselle joukolle sen virittämän vapaan ryhmän.[33]
  • Jos   ja   ovat osittain järjestettyjä joukkoja ja   funktoreita (eli järjestyksen säilyttäviä funktioita), niin   jos ja vain jos kaikille alkioille   ja   pätee:
  jos ja vain jos  .[34]
Osittaisjärjestyksen morfismien liitto tunnetaan nimellä Galois'n vastaavuus (tai yhteys).[34]
  • Funktorit, jotka muodostavat kategorioiden ekvivalenssin, ovat aina liittofunktoreita.[35]

SovelluksiaMuokkaa

Matematiikan ulkopuolella kategoriateoriaa on hyödynnetty eniten teoreettisen tietojenkäsittelytieteen alalla.[36] Esimerkiksi Haskell-ohjelmointikielen voidaan ajatella melkein muodostavan kategorian.[37] Laajemmin ottaen, tarpeeksi abstraktilla tasolla mikä tahansa funktionaalinen ohjelmointikieli voidaan ajatella kategoriana.[38]

Sovellukset pyrkivät usein teorioiden yhdenmukaistamiseen, yksinkertaistamiseen sekä oleellisimpien aspektien esille tuomiseen. Tavoitteena saattaa olla myös informaation, tiedon ja käytänteiden siirron helpottaminen eri alojen välillä.[39][40] Esimerkiksi samoja matemaattisia rakenteita hyödyntäviä kategoriateoreettisia malleja on kehitetty sekä kvanttilaskennan että luonnollisen kielen käsittelyssä tarpeisiin.[41]

Monissa sovelluksissa lähtökohtana on monoidaalinen kategoria,[39] eli kategoria  , jolle on olemassa funktori  , joka toteuttaa tietyt ehdot.[42] Siinä missä tavallinen kategoria sallii prosessien (morfismien) peräkkäisen yhdistämisen, monoidaalinen kategoria sallii tämän lisäksi prosessien yhdistämisen suuremmaksi kokonaisuudeksi, siten että prosesseilla voi olla vaihteleva määrä syöttöjä (lähtöobjekteja) ja tulosteita (engl. output) (maalibjekteja). Esimerkiksi kvanttiteoriasta sekä kemiallisia reaktioita mallintavista Petri-verkoista on kehitetty matemaattisia malleja, jotka hyödyntävät monoidaalisia kategorioita.[43][40]

Biologi Robert Rosen on ehdottanut, että kategoriateorian metodit soveltuvat relaatiobiologian tarpeisiin.[44][45] Osittain Rosenin ajatuksiin perustuen, kategoriateoriaan nojaavaa mallia on ehdotettu biologisten organismien hierarkkisen järjestyksen hahmottamiseen.[46]

LähteetMuokkaa


ViitteetMuokkaa

  1. a b Leinster, Introduction
  2. a b Riehl, Preface
  3. Landry & Marquis
  4. Niskanen, s. 20-21
  5. Niskanen, s. 46
  6. Niskanen, s. 18
  7. Niskanen, s. 18-19
  8. Leinster, s. 17
  9. a b Leinster, s. 25
  10. a b c d Niskanen, s. 41
  11. Leinster, s. 34
  12. a b c d e f Niskanen, s. 10
  13. Niskanen, s. 30
  14. Niskanen, s. 31
  15. Niskanen, s. 43
  16. a b Niskanen, s. 11
  17. Niskanen, s. 14-15
  18. Niskanen, s. 12
  19. a b c d Niskanen, s. 16
  20. a b Leinster, s. 111
  21. Niskanen, s. 51-52
  22. Niskanen, s. 49
  23. a b Niskanen, s. 15
  24. Leinster, s. 93
  25. Leinster, s. 88
  26. a b Niskanen, s. 39
  27. Leinster, s. 90
  28. Leinster, s. 94
  29. Leinster, s. 104
  30. Leinster, s. 41-42
  31. Leinster, s. 53
  32. Niskanen, s. 76
  33. Leinster, s. 44
  34. a b Niskanen, s. 63
  35. Niskanen, s. 75
  36. Barr & Wells, Preface
  37. Haskell, nLab
  38. Barr & Wells, 2.2
  39. a b Fong & Spivak, Preface
  40. a b Bradley
  41. Coecke, Sadrzadeh & Clark
  42. Puuska, s. 41
  43. Heunen & Vicary
  44. Rosen
  45. Tuomi
  46. Ehresmann & Vanbremeersch