【摘要】文章系統地介紹了在《離散數學》中有關“笛卡爾積”課堂教學實踐的具體過程---情境教學方法:使用實例引導,把抽象的數學概念和具體的實例相結合,加強了學生對不同課程的融會貫通,同時,培養了學生的實踐能力,此教學方法激發了學生的學習動機,提高了教學效率。
【關鍵詞】笛卡爾積;情景教學;能力培養
【中圖分類號】G40-057【文獻標識碼】A【論文編號】1009—8097(2008)13—0065—03
《離散數學》是計算機專業必修課,是計算機組成原理、數據結構、數組邏輯電路等專業課程的先行課,具有舉足輕重的地位,本文主要針對《離散數學》中情境式教學的探索與研究,下面就“笛卡爾積”一節闡述其情景式教學方法的具體過程。
一 創設情境
情境(即現實背景)可以使抽象的理論具體化、形象化、生動化 ,幫助學生理解數學中比較難易理解的概念。在學校的日常教學管理中經常會見到如下有關學生基本信息和其選課信息表:

以上兩個表是相互獨立,又有關聯的兩個表,其中表1是學生的基本信息表,而表2是學生選課情況表,關鍵在于學生基本情況表中的信息基本都會反映到表2,是基本穩定不變的數據。那么如何把教務中的書面表格用以電子信息的數據庫形式進行表示,從而提高檢索效率和檢索準確性。
#61618;疑問:因此如何實現兩表數據的正確關聯,形成一個穩定的數據庫信息?
#61618;方法:“笛卡爾積”關聯
根據以上的疑問,在本節課中講述有關笛卡爾積的具體內容,用來解決以上的問題。
二 “笛卡爾積”知識詳解過程
1 基本概念
設A、B為集合,用A中元素為第一元素,B中元素為第二元素構成有序對,所有這樣的有序對的所組成的集合為A和B的笛卡爾積,記為A×B。
2 舉例
A={a,b}B={1,2,3}
A×B={< a,1>,< a,2>,< a,3>,< b,1 >,< b,2>,< b,3>}
B×A={< 1,a >,< 1,b >,< 2,a >,<2,b >,< 2,a >,<3,b >}≠A×B
3 基本特征總結
#61618;符號化表示:A×B={
#61618;關鍵點:第一元素有集合A中元素組成,第二元素由集合B中元素組成
#61618;| A×B |=|A|×|B|
4 基本性質詳解并證明。
#61618;與空集的關系…
#61618;結合律情況…
#61618;交換律情況…
#61618;分配率情況…
#61618;其他性質…
5 其他類型笛卡爾積舉例
#61618;例一:A×A情況…
#61618;例二:A×Φ情況…
#61618;例三:Φ×A情況…
6 教學特點
#61618;講課突出重點
#61618;避免照本宣科,要求教師必須對講課內容熟練、體系結構清晰
#61618;抓住并解決難點
三 融入情景
1 數據庫生成解析
結合以上對于“笛卡爾積”知識點的講解,讓同學們重新認識一下剛才實例中的教務用表,可以理解為表1學生基本信息表一個集合,即:學生基本信息集合(記為A);表2學生選課信息表一個集合,即:學生選課情況集合(記為B)。
只不過此集合中的元素為一條一條的信息,即為數據庫中的記錄,另外,記錄中所記載的信息元為字段,例如:學號,姓名,所在學院,選修課程等等。
根據分析可以看出在表2中的學號、姓名和所在學院都和表1中是對應的,因此在表2中即為關系模式的冗余(即此學生選幾門課,則此部分信息就會重復幾次,消除冗余的辦法就是對關系模式的分解),但正是這一部分形成了表1和表2之間的數據依賴,數據依賴是研究數據之間的聯系。那么如何設計此數據庫呢?
關系數據庫的規范化設計是指面對一個現實問題,如何選擇一個比較好的關系模式集合。規范化設計理論主要包括三個方面的內容:數據依賴、范式(Normal Forms,簡記為NF)和模式設計方法。其中數據依賴起著核心的作用(在情境中已經存在,即數據之間的關系)。數據依賴研究數據之間的聯系,范式是關系模式的標準,分為1NF、2NF、3NF、BCNF等多種(不同的消除冗余的標準構成不同的范式),模式設計方法是自動化設計的基礎。規范化設計理論對關系數據庫結構的設計起著重要的作用(在這里不用重點討論范式和模式設計方法,在以后的數據庫原理和軟件工程中會詳細介紹,同時降低學生的茫然性,在此如果討論過深,可能會避重就輕,適得其反)。

根據剛才的分析,消除冗余,設計數據庫大致有以下兩個表:
產生數據庫,具體學生表內容,集合A:


2 笛卡爾積結果解析
如何在以上兩表中實現剛才的教務表格,以每個表中記錄為一集合,A:學生表,B:學生選課表,則A×B結果為原始笛卡爾積,根據笛卡爾積產生過程:選取A集合中一元素(記錄)匹配B中的每一元素(記錄)。因此,原笛卡爾積結果如下表:

● 產生笛卡爾積SQL語句(引申,注重和《數據庫原理》課程的關聯和知識的遷移):
Select a.sno,a.stuname,a.dept,b.course,b.score from stu a,class b (A×B)
因為|A|=6,并且|B|=6,因此| A×B |=36,即會出現36條記錄信息,顯然有很多信息在現實中是不成立,因為沒有參照數據庫的數據依賴。
3 消除冗余結果解析
若想消除冗余,則必須考慮其數據依賴,即數據的一致性,必須保證其A.sno=B.sno,在進行集合元素匹配中必須考慮到同一個學號下的匹配。
因此消除冗余笛卡爾積,產生正確查詢結果SQL語句:
Select a.stuid,a.stuname,a.dept,b.classid,b.score from stu a,class bwhere a.stuid=b.stuid即:(A×B ―(A.stuid≠B.stuid)):

此條件下的“笛卡爾積”為真正選修情況數據庫中的檢索信息,同時,加強了學生對于離散數學和數據庫的關聯。
三 結論
以上詳細地介紹了“笛卡爾積”一節的情境式課堂教學的全過程,在此教學中主要以實例(情境)為主要導引,“授人與漁,而非授人以魚”,注重學生的邏輯思維能力的培養和實踐能力的培養。充分拓展學生視野,引導他們對已有知識進行橫向聯系、縱深認識,把學生的思維從課內擴展到課外,提高他們綜合運用知識的能力。
參考文獻
[1] 屈婉玲.離散數學與計算機科學[M].北京:高等教育出版社,2007年高等學校計算機專業課程教學專題研討班.
[2] 孫吉貴.離散數學課程建設[M].北京:.高等教育出版社, 2007年高等學校計算機專業課程教學專題研討班.
[3] 屈婉玲.離散數學[M].北京:.高等教育出版社,2008,3.
[4] 左孝陵.離散數學. [M].北京:科技文獻出版社,1982,9.
[5] 耿素云,屈婉玲,王悍貧.離散數學教程[M].北京:.北京大學出版社. 2004,2.