§ 瀏覽學位論文書目資料
  
系統識別號 U0002-0307201322181500
DOI 10.6846/TKU.2013.00114
論文名稱(中文) 支援分解因式的代數程式庫
論文名稱(英文) An Algebraic Library Supporting Polynomial Factorization
第三語言論文名稱
校院名稱 淡江大學
系所名稱(中文) 資訊管理學系碩士班
系所名稱(英文) Department of Information Management
外國學位學校名稱
外國學位學院名稱
外國學位研究所名稱
學年度 101
學期 2
出版年 102
研究生(中文) 何思賢
研究生(英文) Sih-Sian He
學號 698631404
學位類別 碩士
語言別 繁體中文
第二語言別
口試日期 2013-06-22
論文頁數 61頁
口試委員 指導教授 - 廖賀田
委員 - 侯永昌
委員 - 伍台國
關鍵字(中) java
程式庫
計算機代數
關鍵字(英) java
library
computer algebra
第三語言關鍵字
學科別分類
中文摘要
目前市面上雖有許多數學套裝軟體,但是價格都十分昂貴,因此本論文提出一套以Java語言實作之代數程式庫,目的是以支援高中數學課程。目前系統以能支援多項式、矩陣、複數、根數、有理數、整數、模n整數與有限體。
本論文完成多項式的因式分解,目前可支援係數為有限體與整數的多項式系統;本程式庫能判斷佈於有限體的多項式是否為不可分解多項式;在不同數值型態之間能互相轉換,使其能相互運算;也實做了複數、有限體和一些計算機代數書籍中的演算法。



關鍵字:java, 程式庫, 計算機代數
英文摘要
This paper presents an algebraic library in java. The primary purpose of the library is supporting senior high school mathematics course. 
The scope of this library includes: (1) factorization of polynomials with rational coefficients, (2) determine the irreducibility of polynomials over finite fields, (3) element casting among different algebraic systems, (4) radical numbers, (5) some algorithms in computer algebra.
第三語言摘要
論文目次
目錄
1.	緒論.................................1
1.1.	研究動...............................1
1.2.	研究目的..............................1
1.3.	論文組織..............................2
2.	相關研究..............................3
2.1.	高中數學課程..........................3
2.2.	Java原生數值型態......................4
2.3.	物件導向技術..........................5
2.4.	其它數學系統..........................5
2.5.	代數教學輔助系統.......................6
3.	有限體...............................7
3.1.	IrreducibleTable....................7
3.2.	有限體資料結構.........................8
3.3.	有限體的使用...........................8
4.	多項式的因式分解.......................10
4.1.	佈於有限體的多項式分解..................10
4.1.1.	Equal-degree分解.....................10
4.1.2.	多項式分解............................12
4.2.	佈於整數的多項式分解....................14
4.2.1.	Squarefree分解.......................14
4.2.2.	Hensel lifting......................15
4.2.3.	多項式分解............................18
4.3.	多項式解範例..........................21
5.	因式類別.............................31
6.	Algebraic System與Element...........33
6.1.	Algebraic System與Element類別........33
6.2.	embed函式............................36
6.3.	de-embed............................41
7.	通用質根根數..........................44
7.1.	通用質根根數資料結構....................44
7.2.	SeedList............................45
8.	複數.................................50
8.1.	複數資料結構..........................50
8.2.	有理複數資料結構.......................50
8.3.	複數與有理複數的運算....................51
9.	演算法實作............................51
9.1.	Repeated Squaring Algorithm.........52
9.2.	連分數...............................52
9.3.	中國餘式定理..........................53
9.4.	Lagrange Interpolant................55
9.5.	Content與Primitive Part..............56
9.6.	Resultant與Syslvester Matrix..........57
10.	結論與展望.............................60

圖目錄
圖 一、因式儲存範例	.............................31
圖 二、通用質根類別資料結構.......................45
圖 三、質根擴充時資料結構改變情形..................46
圖 四、 質根為2、3、5、7........................47
圖 五、Sylvester Matrix.......................58

表目錄
表 一、高中數學課程	..............................4
表 二、java原生型態..............................4
表 三、Irreducible Polynomail推廣定理............7
表 四、判斷多項式是否為不可分解多項式演算法[4]........8
表 五、有限體使用範例.............................9
表 六、Equal-degree分解定理1....................10
表 七、Equal-degree分解定理2....................10
表 八、Equal-degree splitting演算法[4]..........12
表 九、Equal-degree factorization演算法[4]	......12
表 十、 Polynomial factorization over finite fields演算法[4]...........................................13
表 十一、Yun’s squarefree factorization in characteristic zero演算法[4]..................................15
表 十二、 SquareFree分解定理.....................15
表 十三、Hensel Step定理........................16
表 十四、Hensel step演算法[4]....................17
表 十五、Hensel lifting定理1....................17
表 十六、Hensel lifting定理2....................17
表 十七、Hensel lifting演算法[4].................18
表 十八、Factorization in  演算法[4].............20
表 十九、多項式分解演算法[4].......................21
表 二十、SqareFree分解範例1......................21
表 二十一、Hensel Step範例1......................22
表 二十二、Hensel Step範例2......................23
表 二十三、SqareFree分解範例2.....................25
表 二十四、Hensel Step範例3......................28
表 二十五 、因式分解使用範例.......................32
表 二十六、支援的數值型態的代數系統與其元素...........34
表 二十七、CA類別使用範例.........................35
表 二十八、整數使用範例...........................36
表 二十九、Embed的使用範例........................37
表 三十、非多項式元素embed至多項式系統演算法.........38
表 三十一、多項式元素embed演算法...................38
表 三十二、embed至複數系統演算法...................39
表 三十三、embed至通用質根根數系統演算法.............40
表 三十四、embed至多質根根數系統演算法..............41
表 三十五、isReal函式實做.........................41
表 三十六、getReal實做...........................41
表 三十七、通用質根與多質根根數的isRational實做......42
表 三十八、通用質根與多質根根數的rationalPart實做....42
表 三十九、rationalPart.........................43
表 四十、above的實做.............................43
表 四十一、Repeated Squaring演算法範例............52
表 四十二、連分數使用範例..........................53
表 四十三、CRA使用範例............................55
表 四十四、拉格朗日插值法使用範例...................56
表 四十五、content與primitive part	..............57
表 四十六、結式與西爾維斯特矩陣使用範例。.............59
參考文獻
[1]    教育部, “高中課程綱要必修數學, 2010
[2]    教育部, “高中課程綱要選修數學, 2010
[3]    吳忠穎,“代數教學輔助系統”, 碩士論文, 淡江大學資訊管理研究所, 2006.
[4]    Joachim Von Zur Gathen and Jurgen Gerhard,“Modern Computer Algebra, Second Edition”Cambridge University, 2003.
[5]    Wolfram Research, “Mathematica 8”,
http://www.wolfram.com/mathematica/, 2010.
[6]    MapleSoft, “Maple 14”, http://www.maplesoft.com/, 2010.
[7]    Maxima, “Maxima”, http://maxima.sourceforge.net/, 2010.
[8]    Magma, “Magma”, http://magma.maths.usyd.edu.au/magma/, 2010.
論文全文使用權限
校內
校內紙本論文立即公開
同意電子論文全文授權校園內公開
校內電子論文立即公開
校外
同意授權
校外電子論文立即公開

如有問題,歡迎洽詢!
圖書館數位資訊組 (02)2621-5656 轉 2487 或 來信