範疇論學習筆記1:基本概念
目錄:類型論驛站寫作計劃
學習材料:Category Theory: A Gentle Introduction - Logic Matters,最近更新(2018年1月29日)的版本。
純數學家研究的是不同的抽象結構,但如果我們把不同的數學結構,如群、偏序、拓撲空間等,進行進一步的抽象,研究結構之上的結構,這就是範疇(category)。若再度抽象,我們就得到了函子(functor),再往上就是自然變換(natural transformation)。範疇論還可以繼續研究抽象的抽象,直至無窮。
讓我們從下往上,先從一個特定的數學結構——群——出發:
定義1(群,group)
群是有著二元運算 一些對象 。在對象里有一個特殊的對象 ,稱為群單位元(group identity),使得
- 對於 中所有的 ,我們有
- 對於 中所有的 ,我們有
- 對於 中所有的 ,存在一個 中的 ,使得
整數加上加法運算、以 0 作為單位元,就構成了一個群。整數是一個阿貝爾群(abelian group),即交換群(commutative group)。
又比如,對於前 個自然數,以它的排列作為對象,以函數組合作為群運算,以啥也不做排列作為單位元,就構成了一個函數的群。如果 ,這樣的排列群是非交換(non-abelian)的。除此以外,幾何變換、矩陣、拓撲空間里的閉合路徑等等,都可以構成群。
我們把群標記為 , 等。
當然,我們還可以把群定義為一組有著三個函數(一個零元、一個一元、一個二元),且滿足特定的公理/公設(axiom)的對象。
定義2(群同態,group homomorphism)
從群 到群 的一個群同態是一個定義在 的對象上,以 的對象為取值的函數 ,使得
- 對於 中的每一個 ,
函數 通常被稱為底層函數(underlying function)。 而同態則是指函數 。
任何群到單位群 的映射都可以視為一個同態。這個同態在實際上是抹殺了前者的所有有效特性的。
從整數群到有理數群存在這樣的一個同態: 。這個同態是單射(injective),但不是滿射(surjective)。
定理1
- 設 構成一個群,那麼存在一個單位同態(identity homomorphism) ,把所有 中的元素都投射給自己。
- 對於兩個同態 ,我們總可以構成一個新的同態 。
- 同態的合成/複合(composition)是結合的(associative)。
定義3(群同構,group isomorphism)
如果底層函數是一個雙射(bijection),那麼群同態被稱為群同構,記為 。若源群和目標群是同一個群,我們稱該同構為自同構(automorphism)。
定理2
一個群同態 是一個同構當且僅當它有一個雙邊逆元(two-sided inverse),即存在一個同構 ,使得 .
定理3
群之間的同構關係是群之間的等價關係(equivalence relation)。
舊群生新群
從群 中提取部分元素 ,使其對於群運算閉合,且 的逆元(inverse)也是 的逆元,那麼我們稱 是 的一個子群(subgroup)。
對於兩個群 ,設 為配對元素 ,定義 ,又使得 ,那麼我們稱群 為前兩個群的積(product)。
除此以外,還有保留等價關係的商群(quotient group)。
撇開元素的差異,若只關注群元素之間的運算,我們可以說在群同構意義上(up to group isomorphism),只有兩個不同的四元素群。
對於一類包含 這些結構的結構組,我們可以定義結構保存映射(structure-preserving maps) 。那麼這些映射的合成(composition)也應該是結構保存的。基於此,我們定義範疇如下:
定義4(範疇)
一個範疇 包含兩類內容:
- -對象(objects),通常標記為
- -箭頭(arrows,又稱態射,morphism),通常標記為
這些對象和箭頭受到下列公理的約束:
- 源和目標(sources and targets,又稱定義域和值域domains and codomains):對於任何一個箭頭 ,都有一個唯一的源 和目標 。兩者有可能相等,若 ,我們標記為 。
- 合成/複合(composition),對於任意兩個滿足 的箭頭 ,都存在一個箭頭 ,讀作「 跟隨(following) 」,這樣的箭頭被稱為兩個箭頭的複合。
- 單位箭頭(identity arrows),對於任意一個對象 ,都存在一個單位箭頭 。
箭頭還滿足下列兩個公理:
- 複合的結合性(associativity of composition),對於任意的箭頭 ,我們都有 .
- 單位箭頭的表現如同單位元(identity):對於任何 ,我們都有 .
範疇的對象和箭頭又被稱為範疇的數據(data)。箭頭的複合也可以省去環符,直接記為 。當語境明晰時,單位箭頭可以簡單地記為 .
定理4
特定對象上的單位箭頭是唯一的;不同對象上的單位箭頭是不同的。
下面讓我們看兩個範疇的例子:幺半群和預序組。
定義5(幺半群,monoid)
一個幺半群 包含一些對象 ,一個二元「乘法(multiplication)」函數,以及一個單位元。乘法運算滿足結合律。
幺半群是免除了逆元要求的群。幺半群同態定義為保存乘法關係和單位元的函數。基於幺半群和幺半群同態,我們定義幺半範疇:
C1: Mon 是對象為所有幺半群,箭頭為幺半群同態的範疇。
定義6(預序組,pre-ordered collection)
預序組 包含對象 和預序 ,使得 中的 滿足:
- 如果 ,那麼
預序組之間的單調映射(monotone map) 保留預序,即對於所有 中的 ,我們有
C2: Ord 是對象為所有預序組,箭頭為它們之間的單調映射的範疇。
C1和C2是兩個非常大的範疇。與之相反,每一個幺半群或預序組自身都可以視為一個(非常小的)範疇。
C3:任取一個幺半群 ,定義範疇 如下:
- 的唯一的對象是任何實體(不一定是 中的對象),我們稱其為
- -箭頭 就是幺半群中的一個對象 ,箭頭的組合 定義為幺半群對象的積 ,單位箭頭 定義為幺半群的單位元 .
C4:任取一組預序對象 ,定義範疇 如下:
- 的對象就是
- 若 ,則 和 之間有唯一的 箭頭,即有序對子 。
C5:任何一組對象 都構成離散範疇(discrete category)。每個對象都僅有從自身到自身的單位箭頭。
C6:沒有對象,沒有箭頭的範疇被稱為空範疇(empty category)。只有一個離散對象和單位箭頭的範疇記為 .
C7:von Neumann序數2,即集合 可以被視為範疇 :
其他的範疇還包括:
C8:Grp,群範疇,對象為群,箭頭為同態。
C9:Ab,阿貝爾群範疇。
C10:Rng,環範疇。
C11:Bool,布爾範疇,對象為布爾代數,箭頭為結構保存映射。
C12:Pos,偏序組範疇。
C13:Tot,全序組範疇。
C14:Top,拓撲空間範疇,箭頭是空間之間的連續映射。
C15:Met,度量空間範疇。
C16: ,場 上的矢量空間範疇,箭頭為線性映射。
C17: ,邏輯範疇,對象為形式語言 中的句子。箭頭是 .
C18:Set,集合範疇,對象為所有集合,箭頭為所有集合函數。
C19:FinSet,有限集範疇。
C20:Pfn,部分函數範疇。
定義7
範疇 一個表示圖(representational diagram)的節點是對象,箭頭就是範疇的箭頭。
定義8
範疇 一個範疇圖(diagram in a category)是表示圖中所表示的內容。
定義9
一個範疇圖是交換的(commutes),如果任何兩個從 到 的路徑中的的第一個路徑里的複合箭頭等同於第二個路徑里的複合箭頭。
例如我們可以用下列交換範疇圖來表示結合律:
目錄:類型論驛站寫作計劃
推薦閱讀: