我將前置知識的講解放在第乙個板塊,非前置的知識則放在第二個板塊。兩個板塊之間用分割線分割開來。
1、集合
我們知道,集合的元素可以是任何事物。
具體而言,我在我家門口撿了幾塊石頭,裝在塑膠袋裡。我可以負責任的告訴你:「塑膠袋裡的,便是石頭組成的集合」。
2、對映
這個塑膠袋裡的所有石頭,都可以看作集合裡的元素。事實上,這些石頭有大有小。有些石頭乙隻手握不住,有些石頭我可以乙隻手握兩塊。
我們不妨將它們分一下類。我將乙隻手可以握兩個的石頭稱之為「小石頭」,將乙隻手只能握乙個的稱之為「大石頭」,將乙隻手都握不住的石頭稱之為「石塊」。
那麼,我便可以依據石頭的大小,將集合分成三個部分。乙個裝著「小石頭」,乙個裝著「大石頭」,乙個裝著「石塊」。我們將它們稱為「集合 a 」、「集合 b 」、「集合 c 」。
現在,我想向你們闡述「對映」的概念。
握住大石頭時,如果我稍微用點力,就可以將它恰好弄碎成兩塊小石頭。那麼,乙個本來屬於 b 的元素,就會屬於 a。我們知道,那是因為我對這個大石頭執行了某種操作——「握碎」。
我們稱這個操作是一種「對映」。
更精確的定義,對映表示的是:「兩種集合元素之間的對應關係」。這種對應不一定是「一一對應」。僅僅只是「對應」而已。
3、笛卡爾積
我弟弟從廚房裡拿來兩個碗。他隨意地瞟了我一眼,然後隨手拿了兩塊石頭放在碗裡。
我知道,碗裡的兩塊石頭構成了乙個「組合」。我是很想將場景畫給你們看,但是我是個手殘。所以我嘗試用數學符號來告訴你們具體的樣子。
我將兩塊石頭分別起名為「石頭甲」和「石頭乙」,然後我再加個括號將它倆圍起來,表示它們在碗裡。具體就是——(石頭甲,石頭乙)。
我想告訴你們,這就是乙個笛卡爾積。
具體而言,兩塊石頭都是隨機選擇的。它們可以來自同乙個集合,也可以來自不同的幾何。但不論如何,「(石頭甲,石頭乙)」最終是兩塊石頭的組合。
我們再來看更抽象的數學定義:元素 x 和元素 y 的笛卡爾積表示 (x, y)。
我們知道,如果我們列舉所有的 x 和 所有的 y 所形成的笛卡爾積 (x, y)。那麼最終將形成乙個 (x,y) 組成的集合。
事實上,如果 x 來自集合 a,y 來自集合 b。那麼這個笛卡爾積形成的集合就可以簡單的表示成
這時候東邊來了個傻子。傻子看到碗裡的石頭後——好生歡喜,並表示我們可以用碗裡這樣類似的笛卡爾積換取他口袋裡的一枚硬幣。
哦吼!乙個石頭笛卡爾積換取了乙個硬幣。考慮石頭構成的集合,硬幣構成的集合。「換取」可以看成一種操作。那這就變成了乙個對映。
4、等價關係以及算術律
我看了看傻子。拿出乙個笛卡爾積——(石頭甲,石頭乙),傻子說願意給我一塊硬幣。
我想了想,將這個笛卡爾積藏了起來,拿出另外乙個笛卡爾積——(石頭乙,石頭甲)。傻子說:「這不就是乙個笛卡爾積嗎?」我默然。
我們知道,一件事物可以從不同的角度去理解它。從某個角度來看,它倆或許是等價的。從另乙個角度來看,它或許就不是等價的。很顯然,從傻子的角度來講,它們是等價的。
也就是說,在討論兩件事物是否等價之前,我們可以先將這兩件事物限制在兩者等價的情況之下。那麼在該前提條件下,我們就可以認為它們是等價的。這種等價關係我們用「=」來表示。
即(石頭乙,石頭甲)=(石頭甲,石頭乙)。
我想要告訴你們更多的東西。
我問傻子:「你為什麼要進行這樣的交換(對映)呢?」。傻子笑了笑,將兩塊石頭拿在手裡,不斷摩擦,最後變成了一塊硬幣。
雖然我無法解釋具體發生了什麼,但是我知道,它一定是進行了某種操作(對映)。對映的具體細節就是:(石頭甲,石頭乙)-> 硬幣。我們知道,傻子進行了某種操作——摩擦。我們給這種操作定義一種符號——「+」。
則我們可以用一種新的表達方式來表達這種對映:石頭甲 + 石頭乙 -> 硬幣。我們現在假設我可以用一塊硬幣將這兩塊石頭換回來,即:硬幣 -> 石頭甲 + 石頭乙。這意味著什麼呢?
某種東西應該已經呼之欲出了:石頭甲 + 石頭乙 = 硬幣。我希望讀者可以自己嘗試用某些例子來引出這個等價關係。
進一步推倒,我們可以得出:石頭甲 + 石頭乙 = 石頭乙 + 石頭甲。要知道,石頭甲和石頭乙可以是集合中的任何一種元素,而集合也可以是任何一種集合。
進一步抽象:集合 a 和集合 b 中的任意元素 x,y,若滿足 x + y = y + x ,則稱這些元素滿**換律。注意,這裡的「+」可以是任何一種對映,「=」可以是任何一種情況下的等價關係。兩個集合可以為同乙個集合。
為了防止讀者說我水,我們再跳一步。若集合 a 和集合 b 中的任意元素 x,y,z 滿足 (x + y) + z = x + (y + z),則稱這些元素滿足結合律。
5、零元素和逆元素
我在廚房裡找了一塊冰,然後告訴傻子:「這也是石頭」。傻子點了點頭,表示它認為冰可以算作集合的其中乙個元素。
這意味著我也可以用它來構成笛卡爾積。如此這般,我便可以用冰來置換傻子無數的硬幣。
換而言之,傻子的意思是:石頭 + 冰 = 石頭。這裡的石頭指的是任何一塊集合中的石頭。也就是說,任何一塊石頭與冰進行「+」對映,最終等價於石頭本身。
進一步抽象:若集合存在乙個元素 a ,使得集合中的任何元素 x 滿足:x + a = x,則我們稱元素 a 為「零元素」。例如,我們可以將所有的整數構成乙個集合。那麼這個集合中的零元素就是「0」。
傻子告訴我,事實上,他那裡存在一種特殊的反式石頭。當反式石頭和石頭進行摩擦時,最終生成的不是硬幣,而是一塊冰。
進一步抽象:若集合中存在兩個元素 a,b 滿足:a + b = 0,則稱這兩個元素互為逆元素。
6、點睛之筆
在交易的最後,我問傻子:「你為什麼會統一用石頭來換硬幣呢?」
傻子說:「在你的思維角度裡,硬幣和石頭、冰是不等價的。但是正如你之前跟讀者說的,只要將物體限制在特定條件裡,事物是可以等價的。在我的思維角度裡,硬幣構成的集合和石頭構成的集合可以看作同乙個集合。在這種情況下,你之前抽象出來的定理也全部成立。」
說完,傻子拿走了我的最後一塊石頭。然後他將袋子裡的石頭一塊一塊拿了出來,在更傻的傻子那裡,用一塊石頭乙個硬幣的**換走了所有的石頭。
(仔細體會,可以加深理解哦)
7、抽象的向量
第二部分不打算講解,直接放定義。
向量是什麼?若乙個集合滿足向量空間的基本定義,則該集合中的元素便稱之為向量。
那麼向量空間的基本定義是什麼?
代數學
避免笛卡爾積
在mysql中建立臨時表 create table temptable 2 instanceid numeric 30 celltype varchar 128 enodeb id numeric 30 eutrancell id numeric 30 engine myisam default c...
js笛卡爾積
可以用來模擬路徑,或者標籤的順序。笛卡兒積組合 function descartes list var result var pindex null var tempcount 0 var temp 根據引數列生成指標物件 for var index in list pindex index 單維度...
笛卡爾積 LintCode
我們採用二維陣列setlist表示集合陣列,其中setlist i 中的每個元素都為整數,且不相同。求集合setlist 0 setlist 1 setlist setlist.length 1 的笛卡爾積。一般地,集合a和集合b的笛卡爾積a b 注意事項 1 setlist.length 5 1 ...