從網路課程 程式必修課!離散數學與演算法 來淺嚐一下沒機會在課堂上所學的離散數學與演算法。或許對撰寫程式的效能提昇會有些幫助。
課程相關資訊
[連結]:https://hiskio.com/courses/1196/lectures/133687
本篇範圍:Chapter 4
請注意:本系列文章為個人對應課程的消化吸收後,所整理出來的內容。換言之,並不一定會包含全部的課程內容,也有可能會添加其他資源來說明。
內容
情境
注意:用過 U.I. 後,就不能使用 E.I.
1. 世上所有的電腦都支援 USB Type A
2. 有些電腦支援 Type C
因此,世上有些電腦同時支援 Type A 和 Type C
C(x) 表示 x 是一台電腦;U(x) 表示 x 支援 Type-A;T(x) 表示 x 支援 Type-C
因此,這題是要證明 (∀x) [C(x) -> U(x) ] ^ (∃x) [C(x) ^ T(x)] -> (∃x) [ C(x) ^ T(x) ^ U(x) ]
1. (∀x) [C(x) -> U(x) ] 為 hyp1
2. (∃x) [C(x) ^ T(x)] 為 hyp2
3. 由 Step2 透過 E.I.,可得 C(a) ^ T(a)
4. 由 Step1 透過 U.I.,可得 C(a) -> U(a)
5. 由 Step3 透過 Simm,可得 C(a)
6. 由 Step3 透過 Simm,可得 T(a)
7. 由 Step4 和 Step5 透過 m.p. ,可得 U(a)
8. 透過 Step5, Step6, Step7 的 conj,可得 C(a) ^ T(a) ^ U(a)
9. 由 Step8 的 E.G.,可得 (∃x) [ C(x) ^ T(x) ^ U(x) ]