單子 (範疇論)

维基百科,自由的百科全书

數學的分支範疇論中,單子(英語:monad),又稱三元組(triple, triad)、標準構造(standard construction)、基本構造(fundamental construction[1],是一個內函子英语endofunctor(即由某範疇映到自身的函子),連同滿足特定連貫條件英语coherence condition的兩個自然變換,三者構成的整體。單子用於研究互為伴隨的函子對,並將偏序集上的闭包算子推廣到任意範疇。

導論與定義

單子是一類內函子英语endofunctor(連同其他資訊)。例如,若為一對伴隨函子的左伴隨,則複合是單子。若互為逆函子,則對應的單子是恆等函子。一般而言,伴隨關係並不等同范畴的等价,而可以聯繫不同性質的範疇。為了探討伴隨關係所「保持」的性質,數學家研究單子論。理論的另一半,即藉考慮,以研究伴隨關係,是單子論的對偶理論。該類函子稱為餘單子(英語:comonad)。

嚴格定義

本條目中,皆表示某範疇上的單子是函子,連同兩個自然變換,分別是單位(其中上的恆等函子)與乘法(其中是複合,亦是的函子),且要滿足下列連貫條件英语coherence condition

  • (左右皆為的自然變換)。此處水平複合而得。
  • (兩者皆為的自然變換)。此處表示由函子到自身的恆等自然變換。

以上兩式,亦可以下列交換圖複述:

            

記號的含義,參見自然變換,又或考慮以下更具體的寫法,不用水平複合記號,並將各函子作用在任意物件上:

            

定義中,若將當成幺半群的乘法,則第一條公理類似幺半群英语monoid (category theory)乘法結合律,而第二條公理類似單位元的存在性(由給出)。準確而言,上的單子,可以等價地定義為的內函子範疇中的幺半群英语monoid (category theory)。(該範疇的物件是上的內函子,而態射是內函子間的自然變換,幺半結構來自內函子的複合運算。)如此,單子不僅在形式上具有與幺半群相似的公理,甚而單子就是幺半群的特例。

冪集單子

冪集單子集合範疇上的單子。其定義中,函子取為冪集運算,即為集合冪集,而對於函數的子集映至其像集,即。對每個集合,有函數,對每個元素映至單元子集, 並有函數

的若干個子集構成的族,映至該些子集的並集。以上是冪集單子的定義。

兩個單子的複合,未必為單子。舉例,冪集單子的二次疊代,無法配備單子結構。[2]

餘單子

取上節定義的範疇論對偶英语Dual (category theory),便是餘單子(或餘三元組)的定義。簡單複述,範疇上的餘單子,是對偶範疇英语opposite category上的單子。所以,餘單子是由的某個函子,連同餘單位餘乘法(英語:counit and comultiplication)兩個自然變換,組成的整體,而三者所要滿足的公理,是將原定義中所有態射反轉方向而得。

單子之於幺半群,如同餘單子之於餘幺半群。每個集合皆是餘幺半群,且僅有唯一一種方式,所以抽象代數中,較少考慮餘幺半群。然而,在線性代數中,向量空間範疇(配備張量積)的餘幺半群較為重要,以餘代數之名為人所知。

歷史

單子的概念最早由羅傑·戈德芒英语Roger Godement於1958年提出[3],當時稱為「標準構造」(英語:standard construction)。實際上,該書用到的是餘單子,用作解決某個層餘調英语Sheaf cohomology問題。

其後,單子又出現於彼得·胡伯(Peter Huber)對範疇同倫的研究中。該論文包含由任意一對伴隨函子得出單子的證明。[4]

1965年,海因里希·克萊斯利英语Heinrich Kleisli[5],及塞缪尔·艾伦伯格約翰·柯曼·摩爾英语John Coleman Moore二人[6]分別獨立證明反向的結論,即每個單子皆可由某對伴隨函子產生。後一篇論文中,將單子稱為「三元組」。

1963年,威廉·洛維爾英语William Lawvere提出泛代數的範疇論。1966年,弗雷德·林頓(Fred Linton)將該理論用單子的語言表達。[7]單子本身來自拓撲方面的考量,事先似乎比洛維爾的理論更難處理,但已成為用範疇論語言闡述泛代數的方法中,較常見的一個。現今常用的英文名稱monad是1971年由桑德斯·麥克蘭恩在《現職數學家用的範疇英语Categories for the Working Mathematician》引入,以其類似單子論中的同名哲學概念,即某種能生出其他所有事物的實體。

1980年代,歐金尼奧·莫吉英语Eugenio Moggi理論計算機科學中,利用單子,為電腦程式的若干方面建立模型,包括例外處理、邊界情況。[8]此後,有多種函數式編程語言仔細實作此想法,作為一種基本規律,同樣稱為單子。2001年,若干數學家注意到,用單子研究程式標誌語意的方法,與洛維爾的理論,兩者之間有關聯。[9]。此為代數與語義間的聯繫,是後來活躍的研究課題。

例子

伴隨的複合

若有伴隨關係

(即的左伴隨,下同),則由此有上的單子。此普遍的構造,取內函子為複合

而單位自然變換來自伴隨的單位,乘法自然變換源自伴隨的餘單位

反之,給定單子,可以明確找回一對伴隨函子,使單子為該對伴隨函子的複合。此構造用到下節定義的代數的艾倫伯格-摩爾範疇[10]

兩重對偶

給定雙重對偶單子(英語:double dualisation monad)源自伴隨關係

其中兩個函子皆將向量空间映至對偶空間,所以對應的單子將向量空間映至雙對偶Kock (1970)對此有更廣泛的討論。

偏序集的閉包算子

偏序集可以視為特殊的範疇,任意兩件物件之間有最多一支態射,且有態射当且仅当偏序中。於是,偏序集之間的函子,即是保序映射,而伴隨函子對,則組成兩偏序集間的伽罗瓦连接,相應的單子是伽羅華連接的闭包算子

自由遺忘伴隨

又舉例,設群範疇集合范畴遺忘函子,將映至其基集,又設自由函子,由,則的左伴隨。此時,對應的單子的作用是,輸入一個集合,輸出自由群的基集,即字母取自,且無相鄰兩個字母互為逆元的字串的集合。

該單子的單位變換,由包含映射

給出,該包含映射將的任意元素,看成僅得一個字元的字串,從而是的元素。最後,單子的乘法

串接或「壓平」運算,將若干條字串組成的串,映至該串中所有字串前後連接而成的一條字串。至此描述完單子的兩個自然變換

前述例子中,自由群可以推廣至其他種類的代數結構,即泛代数意義下的任意一英语Variety (universal algebra)代數。如此,每類代數定義了集合範疇上的一個單子。更重要的是,該類代數的範疇,可從單子找回,即單子的艾倫伯格-摩爾代數範疇,故單子可視為泛代數之簇的推廣。

另外,尚有一個單子源自伴隨關係。在向量空間範疇上,若表示將向量空間映至其张量代数的內函子,則相應有單位自然變換將嵌入到其张量代数,並有乘法自然變換,在處的分量是態射,將張量積之張量積展開化簡。

餘密度單子

只要滿足某些不強的條件,無左伴隨的函子也可以產生單子,稱為餘密度單子英语codensity monad。例如,從有限集合範疇到集合範疇的包含函子無法配備左伴隨,但其餘密度單子定義在上,將任意集合映至其上所有超滤子集合。 類似例子見於Leinster (2013)。

單子的代數

給定範疇上的單子,可以考慮中的代數物件在該些物件上的作用,與單子的單位與乘法相容。具體而言,代數中的物件,連同態射(稱為該代數的結構映射),使得圖

皆可交換。

代數間的態射中的態射,且要使

可交換。於是,代數及之間的態射組成範疇,稱為艾倫伯格-摩爾範疇(英語:Eilenberg–Moore category),記為.

例子

自由群單子上的代數

為前述自由群單子,則代數是集合,連同由生成的自由群的映射(求值evaluation),且該映射要滿足結合律與單位元的公理。換言之,本身就具有群結構,而的映射,是將字串按的群乘法,計算所得的結果

分佈單子上的代數

另一個例子是集合範疇上的分佈單子(英語:distribution monad,其將集合映至其上所有有限支撐概率分佈的集合。該等分佈,是函數,僅於有限多個元素處取值非零,而各元素處取值之和為。以符號表示,

可由定義證明,分佈單子上的代數,等同於凸集,即集合要配備二元運算(對每個),滿足的公理比照歐氏空間中,凸組合具備的性質。[11][12]

對稱單子上的代數

另一個有用的單子,是交換環模範疇上的對稱代數單子

映到各階對稱張量英语symmetric tensor冪的直和

其中。例如,,左右兩邊作為模同構。如此,對稱代數單子上的代數,是交換代數。類似地,也有反對稱張量英语Antisymmetric tensor單子與全張量單子,相應的代數分別是反對稱代數與自由代數,故

前者是上添加個生成元的自由反對稱代數,而後者則是個生成元的自由代數。

E環譜中的交換代數

對於可交換代數英语Highly structured ring spectrum,亦有類似的構造,[13]:113對於可交換代數,對應單子上的代數是可交換的代數。若表示模的範疇,則可以考慮函子,定義為

其中

此函子是單子,而由該單子上的代數範疇,可以得到可交換代數的範疇

單子與伴隨

前文所述,任何伴隨關係皆產生單子。反之,每個單子皆可由某個伴隨關係產生,即原範疇與代數的艾倫伯格-摩爾範疇之間的自由-遺忘伴隨

其中,左伴隨的物件映到自由代數,右伴隨則將代數遺忘掉,變回。然而,通常有多組不同的伴隨關係產生同樣的單子,該些伴隨關係組成範疇:物件是伴隨關係使得,而態射是在一側為恆等函子的伴隨關係態射。如此,艾倫伯格-摩爾範疇的自由-遺忘伴隨的終物件,而始物件是克萊斯利範疇英语Kleisli category,定義為中的自由代數組成的完全子範疇,即僅包含形如代數,其中歷遍的物件。

單子伴隨

設有伴隨關係,對應單子為,則函子可分解為

其中是遺忘函子。換言之,對中任意物件,都能賦予自然的代數結構。若分解式中,首個函子給出範疇間的等價,則形容該伴隨關係為單子的(英語:monadic)。[14]後亦引申用作形容函子,若函子有左伴隨,且該伴隨關係為單子的,則亦稱為單子的。例如,群範疇集合範疇間的自由-遺忘伴隨是單子的,因為相應單子上的代數是群(見前文)。一般而言,若有伴隨關係為單子的,則單從的物件及其上的作用,已足以重組出的物件。

貝克單子性定理

貝克單子性定理給出伴隨關係在何種充要條件下為單子的。定理有以下簡化版:

若滿足以下三項條件:

  • 保守函子英语conservative functor,換言之,反映同構(英語:reflects isomorphisms),即對中每一支態射,其為同構當且僅當在作用下的像為中的同構;
  • 餘等化子英语coequalizer
  • 餘等化子英语coequalizer

為單子的。

例如,由豪斯多夫空间範疇集合範疇的遺忘函子是單子的。然而,由任意拓撲空間範疇到集合範疇的遺忘函子則並非單子的,而定理中,保守函子的條件不成立,因為有非緊或非豪斯多夫空間,之間存在連續雙射,但不為同胚[15] 貝克定理有對偶版本,刻劃餘單子伴隨關係,對拓撲斯論及有關下降英语descent (category theory)代数几何課題有用。

餘單子的伴隨關係,首先有下列例子:

其中皆為交換環,左伴隨用到的張量積的定義中,選定了環同態,而右伴隨是遺忘函子。根據貝克定理,當且僅當忠實平坦模時,該伴隨為餘單子的。所以,可將配備下降數據(英語:descent datum,即源自伴隨關係的餘單子的作用)的模,降成模。所得的忠實平坦下降英语faithfully flat descent理論,廣泛應用於代數幾何。

用途

函数式编程中,會使用單子表達某類(有時有副作用的)順序式計算,見单子 (函数式编程)

範疇論邏輯中,藉闭包算子內代數,以及兩者與S4模態邏輯直觉主义逻辑的關係,能以單子餘單子理論類比模态逻辑

推廣

亦可定義2-範疇中的單子。

參見

參考文獻

  1. ^ Barr, Michael; Wells, Charles. Toposes, Triples and Theories [拓撲斯、三元組與理論] (PDF). Grundlehren der mathematischen Wissenschaften 278 (Springer-Verlag). 1985: 82 and 120 [2021-09-17]. ISBN 0-387-96115-1. (原始内容存档 (PDF)于2020-11-25). 
  2. ^ Klin; Salamanca. Iterated Covariant Powerset is not a Monad [共變冪集疊代後不是單子]. Electronic Notes in Theoretical Computer Science. 2018-12-01, 341: 261–276. doi:10.1016/j.entcs.2018.11.013可免费查阅 (英语). 
  3. ^ Godement, Roger. Topologie Algébrique et Théorie des Faisceaux [代數拓撲與層論]. Actualités Sci. Ind., Publ. Math. Univ. Strasbourg 1252. Paris: Hermann. 1958: viii+283 pp (法语).  |issue=被忽略 (帮助)
  4. ^ Huber, Peter J. Homotopy theory in general categories [一般範疇的同倫論]. Mathematische Annalen. 1961, 144 (5): 361–385 (英语). 
  5. ^ Kleisli, Heinrich. Every standard construction is induced by a pair of adjoint functors [每個標準構造皆由某對伴隨函子產生]. Proceedings of the American Mathematical Society. 1965, 16 (3): 544–546 (英语). 
  6. ^ Eilenberg, Samuel; Moore, John Coleman. Adjoint functors and triples [伴隨函子與三元組]. Am. J. Math. 1965, 9: 301–398 (英语). 
  7. ^ Linton, Fred E. J. Some aspects of equational theories [等式理論的若干方面]. Proc. Conf. on Categorical Algebra at La Jolla. 1966: 84–95 (英语).  参数|journal=与模板{{cite conference}}不匹配(建议改用{{cite journal}}|book-title=) (帮助)
  8. ^ Moggi, Eugenio. Notions on computation on monads [單子上的計算概念] (PDF). [2021-09-25]. (原始内容存档 (PDF)于2011-03-22) (英语). 
  9. ^ Plotkin, Gordon; Power, John. Adequacy for Algebraic Effects [代數效果的適切性]. Proc. FOSSACS 2001. Lecture Notes in Computer Science 2030. 2001: 1–24. doi:10.1007/3-540-45315-6_1 (英语). 
  10. ^ Riehl (2017,162)
  11. ^ Świrszcz, T. Monadic functors and convexity [單子函子與凸性]. Bull. Acad. Polon. Sci. Sér. Sci. Math. Astron. Phys. 1974, 22: 39–42. MR 0390019 (英语). 
  12. ^ Jacobs, Bart. Convexity, Duality and Effects [凸性、對偶、作用]. Calude, C.S.; Sassone, V. (编). Theoretical Computer Science [理論電腦科學]. IFIP Advances in Information and Communication Technology 323. 2010: 1–19. ISBN 978-3-642-15239-9. doi:10.1007/978-3-642-15240-5_1可免费查阅 (英语). 
  13. ^ Basterra, M. André–Quillen cohomology of commutative S-algebras [交換S代數的André–Quillen上同調]. Journal of Pure and Applied Algebra. 1999-12-15, 144 (2): 111–143 [2021-09-18]. ISSN 0022-4049. doi:10.1016/S0022-4049(98)00051-6可免费查阅. (原始内容存档于2022-01-30) (英语). 
  14. ^ MacLane (1978)所用定義中,條件「等價」要再加強為「同構英语Isomorphism of categories」。
  15. ^ MacLane (1978,§§VI.3, VI.9)