簡體   English   中英

List Int和List String在Haskell /類別理論中是否屬於同一類別?

[英]Are List Int and List String the same category in Haskell/Category theory?

List Int和List String在Haskell /類別理論中是否屬於同一類別?

  • 列表整數
  • 清單字串

兩者都是列表。

他們被視為同一類別嗎?

謝謝。

不,或者說,畝。 如果沒有關於對象和箭頭打算做什么的進一步詳細信息,則它們都不是第一類。

您可能會想到的是Hask類別,該類別將Haskell類型視為對象,而Haskell函數則視為箭頭。 在此類別中, [Int][String]是不同的對象,它們之間沒有同構(在非技術意義上是自然的)。

除了每種類型都是Hask中的對象(類型和函數的類別)之外,每種列表類型還可以被認為是不同的類別,因為它們是類四面體:

  1. 該類別包含一個虛擬對象; 除了作為態射的終點,它什么也沒有代表。
  2. 每個列表對應一個不同的詞素。
  3. 同一性態是空列表[]
  4. 組成對應於列表串聯(++) 例如:

    1. [1] ∘ [2,3] == [1] ++ [2,3] == [1,2,3]
    2. [2,3] ∘ [1] == [2,3] ++ [1] == [2,3,1]
    3. [] ∘ [1] == [] ++ [1] == [1]
    4. [1] ∘ [] == [1] ++ [] == [1]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM