algebra 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (199) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +53 -0
  3. data/.travis.yml +7 -0
  4. data/CODE_OF_CONDUCT.md +49 -0
  5. data/Gemfile +7 -0
  6. data/Gemfile.lock +28 -0
  7. data/LICENSE.txt +21 -0
  8. data/README-ja.txt +60 -0
  9. data/README.md +61 -0
  10. data/Rakefile +43 -0
  11. data/algebra.gemspec +33 -0
  12. data/bin/console +14 -0
  13. data/bin/setup +8 -0
  14. data/doc-ja/README-ja.html +69 -0
  15. data/doc-ja/README-ja.rd +60 -0
  16. data/doc-ja/README.html +0 -0
  17. data/doc-ja/README.rd +0 -0
  18. data/doc-ja/algebra-ja.html +66 -0
  19. data/doc-ja/algebra-ja.rd +60 -0
  20. data/doc-ja/algebraic-equation-ja.html +36 -0
  21. data/doc-ja/algebraic-equation-ja.rd +26 -0
  22. data/doc-ja/algebraic-extension-field-ja.html +122 -0
  23. data/doc-ja/algebraic-extension-field-ja.rd +118 -0
  24. data/doc-ja/algebraic-parser-ja.html +87 -0
  25. data/doc-ja/algebraic-parser-ja.rd +95 -0
  26. data/doc-ja/changes.html +161 -0
  27. data/doc-ja/changes.rd +119 -0
  28. data/doc-ja/elementary-divisor-ja.html +56 -0
  29. data/doc-ja/elementary-divisor-ja.rd +45 -0
  30. data/doc-ja/euclidian-ring-ja.html +78 -0
  31. data/doc-ja/euclidian-ring-ja.rd +69 -0
  32. data/doc-ja/finite-group-ja.html +285 -0
  33. data/doc-ja/finite-group-ja.rd +276 -0
  34. data/doc-ja/finite-map-ja.html +224 -0
  35. data/doc-ja/finite-map-ja.rd +227 -0
  36. data/doc-ja/finite-set-ja.html +393 -0
  37. data/doc-ja/finite-set-ja.rd +408 -0
  38. data/doc-ja/index-ja.html +113 -0
  39. data/doc-ja/index-ja.rd +112 -0
  40. data/doc-ja/jordan-form-ja.html +106 -0
  41. data/doc-ja/jordan-form-ja.rd +99 -0
  42. data/doc-ja/localized-ring-ja.html +121 -0
  43. data/doc-ja/localized-ring-ja.rd +131 -0
  44. data/doc-ja/m-polynomial-ja.html +542 -0
  45. data/doc-ja/m-polynomial-ja.rd +596 -0
  46. data/doc-ja/matrix-algebra-ja.html +686 -0
  47. data/doc-ja/matrix-algebra-ja.rd +727 -0
  48. data/doc-ja/matrix-algebra-triplet-ja.html +124 -0
  49. data/doc-ja/matrix-algebra-triplet-ja.rd +129 -0
  50. data/doc-ja/permutation-group-ja.html +159 -0
  51. data/doc-ja/permutation-group-ja.rd +151 -0
  52. data/doc-ja/polynomial-converter-ja.html +64 -0
  53. data/doc-ja/polynomial-converter-ja.rd +54 -0
  54. data/doc-ja/polynomial-ja.html +446 -0
  55. data/doc-ja/polynomial-ja.rd +473 -0
  56. data/doc-ja/residue-class-ring-ja.html +112 -0
  57. data/doc-ja/residue-class-ring-ja.rd +113 -0
  58. data/doc-ja/sample-algebraic-equation01.rb.v.rd +11 -0
  59. data/doc-ja/sample-algebraic-equation02.rb.v.rd +11 -0
  60. data/doc-ja/sample-algebraic-root01.rb.v.rd +20 -0
  61. data/doc-ja/sample-algebraicfield01.rb.v.rd +26 -0
  62. data/doc-ja/sample-algebraicfield02.rb.v.rd +15 -0
  63. data/doc-ja/sample-cayleyhamilton01.rb.v.rd +14 -0
  64. data/doc-ja/sample-diagonalization01.rb.v.rd +48 -0
  65. data/doc-ja/sample-divmod01.rb.v.rd +17 -0
  66. data/doc-ja/sample-elementary-divisor01.rb.v.rd +48 -0
  67. data/doc-ja/sample-factorize01.rb.v.rd +11 -0
  68. data/doc-ja/sample-factorize02.rb.v.rd +13 -0
  69. data/doc-ja/sample-factorize03.rb.v.rd +14 -0
  70. data/doc-ja/sample-factorize04.rb.v.rd +14 -0
  71. data/doc-ja/sample-factorize05.rb.v.rd +53 -0
  72. data/doc-ja/sample-galois-group01.rb.v.rd +27 -0
  73. data/doc-ja/sample-gaussian-elimination01.rb.v.rd +19 -0
  74. data/doc-ja/sample-geometry01.rb.v.rd +33 -0
  75. data/doc-ja/sample-geometry02.rb.v.rd +34 -0
  76. data/doc-ja/sample-geometry03.rb.v.rd +45 -0
  77. data/doc-ja/sample-geometry04.rb.v.rd +33 -0
  78. data/doc-ja/sample-geometry07.rb.v.rd +62 -0
  79. data/doc-ja/sample-groebner01.rb.v.rd +13 -0
  80. data/doc-ja/sample-groebner02.rb.v.rd +18 -0
  81. data/doc-ja/sample-groebner03.rb.v.rd +19 -0
  82. data/doc-ja/sample-group01.rb.v.rd +21 -0
  83. data/doc-ja/sample-jordan-form01.rb.v.rd +56 -0
  84. data/doc-ja/sample-jordanform01.rb.v.rd +55 -0
  85. data/doc-ja/sample-lagrange-multiplier01.rb.v.rd +35 -0
  86. data/doc-ja/sample-m-factorize01.rb.v.rd +15 -0
  87. data/doc-ja/sample-m-factorize02.rb.v.rd +12 -0
  88. data/doc-ja/sample-m-polynomial01.rb.v.rd +10 -0
  89. data/doc-ja/sample-map01.rb.v.rd +9 -0
  90. data/doc-ja/sample-polynomial01.rb.v.rd +9 -0
  91. data/doc-ja/sample-polynomial02.rb.v.rd +11 -0
  92. data/doc-ja/sample-primefield01.rb.v.rd +13 -0
  93. data/doc-ja/sample-quotientfield01.rb.v.rd +11 -0
  94. data/doc-ja/sample-quotientfield02.rb.v.rd +18 -0
  95. data/doc-ja/sample-quotientfield03.rb.v.rd +16 -0
  96. data/doc-ja/sample-quotientfield04.rb.v.rd +16 -0
  97. data/doc-ja/sample-set01.rb.v.rd +18 -0
  98. data/doc-ja/sample-splitting-field01.rb.v.rd +19 -0
  99. data/doc-ja/samples-ja.html +885 -0
  100. data/doc-ja/samples-ja.rd +221 -0
  101. data/doc-ja/style.css +85 -0
  102. data/doc-ja/todo.html +20 -0
  103. data/doc-ja/todo.rd +9 -0
  104. data/lib/algebra.rb +36 -0
  105. data/lib/algebra/algebraic-equation.rb +56 -0
  106. data/lib/algebra/algebraic-extension-field.rb +135 -0
  107. data/lib/algebra/algebraic-parser.rb +160 -0
  108. data/lib/algebra/algebraic-system.rb +224 -0
  109. data/lib/algebra/annihilate.rb +52 -0
  110. data/lib/algebra/array-supplement.rb +53 -0
  111. data/lib/algebra/auto-require.rb +84 -0
  112. data/lib/algebra/chinese-rem-th.rb +135 -0
  113. data/lib/algebra/combinatorial.rb +145 -0
  114. data/lib/algebra/elementary-divisor.rb +193 -0
  115. data/lib/algebra/euclidian-ring.rb +161 -0
  116. data/lib/algebra/factors.rb +305 -0
  117. data/lib/algebra/finite-group.rb +374 -0
  118. data/lib/algebra/finite-map.rb +201 -0
  119. data/lib/algebra/finite-set.rb +456 -0
  120. data/lib/algebra/galois-group.rb +129 -0
  121. data/lib/algebra/gaussian-elimination.rb +385 -0
  122. data/lib/algebra/groebner-basis-coeff.rb +228 -0
  123. data/lib/algebra/groebner-basis.rb +197 -0
  124. data/lib/algebra/import-module-single-thread.rb +86 -0
  125. data/lib/algebra/import-module.rb +491 -0
  126. data/lib/algebra/jordan-form.rb +114 -0
  127. data/lib/algebra/linear-algebra.rb +143 -0
  128. data/lib/algebra/localized-ring.rb +294 -0
  129. data/lib/algebra/m-index.rb +282 -0
  130. data/lib/algebra/m-polynomial-factor-int.rb +186 -0
  131. data/lib/algebra/m-polynomial-factor-zp.rb +114 -0
  132. data/lib/algebra/m-polynomial-factor.rb +315 -0
  133. data/lib/algebra/m-polynomial-gcd.rb +40 -0
  134. data/lib/algebra/m-polynomial.rb +875 -0
  135. data/lib/algebra/matrix-algebra-triplet.rb +292 -0
  136. data/lib/algebra/matrix-algebra.rb +929 -0
  137. data/lib/algebra/numeric-supplement.rb +123 -0
  138. data/lib/algebra/permutation-group.rb +257 -0
  139. data/lib/algebra/polynomial-converter.rb +193 -0
  140. data/lib/algebra/polynomial-factor-alg.rb +148 -0
  141. data/lib/algebra/polynomial-factor-int.rb +252 -0
  142. data/lib/algebra/polynomial-factor-zp.rb +165 -0
  143. data/lib/algebra/polynomial-factor.rb +140 -0
  144. data/lib/algebra/polynomial.rb +592 -0
  145. data/lib/algebra/powers.rb +31 -0
  146. data/lib/algebra/prime-gen.rb +32 -0
  147. data/lib/algebra/rational.rb +81 -0
  148. data/lib/algebra/residue-class-ring.rb +219 -0
  149. data/lib/algebra/sets-system.rb +43 -0
  150. data/lib/algebra/splitting-field.rb +103 -0
  151. data/lib/algebra/version.rb +3 -0
  152. data/sample/Makefile +10 -0
  153. data/sample/do-testscripts.rb +100 -0
  154. data/sample/sample-algebraic-equation01.rb +6 -0
  155. data/sample/sample-algebraic-equation02.rb +6 -0
  156. data/sample/sample-algebraic-root01.rb +15 -0
  157. data/sample/sample-algebraicfield01.rb +21 -0
  158. data/sample/sample-algebraicfield02.rb +10 -0
  159. data/sample/sample-cayleyhamilton01.rb +9 -0
  160. data/sample/sample-diagonalization01.rb +43 -0
  161. data/sample/sample-divmod01.rb +12 -0
  162. data/sample/sample-elementary-divisor01.rb +43 -0
  163. data/sample/sample-factorize01.rb +6 -0
  164. data/sample/sample-factorize02.rb +8 -0
  165. data/sample/sample-factorize03.rb +9 -0
  166. data/sample/sample-factorize04.rb +9 -0
  167. data/sample/sample-factorize05.rb +48 -0
  168. data/sample/sample-galois-group01.rb +22 -0
  169. data/sample/sample-gaussian-elimination01.rb +14 -0
  170. data/sample/sample-geometry01.rb +28 -0
  171. data/sample/sample-geometry02.rb +29 -0
  172. data/sample/sample-geometry03.rb +40 -0
  173. data/sample/sample-geometry04.rb +28 -0
  174. data/sample/sample-geometry07.rb +58 -0
  175. data/sample/sample-groebner01.rb +8 -0
  176. data/sample/sample-groebner02.rb +13 -0
  177. data/sample/sample-groebner03.rb +14 -0
  178. data/sample/sample-group01.rb +16 -0
  179. data/sample/sample-jordan-form01.rb +51 -0
  180. data/sample/sample-lagrange-multiplier01.rb +30 -0
  181. data/sample/sample-m-factorize01.rb +10 -0
  182. data/sample/sample-m-factorize02.rb +7 -0
  183. data/sample/sample-m-polynomial01.rb +5 -0
  184. data/sample/sample-map01.rb +4 -0
  185. data/sample/sample-polynomial01.rb +4 -0
  186. data/sample/sample-polynomial02.rb +6 -0
  187. data/sample/sample-primefield01.rb +8 -0
  188. data/sample/sample-quotientfield01.rb +6 -0
  189. data/sample/sample-quotientfield02.rb +13 -0
  190. data/sample/sample-quotientfield03.rb +11 -0
  191. data/sample/sample-quotientfield04.rb +11 -0
  192. data/sample/sample-set01.rb +13 -0
  193. data/sample/sample-splitting-field01.rb +14 -0
  194. data/sample/test-00-cayley-hamilton.rb +76 -0
  195. data/sample/test-00-groebner-basis.rb +274 -0
  196. data/sample/test-00-polynomial-factor-alg.rb +89 -0
  197. data/sample/test-00.list +4 -0
  198. data/sample/time-trial.rb +65 -0
  199. metadata +373 -0
@@ -0,0 +1,87 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+ <html xmlns="http://www.w3.org/1999/xhtml">
6
+ <head>
7
+ <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
8
+ <title>doc-ja/algebraic-parser-ja.rd</title>
9
+ <link href="style.css" type="text/css" rel="stylesheet" />
10
+ </head>
11
+ <body>
12
+ <h1><a name="label-0" id="label-0">Algebra::AlgebraicParser</a></h1><!-- RDLabel: "Algebra::AlgebraicParser" -->
13
+ <p><em>(文字列の代数的評価クラス)</em></p>
14
+ <h2><a name="label-1" id="label-1">ファイル名:</a></h2><!-- RDLabel: "ファイル名:" -->
15
+ <ul>
16
+ <li><var>algebraic-parser.rb</var></li>
17
+ </ul>
18
+ <h2><a name="label-2" id="label-2">スーパークラス:</a></h2><!-- RDLabel: "スーパークラス:" -->
19
+ <ul>
20
+ <li><var>Object</var></li>
21
+ </ul>
22
+ <h2><a name="label-3" id="label-3">インクルードしているモジュール:</a></h2><!-- RDLabel: "インクルードしているモジュール:" -->
23
+ <p>なし</p>
24
+ <h2><a name="label-4" id="label-4">クラスメソッド:</a></h2><!-- RDLabel: "クラスメソッド:" -->
25
+ <dl>
26
+ <dt><a name="label-5" id="label-5"><code>Algebra::AlgebraicParser.eval(<var>string</var>, <var>ring</var>)</code></a></dt><!-- RDLabel: "Algebra::AlgebraicParser.eval" -->
27
+ <dd>
28
+ <var>string</var> の四則演算式を <var>ring</var> 上で計算します。</dd>
29
+ </dl>
30
+ <h2><a name="label-6" id="label-6">メソッド:</a></h2><!-- RDLabel: "メソッド:" -->
31
+ <p>なし</p>
32
+ <h2><a name="label-7" id="label-7">仕様</a></h2><!-- RDLabel: "仕様" -->
33
+ <h3><a name="label-8" id="label-8">評価の手順</a></h3><!-- RDLabel: "評価の手順" -->
34
+ <p>変数の値は、その変数名を引数として <var>ring</var> のクラスメソ
35
+ ッド <var>indeterminate</var> の引数として渡され、その戻り値
36
+ として評価されます。また数値は <var>ring.ground</var> のクラス
37
+ メソッド <var>indterminate</var> で評価されます。</p>
38
+ <pre>require "algebraic-parser"
39
+ class A
40
+ def self.indeterminate(str)
41
+ case str
42
+ when "x"; 7
43
+ when "y"; 11
44
+ end
45
+ end
46
+ def A.ground
47
+ Integer
48
+ end
49
+ end
50
+ p Algebraic::AlgebraicParser.eval("x * y - x^2 + x/8", A)
51
+ #=&gt; 7*11 - 7**2 + 7/8 = 28</pre>
52
+ <p>ここで、Integer の indeterminate は algebraic-parser.rb が require
53
+ している algebra-supplement.rb で次のように定義されています。</p>
54
+ <pre>def Integer.indeterminate(x)
55
+ eval(x)
56
+ end</pre>
57
+ <h3><a name="label-9" id="label-9">識別子</a></h3><!-- RDLabel: "識別子" -->
58
+ <p>識別子は、「英字1文字+数字0文字以上」で定義されます。したがって</p>
59
+ <pre>"a13bc04def0"</pre>
60
+ <p>は、</p>
61
+ <pre>"a13 * b * c04 * d * e * f0"</pre>
62
+ <p>と解釈されます。</p>
63
+ <h3><a name="label-10" id="label-10">演算子</a></h3><!-- RDLabel: "演算子" -->
64
+ <p>演算子を結合の弱い順に並べます。</p>
65
+ <pre>; 中間評価
66
+ +, - 和, 差
67
+ +, - 単項 +, 単項 -
68
+ *, / 積, 商
69
+ 並置 積
70
+ **, ^ 冪</pre>
71
+ <h3><a name="label-11" id="label-11">用例</a></h3><!-- RDLabel: "用例" -->
72
+ <p>クラス <var>Algebra::Polynomial</var>、クラス <var>Algebra::MPolynomial</var> には適
73
+ 切に <var>indeterminate</var>, <var>ground</var>
74
+ が定義されています。したがって次のように文字列評価ができます。</p>
75
+ <pre>require "algebraic-parser"
76
+ require "rational"
77
+ require "m-polynomial"
78
+ F = Algebra::MPolynomial(Rational)
79
+ p Algebra::AlgebraicParser.eval("- (2*y)**3 + x", F) #=&gt; -8y^3 + x</pre>
80
+ <p><var>Algebra::MPolynomial</var> では、<var>indeterminate</var> は変数を表現するオブジェ
81
+ クトの登録も行うので、登録順が変数間の順序になります。したがって ; を
82
+ 使って先に変数を評価させる事によって、順序の変更をする事ができます。</p>
83
+ <pre>F.variables.clear
84
+ p Algebra::AlgebraicParser.eval("x; y; - (2*y)**3 + x", F) #=&gt; x - 8y^3</pre>
85
+
86
+ </body>
87
+ </html>
@@ -0,0 +1,95 @@
1
+ =begin
2
+ = Algebra::AlgebraicParser
3
+ ((*(文字列の代数的評価クラス)*))
4
+
5
+ == ファイル名:
6
+ * ((|algebraic-parser.rb|))
7
+
8
+ == スーパークラス:
9
+
10
+ * ((|Object|))
11
+
12
+ == インクルードしているモジュール:
13
+
14
+ なし
15
+
16
+ == クラスメソッド:
17
+ --- Algebra::AlgebraicParser.eval(string, ring)
18
+ ((|string|)) の四則演算式を ((|ring|)) 上で計算します。
19
+
20
+ == メソッド:
21
+
22
+ なし
23
+
24
+ == 仕様
25
+
26
+ === 評価の手順
27
+
28
+ 変数の値は、その変数名を引数として ((|ring|)) のクラスメソ
29
+ ッド ((|indeterminate|)) の引数として渡され、その戻り値
30
+ として評価されます。また数値は ((|ring.ground|)) のクラス
31
+ メソッド ((|indterminate|)) で評価されます。
32
+
33
+ require "algebraic-parser"
34
+ class A
35
+ def self.indeterminate(str)
36
+ case str
37
+ when "x"; 7
38
+ when "y"; 11
39
+ end
40
+ end
41
+ def A.ground
42
+ Integer
43
+ end
44
+ end
45
+ p Algebraic::AlgebraicParser.eval("x * y - x^2 + x/8", A)
46
+ #=> 7*11 - 7**2 + 7/8 = 28
47
+
48
+ ここで、Integer の indeterminate は algebraic-parser.rb が require
49
+ している algebra-supplement.rb で次のように定義されています。
50
+
51
+ def Integer.indeterminate(x)
52
+ eval(x)
53
+ end
54
+
55
+ === 識別子
56
+ 識別子は、「英字1文字+数字0文字以上」で定義されます。したがって
57
+
58
+ "a13bc04def0"
59
+
60
+ は、
61
+
62
+ "a13 * b * c04 * d * e * f0"
63
+
64
+ と解釈されます。
65
+
66
+ === 演算子
67
+ 演算子を結合の弱い順に並べます。
68
+
69
+ ; 中間評価
70
+ +, - 和, 差
71
+ +, - 単項 +, 単項 -
72
+ *, / 積, 商
73
+ 並置 積
74
+ **, ^ 冪
75
+
76
+ === 用例
77
+ クラス ((|Algebra::Polynomial|))、クラス ((|Algebra::MPolynomial|)) には適
78
+ 切に ((|indeterminate|)), ((|ground|))
79
+ が定義されています。したがって次のように文字列評価ができます。
80
+
81
+ require "algebraic-parser"
82
+ require "rational"
83
+ require "m-polynomial"
84
+ F = Algebra::MPolynomial(Rational)
85
+ p Algebra::AlgebraicParser.eval("- (2*y)**3 + x", F) #=> -8y^3 + x
86
+
87
+ ((|Algebra::MPolynomial|)) では、((|indeterminate|)) は変数を表現するオブジェ
88
+ クトの登録も行うので、登録順が変数間の順序になります。したがって ; を
89
+ 使って先に変数を評価させる事によって、順序の変更をする事ができます。
90
+
91
+ F.variables.clear
92
+ p Algebra::AlgebraicParser.eval("x; y; - (2*y)**3 + x", F) #=> x - 8y^3
93
+
94
+ =end
95
+
@@ -0,0 +1,161 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+ <html xmlns="http://www.w3.org/1999/xhtml">
6
+ <head>
7
+ <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
8
+ <title>doc-ja/changes.rd</title>
9
+ <link href="style.css" type="text/css" rel="stylesheet" />
10
+ </head>
11
+ <body>
12
+ <h1><a name="label-0" id="label-0">Changes</a></h1><!-- RDLabel: "Changes" -->
13
+ <h2><a name="label-1" id="label-1">0.71(2005.07.26)</a></h2><!-- RDLabel: "0.71(2005.07.26)" -->
14
+ <ul>
15
+ <li>MPolynomial#derivate</li>
16
+ <li>MPolynomial#map_to</li>
17
+ </ul>
18
+ <h2><a name="label-2" id="label-2">0.70(2005.02.02)</a></h2><!-- RDLabel: "0.70(2005.02.02)" -->
19
+ <ul>
20
+ <li>id =&gt; object_id</li>
21
+ </ul>
22
+ <h2><a name="label-3" id="label-3">0.69(2004.10.15)</a></h2><!-- RDLabel: "0.69(2004.10.15)" -->
23
+ <ul>
24
+ <li>MRationalFunctionField</li>
25
+ <li>MPolynomial#gcd</li>
26
+ <li>SquareMatrix#inverse depends on ufd?</li>
27
+ </ul>
28
+ <h2><a name="label-4" id="label-4">0.68(2004.07.28)</a></h2><!-- RDLabel: "0.68(2004.07.28)" -->
29
+ <ul>
30
+ <li>fix Mpolynomial#to_s (for tex)</li>
31
+ </ul>
32
+ <h2><a name="label-5" id="label-5">0.67(2004.06.10)</a></h2><!-- RDLabel: "0.67(2004.06.10)" -->
33
+ <ul>
34
+ <li>need_paren_in_coeff?</li>
35
+ <li>Matrix: entries are regulated.</li>
36
+ <li>Matrix: type*type is due to wedge.</li>
37
+ <li>AlgebraicSystem: wedge, superior?</li>
38
+ <li>Polynomial#sub, MPolynomial#sub</li>
39
+ <li>SquareMatrix.determinant</li>
40
+ <li>fix MPolynomial#to_s</li>
41
+ <li>fix Factors#normalize!</li>
42
+ <li>(Co)Vector#norm2, inner_product</li>
43
+ </ul>
44
+ <h2><a name="label-6" id="label-6">0.66(2004.06.05)</a></h2><!-- RDLabel: "0.66(2004.06.05)" -->
45
+ <ul>
46
+ <li>fix _hensel_lift (add param 'where')</li>
47
+ <li>sample-geometry01.rb</li>
48
+ <li>title of docs</li>
49
+ </ul>
50
+ <h2><a name="label-7" id="label-7">0.65(2004.06.04)</a></h2><!-- RDLabel: "0.65(2004.06.04)" -->
51
+ <ul>
52
+ <li>Polynomial#factor over Polynomial</li>
53
+ <li>reverse var's order in value_on &amp; convert_to in polynomial-convert.rb</li>
54
+ </ul>
55
+ <h2><a name="label-8" id="label-8">0.64(2004.03.01)</a></h2><!-- RDLabel: "0.64(2004.03.01)" -->
56
+ <ul>
57
+ <li>return value of SquareMatrix#diagonalize is Strut</li>
58
+ </ul>
59
+ <h2><a name="label-9" id="label-9">0.63(2004.01.08)</a></h2><!-- RDLabel: "0.63(2004.01.08)" -->
60
+ <ul>
61
+ <li>fix matrix[i, j] = x</li>
62
+ </ul>
63
+ <h2><a name="label-10" id="label-10">0.62(2003.11.13)</a></h2><!-- RDLabel: "0.62(2003.11.13)" -->
64
+ <ul>
65
+ <li>allow f.gcd_coeff_all()</li>
66
+ </ul>
67
+ <h2><a name="label-11" id="label-11">0.61(2003.11.06)</a></h2><!-- RDLabel: "0.61(2003.11.06)" -->
68
+ <ul>
69
+ <li>corrected Enumerable#any? in finite-set.rb</li>
70
+ </ul>
71
+ <h2><a name="label-12" id="label-12">0.60(2003.07.28)</a></h2><!-- RDLabel: "0.60(2003.07.28)" -->
72
+ <ul>
73
+ <li>AlgebraMatrix(cofactor, cofactor_matrix, adjoint)</li>
74
+ </ul>
75
+ <h2><a name="label-13" id="label-13">0.59(2003.07.28)</a></h2><!-- RDLabel: "0.59(2003.07.28)" -->
76
+ <ul>
77
+ <li>adapted to the version 1.8.0(preview 4)</li>
78
+ <li>include installer</li>
79
+ </ul>
80
+ <h2><a name="label-14" id="label-14">0.58(2002.04.00)</a></h2><!-- RDLabel: "0.58(2002.04.00)" -->
81
+ <ul>
82
+ <li>AlgebraicExtensionField#[n] is lift[n]</li>
83
+ <li>abolish the field of 'poly_exps' of the splitting field' and add 'proots'</li>
84
+ <li>MatrixAlgebra#rank</li>
85
+ <li>Raise Exception for the inverse of the non invertible square matrix</li>
86
+ <li>Use "import-module" for monomial order (0.57.18.01)</li>
87
+ </ul>
88
+ <h2><a name="label-15" id="label-15">0.57 (2002.03.16)</a></h2><!-- RDLabel: "0.57 (2002.03.16)" -->
89
+ <ul>
90
+ <li>New class
91
+ <ul>
92
+ <li>Set</li>
93
+ <li>Map</li>
94
+ <li>Group</li>
95
+ <li>PermuationGroup</li>
96
+ <li>AlgebraicExtensionField</li>
97
+ </ul></li>
98
+ <li>New methods
99
+ <ul>
100
+ <li>Galois#group</li>
101
+ <li>Polynomial#splitting_field</li>
102
+ </ul></li>
103
+ <li>Rename MinimalDecompositionField to decompose</li>
104
+ <li>Move *.rb to lib/</li>
105
+ <li>Define Polynomial.to_ary and MPolynomial.to_ary</li>
106
+ </ul>
107
+ <h2><a name="label-16" id="label-16">0.56 (2002.02.06)</a></h2><!-- RDLabel: "0.56 (2002.02.06)" -->
108
+ <ul>
109
+ <li>MPolynomial#with_ord</li>
110
+ <li>Orderings belong to MPolynomial.</li>
111
+ <li>MIndex is not a subclass of Array, now.</li>
112
+ <li>"Integer &lt; Numeric" ==&gt; "Integer"</li>
113
+ </ul>
114
+ <h2><a name="label-17" id="label-17">0.55 (2001.11.15)</a></h2><!-- RDLabel: "0.55 (2001.11.15)" -->
115
+ <ul>
116
+ <li>Improve Algorithm of Factorization over algebraic fields</li>
117
+ </ul>
118
+ <h2><a name="label-18" id="label-18">0.54 (2001.11.05)</a></h2><!-- RDLabel: "0.54 (2001.11.05)" -->
119
+ <ul>
120
+ <li>Elementary Divisor</li>
121
+ <li>Jordan Form</li>
122
+ <li>Minimal Decomposition Field</li>
123
+ </ul>
124
+ <h2><a name="label-19" id="label-19">0.53 (2001.10.03)</a></h2><!-- RDLabel: "0.53 (2001.10.03)" -->
125
+ <ul>
126
+ <li>move "MatrixAlgebra" to "Algebra::MatrixAlgebra"</li>
127
+ <li>move "MatrixAlgebra::Vector" to "Algebra::Vector"</li>
128
+ <li>move "MatrixAlgebra::Covector" to "Algebra::Covector",</li>
129
+ <li>move "MatrixAlgebra::SquareMatrix" to "Algebra::SquareMatrix"</li>
130
+ </ul>
131
+ <h2><a name="label-20" id="label-20">0.52 (2001.09.22)</a></h2><!-- RDLabel: "0.52 (2001.09.22)" -->
132
+ <ul>
133
+ <li>One-variate polynomial
134
+ <ul>
135
+ <li>Fundamental operations (addition, multiplication, quotient/remainder, ...)</li>
136
+ <li>factorization</li>
137
+ </ul></li>
138
+ <li>Multi-variate polynomial
139
+ <ul>
140
+ <li>Fundamental operations (addition, multiplication, ...)</li>
141
+ <li>factorization</li>
142
+ <li>Creating Groebner-basis, quotient/remainder by Groebner-basis.</li>
143
+ </ul></li>
144
+ <li>Algebraic systems
145
+ <ul>
146
+ <li>Creating quotient fields</li>
147
+ <li>Creating residue class fields</li>
148
+ <li>Operating matrices.</li>
149
+ </ul></li>
150
+ <li>Linear Algebra
151
+ <ul>
152
+ <li>Diagonalization of Symmetrix Matrix</li>
153
+ </ul></li>
154
+ </ul>
155
+ <h2><a name="label-21" id="label-21">0.40 (2001.03.03)</a></h2><!-- RDLabel: "0.40 (2001.03.03)" -->
156
+ <ul>
157
+ <li>Initial Version</li>
158
+ </ul>
159
+
160
+ </body>
161
+ </html>
@@ -0,0 +1,119 @@
1
+ =begin
2
+ = Changes
3
+ == 0.71(2005.07.26)
4
+ * MPolynomial#derivate
5
+ * MPolynomial#map_to
6
+
7
+ == 0.70(2005.02.02)
8
+ * id => object_id
9
+
10
+ == 0.69(2004.10.15)
11
+ * MRationalFunctionField
12
+ * MPolynomial#gcd
13
+ * SquareMatrix#inverse depends on ufd?
14
+
15
+ == 0.68(2004.07.28)
16
+ * fix Mpolynomial#to_s (for tex)
17
+
18
+ == 0.67(2004.06.10)
19
+ * need_paren_in_coeff?
20
+ * Matrix: entries are regulated.
21
+ * Matrix: type*type is due to wedge.
22
+ * AlgebraicSystem: wedge, superior?
23
+ * Polynomial#sub, MPolynomial#sub
24
+ * SquareMatrix.determinant
25
+ * fix MPolynomial#to_s
26
+ * fix Factors#normalize!
27
+ * (Co)Vector#norm2, inner_product
28
+
29
+ == 0.66(2004.06.05)
30
+ * fix _hensel_lift (add param 'where')
31
+ * sample-geometry01.rb
32
+ * title of docs
33
+
34
+ == 0.65(2004.06.04)
35
+ * Polynomial#factor over Polynomial
36
+ * reverse var's order in value_on & convert_to in polynomial-convert.rb
37
+
38
+ == 0.64(2004.03.01)
39
+ * return value of SquareMatrix#diagonalize is Strut
40
+
41
+ == 0.63(2004.01.08)
42
+ * fix matrix[i, j] = x
43
+
44
+ == 0.62(2003.11.13)
45
+ * allow f.gcd_coeff_all()
46
+
47
+ == 0.61(2003.11.06)
48
+ * corrected Enumerable#any? in finite-set.rb
49
+
50
+ == 0.60(2003.07.28)
51
+ * AlgebraMatrix(cofactor, cofactor_matrix, adjoint)
52
+
53
+ == 0.59(2003.07.28)
54
+ * adapted to the version 1.8.0(preview 4)
55
+ * include installer
56
+
57
+ == 0.58(2002.04.00)
58
+ * AlgebraicExtensionField#[n] is lift[n]
59
+ * abolish the field of 'poly_exps' of the splitting field' and add 'proots'
60
+ * MatrixAlgebra#rank
61
+ * Raise Exception for the inverse of the non invertible square matrix
62
+ * Use "import-module" for monomial order (0.57.18.01)
63
+
64
+ == 0.57 (2002.03.16)
65
+ * New class
66
+ * Set
67
+ * Map
68
+ * Group
69
+ * PermuationGroup
70
+ * AlgebraicExtensionField
71
+ * New methods
72
+ * Galois#group
73
+ * Polynomial#splitting_field
74
+ * Rename MinimalDecompositionField to decompose
75
+ * Move *.rb to lib/
76
+ * Define Polynomial.to_ary and MPolynomial.to_ary
77
+
78
+ == 0.56 (2002.02.06)
79
+ * MPolynomial#with_ord
80
+ * Orderings belong to MPolynomial.
81
+ * MIndex is not a subclass of Array, now.
82
+ * "Integer < Numeric" ==> "Integer"
83
+
84
+ == 0.55 (2001.11.15)
85
+ * Improve Algorithm of Factorization over algebraic fields
86
+
87
+ == 0.54 (2001.11.05)
88
+ * Elementary Divisor
89
+ * Jordan Form
90
+ * Minimal Decomposition Field
91
+
92
+ == 0.53 (2001.10.03)
93
+
94
+ * move "MatrixAlgebra" to "Algebra::MatrixAlgebra"
95
+ * move "MatrixAlgebra::Vector" to "Algebra::Vector"
96
+ * move "MatrixAlgebra::Covector" to "Algebra::Covector",
97
+ * move "MatrixAlgebra::SquareMatrix" to "Algebra::SquareMatrix"
98
+
99
+ == 0.52 (2001.09.22)
100
+
101
+ * One-variate polynomial
102
+ * Fundamental operations (addition, multiplication, quotient/remainder, ...)
103
+ * factorization
104
+ * Multi-variate polynomial
105
+ * Fundamental operations (addition, multiplication, ...)
106
+ * factorization
107
+ * Creating Groebner-basis, quotient/remainder by Groebner-basis.
108
+ * Algebraic systems
109
+ * Creating quotient fields
110
+ * Creating residue class fields
111
+ * Operating matrices.
112
+ * Linear Algebra
113
+ * Diagonalization of Symmetrix Matrix
114
+
115
+ == 0.40 (2001.03.03)
116
+
117
+ * Initial Version
118
+
119
+ =end