Evanalysis
7.1嵌入式互動預計閱讀時間: 16 分鐘

7.1-7.2 二元運算、么半群與群

由裸集合轉向帶運算的集合,學習么半群、單位元、群、逆元、襪鞋性質與消去律。

第 7 章開始轉換視角。

集合論讓我們用函數、關係和基數比較集合。但很多數學對象之所以有趣,不 只是因為它們包含哪些元素,而是因為那些元素上還帶有額外結構。

例如,只看基數時,集合 {5, dog}{0,1} 都只有兩個元素。但 {0,1} 可以配上熟悉的加法和乘法規則;相反,5+dog5 + dog 在未指定額外結 構之前沒有明確意義。

本章的目標,就是把這些額外結構說清楚。

帶結構的集合

許多基本例子都符合這個模式:自然數帶有加法與乘法,平面帶有向量加法, 置換帶有合成。

共同模式是:

  1. 先有一個集合;
  2. 在集合上指定某些運算、關係、函數或特殊元素;
  3. 寫下這些額外資料要滿足的公理;
  4. 只由公理推出定理。

這是現代數學的一個基本習慣。與其在每個例子中重複證明同一類事實,不如 先定義一種結構,再證明所有具有該結構的例子都必須滿足甚麼。

二元運算

定義

二元運算

XX 是集合。XX 上的一個 二元運算 是一個函數

:X×XX.*:X\times X\to X.

a,bXa,b\in X,通常寫 aba*b,而不是 (a,b)*(a,b)

這個定義有兩個重點。

第一,運算從 XX 中取兩個輸入。第二,輸出仍然必須屬於 XX。第二點常 被稱為封閉性;在這門課的寫法中,它已經包含在函數型別 X×XXX\times X\to X 裡。

常見錯誤

一條公式不會自動成為每個集合上的二元運算

減法是 ZZ 上的二元運算,因為 abZa-b\in Z 對所有 a,bZa,b\in Z 都成立。 但若要求結果仍留在 NN 中,減法就不是 NN 上的二元運算,因為 252-5 不 是自然數。

Boolean integers

定義

B={0,1}.B=\{0,1\}.

在這個集合上,加法規則為

0+0=0,0+1=1,1+0=1,1+1=0,0+0=0,\qquad 0+1=1,\qquad 1+0=1,\qquad 1+1=0,

乘法規則為

00=0,01=0,10=0,11=1.0\cdot 0=0,\qquad 0\cdot 1=0,\qquad 1\cdot 0=0,\qquad 1\cdot 1=1.

定義

Boolean integers

Boolean integers 是三元組

(B,+,),(B,+,\cdot),

其中 B={0,1}B=\{0,1\},而 ++\cdot 是上面顯示的兩個二元運算。

重點不在名稱,而在於:即使集合很小,只要指定運算,也可以有非平凡結構。

例題

BB 中解 x+y=0x+y=0

一個有用練習是證明

xB, yB (x+y=0).\forall x\in B,\ \exists y\in B\ (x+y=0).

只需檢查 x 的兩個可能值。

x=0x=0,取 y=0y=0,因為 0+0=00+0=0

x=1x=1,取 y=1y=1,因為 1+1=01+1=0

所以在這個加法規則下,BB 的每個元素都有加法逆元。

更多二元運算例子

常見例子包括:

  • ++×\timesNN 上的二元運算;
  • ++×\timesZZ 上的二元運算;
  • 對任意集合 XX,函數集合 XXX^X 上的合成是二元運算。

最後一個例子值得仔細讀。若 f:XXf:X\to Xg:XXg:X\to X,則

gf:XX.g\circ f:X\to X.

所以合成把 XXX^X 的兩個元素合併,並得到 XXX^X 的另一個元素。

例題

合成作為二元運算

X={a,b}X=\{a,b\}XXX^X 的元素是所有從 XX 到自身的函數。

f,gXXf,g\in X^X,則 gfg\circ f 仍然是 XX 到自身的函數。因此合成定義了

:XX×XXXX.\circ:X^X\times X^X\to X^X.

這裡被合併的元素是函數,不是 XX 本身的元素。

么半群

第 7 章首先研究的結構是 monoid。

定義

么半群

一個 么半群 (M,)(M,*) 是一個集合 MM,連同一個二元運算

:M×MM*:M\times M\to M

使得:

  • 對所有 a,b,cMa,b,c\in M

    (ab)c=a(bc)(a*b)*c=a*(b*c)

    (結合律);

  • 存在 eMe\in M,使得對所有 aMa\in M

    ae=ea=aa*e=e*a=a

    (單位元存在)。

結合律說明三個元素連乘時括號位置不影響結果。單位元則是一個從左邊或右 邊合併也不改變元素的元素。

標準例子包括:

  • (N,+)(N,+) 是么半群,單位元為 0
  • (N,×)(N,\times) 是么半群,單位元為 1
  • (Z,+)(Z,+) 是么半群,單位元為 0
  • (Z,×)(Z,\times) 是么半群,單位元為 1
  • 對任意集合 XXXXX^X 在合成下是么半群,單位元為 idXid_X
  • (B,+)(B,+) 是么半群;
  • (B,)(B,\cdot) 是么半群。

例題

檢查 (N,+)(N,+) 是么半群

++NN 上的二元運算。

結合律成立:

(a+b)+c=a+(b+c)(a+b)+c=a+(b+c)

對所有自然數 a,b,c 成立。

單位元是 0,因為

a+0=0+a=a.a+0=0+a=a.

所以 (N,+)(N,+) 是么半群。

例題

檢查函數合成么半群

XX 是任意集合。XXX^X 的元素是函數 XXX\to X

合成滿足結合律:

(hg)f=h(gf).(h\circ g)\circ f=h\circ(g\circ f).

恆等函數 idXid_X 滿足

fidX=f,idXf=f.f\circ id_X=f,\qquad id_X\circ f=f.

所以 XXX^X 在合成下是么半群。

不是么半群的例子

也要看一些失敗例子。

例題

(Z+,+)(Z^+,+) 不是么半群

Z+Z^+ 表示正整數,則加法封閉且滿足結合律。但 Z+Z^+ 裡沒有加法單位 元。

加法單位元必須是 0,因為 a+0=aa+0=a。但 0Z+0\notin Z^+。所以 (Z+,+)(Z^+,+) 不是么半群。

例題

(Z,)(Z,-) 不是么半群

減法是 ZZ 上的二元運算,但不滿足結合律。例如

(53)1=1,(5-3)-1=1,

5(31)=3.5-(3-1)=3.

結果不同,所以結合律失敗,(Z,)(Z,-) 不是么半群。

常見錯誤

有單位元仍然不夠

一個運算可能看起來有單位元,但若不滿足結合律,仍然不是么半群。結合律 和單位元是兩個獨立要求。

單位元唯一

定理

單位元唯一性

一個么半群恰好只有一個單位元。

證明

證明

這個證明很短,原因是單位元律可以左右兩邊使用。兩個候選單位元必須互相 不改變對方,因而被迫相等。

么半群很有用,但條件較弱。群額外要求每個元素都可以被「復原」。

定義

一個 是一個集合 GG,連同一個元素 eGe\in G 和一個二元運算

(a,b)ab(a,b)\longmapsto a\cdot b

使得:

  • 對所有 aGa\in G

    ea=a=ae;e\cdot a=a=a\cdot e;
  • 對所有 a,b,cGa,b,c\in G

    (ab)c=a(bc);(a\cdot b)\cdot c=a\cdot(b\cdot c);
  • 對每個 aGa\in G,存在逆元 a1Ga^{-1}\in G,使得

    aa1=ea1a=e.a\cdot a^{-1}=e \qquad\text{且}\qquad a^{-1}\cdot a=e.

群的自然動機之一是形式化對稱性。對稱操作應該可以合成、有一個甚麼都 不做的操作,並且可以反向復原。

在這個標準讀法下,每個群在忘記逆元公理之後都是么半群。群更強,不是因 為它有另一套結合律或單位元,而是因為每個元素都有逆元。

常見錯誤

群不是任意帶二元運算的集合

運算必須滿足結合律,必須有雙邊單位元,而且每個元素都必須有逆元。任何 一條失敗,也不是群。

群的例子

基本例子包括:

  • (Z,+)(Z,+)
  • (Q,+)(Q,+)
  • (Q+,)(Q^+,\cdot),其中 Q+Q^+ 表示正有理數。

例題

為甚麼 (Z,+)(Z,+) 是群

單位元是 0

對每個整數 a,逆元是 a-a,因為

a+(a)=0=(a)+a.a+(-a)=0=(-a)+a.

加法滿足結合律,所以 (Z,+)(Z,+) 是群。

例題

為甚麼 (Q+,)(Q^+,\cdot) 是群

單位元是 1

對每個正有理數 q,逆元是 1/q,它仍然是正有理數,且

q1q=1=1qq.q\cdot \frac1q=1=\frac1q\cdot q.

乘法滿足結合律,所以 (Q+,)(Q^+,\cdot) 是群。

常見錯誤

(Z,×)(Z,\times) 是么半群,但不是群

ZZ 上乘法的單位元是 1,且乘法滿足結合律。但大多數整數在 ZZ 中沒有 乘法逆元。例如不存在整數 b 使得 2b=12b=1

逆元唯一

定理

逆元唯一性

對每個 aGa\in G,逆元 a1a^{-1} 是唯一的。

證明

證明

這個證明說明了為甚麼逆元記號是合理的:只要逆元存在,它就是唯一的,所 以 a1a^{-1} 不會有歧義。

襪鞋性質

乘積逆元公式常被稱為 socks-shoes property:要復原兩個連續 操作,先復原第二個,再復原第一個。

定理

襪鞋性質

對群中元素 a,b

(ab)1=b1a1.(a*b)^{-1}=b^{-1}*a^{-1}.

證明

證明

順序反轉是必要的。在非交換群中,a1b1a^{-1}*b^{-1} 未必能復原 aba*b

消去律

定理

消去律

在群中:

  • ab=aca*b=a*c,則 b=cb=c
  • ba=cab*a=c*a,則 b=cb=c

證明

左消去證明

右消去的證明類似,只是改為右乘 a1a^{-1}

互動檢查運算律

下面的 checker 是定義的輔助工具:可用來測試小型運算表的封閉性、結合 律、單位元與逆元行為。真正的數學內容仍然是上面的公理。

比較 monoid 與 group 的公理表

圖示。monoid 與 group 的分別不是名稱,而是除結合律外,單位元與逆元公理是否成立。

邊讀邊試

檢查 monoid 與 group 公理

這個檢查器按 monoid 與 group 所需的精確公理比較二元運算。

這是一個群。

結合律

(a+b)+c = a+(b+c)。

單位元

0 是單位元。

逆元

a 的逆元是 -a。

快速檢查

快速檢查

一條規則 * 要成為集合 XX 上的二元運算,必須滿足甚麼輸入與輸出要求?

用函數型別回答。

解答

答案

快速檢查

為甚麼 (Z,)(Z,-) 不是么半群?

指出失敗的公理,並給一個具體計算。

解答

答案

快速檢查

為甚麼 (Z,×)(Z,\times) 不是群?

集中看逆元。

解答

答案

快速檢查

在群中,aba*b 的逆元是甚麼?

留意順序。

解答

答案

練習

快速檢查

直接證明 (B,+)(B,+) 是么半群,其中 ++ 是 上面的 Boolean 加法。

檢查結合律並指出單位元。

解答

引導解答

快速檢查

證明么半群的單位元唯一。

使用兩個可能的單位元 ee'

解答

引導解答

快速檢查

證明群中的左消去律:若 ab=aca*b=a*c,則 b=cb=c

使用 a 的逆元。

解答

引導解答

相關筆記

可先讀 2.2 函數與關係6.4-6.7 區間、Cantor 集、稠密性與良序。 這一節也會用到 1.2 量詞與否定 以及 3.4 有理數與良定義運算 中的證明習慣。

本單元重點詞彙