Table Of ContentCohen J O E L S . C O H E N
J O E L S . C O H E N C Computer Algebra and
Computer Algebra and o
m
p
Symbolic Computation u
t
e Symbolic Computation
r
Mathematical Methods A
l
g
e
b
r M a t h e m a t i c a l M e t h o d s
Mathematica™, Maple™, and similar software packages provide a
programs that carry out sophisticated mathematical operations. In a
this book the author explores the mathematical methods that form n
the basis for such programs, in particular the application of algorithms d
to methods such as automatic simplification, polynomial decomposition, S
y
and polynomial factorization. Computer Algebra and Symbolic m
Computation: Mathematical Methods goes beyond the basics of b
computer algebra—presented in Computer Algebra and Symbolic o
l
Computation: Elementary Algorithms—to explore complexity analysis ic
of algorithms and recent developments in the field.
C
o
This text: m
p
u
•is well-suited for self-study and can be used as the basis for a t
a
graduate course. t
•maintains the style set by Elementary Algorithms and explains io
mathematical methods as needed. n
•introduces advanced methods to treat complex operations.
•presents implementations in such programs as Mathematica™
and Maple™. M
•includes a CD with the complete text, hyperlinks, and algorithms a
t
as well as additional reference files. he
m
For the student, Mathematical Methods is an essential companion to at
Elementary Algorithms, illustrating applications of basic ideas. For ica
the professional, Mathematical Methods is a look at new applications l M
of familiar concepts. e
t
h
o
d
ISBN 1-56881-159-4 s
ì<(sl&q)=ibbfji< +^-Ä-U-Ä-U
A K Peters, Ltd. PEAT EKRS
(cid:1)(cid:2)(cid:3)(cid:4)(cid:5)(cid:6)(cid:7)(cid:8)(cid:9)(cid:10)(cid:11)(cid:12)(cid:7)(cid:13)(cid:8)(cid:14)(cid:9)(cid:14)(cid:15)(cid:16)(cid:9)(cid:17)(cid:18)(cid:3)(cid:13)(cid:2)(cid:11)(cid:19)(cid:20)(cid:9)(cid:1)(cid:2)(cid:3)(cid:4)(cid:5)(cid:6)(cid:14)(cid:6)(cid:19)(cid:2)(cid:15)
(cid:1)(cid:2)(cid:3)(cid:4)(cid:5)(cid:6)(cid:7)(cid:8)(cid:9)(cid:10)(cid:11)(cid:12)(cid:7)(cid:13)(cid:8)(cid:14)(cid:9)(cid:14)(cid:15)(cid:16)(cid:9)(cid:17)(cid:18)(cid:3)(cid:13)(cid:2)(cid:11)(cid:19)(cid:20)(cid:9)(cid:1)(cid:2)(cid:3)(cid:4)(cid:5)(cid:6)(cid:14)(cid:6)(cid:19)(cid:2)(cid:15)
(cid:21)(cid:14)(cid:6)(cid:22)(cid:7)(cid:3)(cid:14)(cid:6)(cid:19)(cid:20)(cid:14)(cid:11)(cid:9)(cid:21)(cid:7)(cid:6)(cid:22)(cid:2)(cid:16)(cid:23)
(cid:24)(cid:2)(cid:7)(cid:11)(cid:9)(cid:17)(cid:25)(cid:9)(cid:1)(cid:2)(cid:22)(cid:7)(cid:15)
(cid:1)(cid:2)(cid:3)(cid:4)(cid:5)(cid:6)(cid:7)(cid:2)(cid:8)(cid:6)(cid:9)(cid:10)(cid:11)(cid:9)(cid:12)(cid:10)(cid:7)(cid:3)(cid:13)(cid:6)(cid:2)(cid:5)(cid:9)(cid:14)(cid:15)(cid:16)(cid:2)(cid:8)(cid:15)(cid:2)
(cid:17)(cid:8)(cid:16)(cid:18)(cid:2)(cid:5)(cid:19)(cid:16)(cid:6)(cid:20)(cid:9)(cid:10)(cid:11)(cid:9)(cid:1)(cid:2)(cid:8)(cid:18)(cid:2)(cid:5)
(cid:1)(cid:2)(cid:3)(cid:2)(cid:4)(cid:5)(cid:6)(cid:5)(cid:7)(cid:8)
(cid:9)(cid:10)(cid:6)(cid:11)(cid:12)(cid:13)(cid:14)(cid:2)(cid:15)(cid:10)(cid:8)(cid:8)(cid:10)(cid:12)(cid:16)(cid:17)(cid:8)(cid:5)(cid:6)(cid:6)(cid:8)
1(cid:7)(cid:3)(cid:5)(cid:21)(cid:2)(cid:3)(cid:10)(cid:25)(cid:23)(cid:8)(cid:26)(cid:10)(cid:25)(cid:6)!(cid:23)(cid:8)(cid:10)(cid:4)(cid:7)(cid:8)(cid:9)(cid:30)!(cid:5)(cid:21)(cid:28)(cid:6)(cid:2)(cid:8)(cid:26)(cid:6)(cid:2)2(cid:3)#(cid:6)(cid:8)3’’(cid:3)#(cid:6)
,(cid:8)4(cid:8)(cid:1)(cid:6)(cid:5)(cid:6)(cid:2)!(cid:23)(cid:8)5(cid:5)(cid:7)(cid:27)
(cid:13)(cid:16)(cid:8)(cid:26)(cid:21)(cid:30)(cid:5)(cid:22)(cid:8),2(cid:6)(cid:4)(cid:30)(cid:6)
*(cid:10)(cid:5)(cid:3)#6(cid:23)(cid:8)7,(cid:8)(cid:8)(cid:11)(cid:17)(cid:12)(cid:13)(cid:11)
888(cid:27)(cid:10)6(cid:29)(cid:6)(cid:5)(cid:6)(cid:2)!(cid:27)#(cid:21)(cid:28)
(cid:9)(cid:21)(cid:29)"(cid:2)(cid:3)(cid:31)(cid:22)(cid:5)(cid:8)(cid:8)9(cid:8)(cid:8)(cid:20)(cid:11)(cid:11)(cid:16)(cid:8) "(cid:8),(cid:8)4(cid:8)(cid:1)(cid:6)(cid:5)(cid:6)(cid:2)!(cid:23)(cid:8)5(cid:5)(cid:7)(cid:27)
,(cid:25)(cid:25)(cid:8)(cid:2)(cid:3)(cid:31)(cid:22)(cid:5)!(cid:8)(cid:2)(cid:6)!(cid:6)(cid:2)2(cid:6)(cid:7)(cid:27)(cid:8)*(cid:21)(cid:8)(cid:29)(cid:10)(cid:2)(cid:5)(cid:8)(cid:21)’(cid:8)(cid:5)(cid:22)(cid:6)(cid:8)(cid:28)(cid:10)(cid:5)(cid:6)(cid:2)(cid:3)(cid:10)(cid:25)(cid:8)(cid:29)(cid:2)(cid:21)(cid:5)(cid:6)#(cid:5)(cid:6)(cid:7)(cid:8) "(cid:8)(cid:5)(cid:22)(cid:3)!(cid:8)#(cid:21)(cid:29)"(cid:2)(cid:3)(cid:31)(cid:22)(cid:5)(cid:8)(cid:4)(cid:21)(cid:5)(cid:3)#(cid:6)
(cid:28)(cid:10)"(cid:8) (cid:6)(cid:8)(cid:2)(cid:6)(cid:29)(cid:2)(cid:21)(cid:7)(cid:30)#(cid:6)(cid:7)(cid:8)(cid:21)(cid:2)(cid:8)(cid:30)(cid:5)(cid:3)(cid:25)(cid:3):(cid:6)(cid:7)(cid:8)(cid:3)(cid:4)(cid:8)(cid:10)(cid:4)"(cid:8)’(cid:21)(cid:2)(cid:28)(cid:23)(cid:8)(cid:6)(cid:25)(cid:6)#(cid:5)(cid:2)(cid:21)(cid:4)(cid:3)#(cid:8)(cid:21)(cid:2)(cid:8)(cid:28)(cid:6)#(cid:22)(cid:10)(cid:4)(cid:3)#(cid:10)(cid:25)(cid:23)(cid:8)(cid:3)(cid:4)#(cid:25)(cid:30)(cid:7)(cid:3)(cid:4)(cid:31)
(cid:29)(cid:22)(cid:21)(cid:5)(cid:21)#(cid:21)(cid:29)"(cid:3)(cid:4)(cid:31)(cid:23)(cid:8)(cid:2)(cid:6)#(cid:21)(cid:2)(cid:7)(cid:3)(cid:4)(cid:31)(cid:23)(cid:8)(cid:21)(cid:2)(cid:8) "(cid:8)(cid:10)(cid:4)"(cid:8)(cid:3)(cid:4)’(cid:21)(cid:2)(cid:28)(cid:10)(cid:5)(cid:3)(cid:21)(cid:4)(cid:8)!(cid:5)(cid:21)(cid:2)(cid:10)(cid:31)(cid:6)(cid:8)(cid:10)(cid:4)(cid:7)(cid:8)(cid:2)(cid:6)(cid:5)(cid:2)(cid:3)(cid:6)2(cid:10)(cid:25)(cid:8)!"!(cid:5)(cid:6)(cid:28)(cid:23)
8(cid:3)(cid:5)(cid:22)(cid:21)(cid:30)(cid:5)(cid:8)8(cid:2)(cid:3)(cid:5)(cid:5)(cid:6)(cid:4)(cid:8)(cid:29)(cid:6)(cid:2)(cid:28)(cid:3)!!(cid:3)(cid:21)(cid:4)(cid:8)’(cid:2)(cid:21)(cid:28)(cid:8)(cid:5)(cid:22)(cid:6)(cid:8)#(cid:21)(cid:29)"(cid:2)(cid:3)(cid:31)(cid:22)(cid:5)(cid:8)(cid:21)8(cid:4)(cid:6)(cid:2)(cid:27)
(cid:1)(cid:2)(cid:3)(cid:4)(cid:5)(cid:4)(cid:6)(cid:7)(cid:8)(cid:9)(cid:7)(cid:10)(cid:8)(cid:11)(cid:12)(cid:4)(cid:13)(cid:14)(cid:14)(cid:7)(cid:10)(cid:5)(cid:15)(cid:5)(cid:16)(cid:8)(cid:12)(cid:2)(cid:11)(cid:12)(cid:17)(cid:2)(cid:11)(cid:17)(cid:18)(cid:19)(cid:3)(cid:16)(cid:2)(cid:20)(cid:5)(cid:15)(cid:2)(cid:8)(cid:11)(cid:7)(cid:21)(cid:5)(cid:15)(cid:5)
(cid:9)(cid:21)(cid:22)(cid:6)(cid:4)(cid:23)(cid:8)(cid:24)(cid:21)(cid:6)(cid:25)(cid:8)(cid:26)(cid:27)
(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:9)(cid:21)(cid:28)(cid:29)(cid:30)(cid:5)(cid:6)(cid:2)(cid:8)(cid:10)(cid:25)(cid:31)(cid:6) (cid:2)(cid:10)(cid:8)(cid:10)(cid:4)(cid:7)(cid:8)!"(cid:28) (cid:21)(cid:25)(cid:3)#(cid:8)#(cid:21)(cid:28)(cid:29)(cid:30)(cid:5)(cid:10)(cid:5)(cid:3)(cid:21)(cid:4)(cid:8)$(cid:8)(cid:28)(cid:10)(cid:5)(cid:22)(cid:6)(cid:28)(cid:10)(cid:5)(cid:3)#(cid:10)(cid:25)(cid:8)(cid:28)(cid:6)(cid:5)(cid:22)(cid:21)(cid:7)!
%(cid:8)(cid:24)(cid:21)(cid:6)(cid:25)(cid:8)(cid:26)(cid:27)(cid:8)(cid:9)(cid:21)(cid:22)(cid:6)(cid:4)
(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:29)(cid:27)(cid:8)#(cid:28)(cid:27)
(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)&(cid:4)#(cid:25)(cid:30)(cid:7)(cid:6)!(cid:8) (cid:3) (cid:25)(cid:3)(cid:21)(cid:31)(cid:2)(cid:10)(cid:29)(cid:22)(cid:3)#(cid:10)(cid:25)(cid:8)(cid:2)(cid:6)’(cid:6)(cid:2)(cid:6)(cid:4)#(cid:6)!(cid:8)(cid:10)(cid:4)(cid:7)(cid:8)(cid:3)(cid:4)(cid:7)(cid:6)((cid:27)
(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)&(cid:26))*(cid:8)(cid:17)+(cid:14)(cid:13)(cid:19)(cid:19)(cid:17)+(cid:17)(cid:14)(cid:18)+(cid:15)
(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:17)(cid:27)(cid:8),(cid:25)(cid:31)(cid:6) (cid:2)(cid:10)-.(cid:10)(cid:5)(cid:10)(cid:8)(cid:29)(cid:2)(cid:21)#(cid:6)!!(cid:3)(cid:4)(cid:31)(cid:27)(cid:8)&(cid:27)(cid:8)/(cid:3)(cid:5)(cid:25)(cid:6)(cid:27)
0,(cid:17)(cid:14)(cid:14)(cid:27)(cid:12)(cid:27)1(cid:15)(cid:8)(cid:27)(cid:9)(cid:13)(cid:16)(cid:14)(cid:8)(cid:20)(cid:11)(cid:11)(cid:20)
(cid:14)(cid:17)(cid:20)-(cid:7)#(cid:20)(cid:17)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:20)(cid:11)(cid:11)(cid:20)(cid:11)(cid:20)(cid:15)(cid:16)(cid:17)(cid:14)
(cid:1)(cid:2)(cid:3)(cid:4)(cid:5)(cid:6)(cid:7)(cid:8)(cid:3)(cid:4)(cid:8)(cid:9)(cid:10)(cid:4)(cid:10)(cid:7)(cid:10)
(cid:11)(cid:12)(cid:8)(cid:8)(cid:11)(cid:13)(cid:8)(cid:8)(cid:11)(cid:14)(cid:8)(cid:8)(cid:11)(cid:15)(cid:8)(cid:8)(cid:11)(cid:16)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:8)(cid:17)(cid:11)(cid:8)(cid:8)(cid:18)(cid:8)(cid:8)(cid:19)(cid:8)(cid:8)(cid:12)(cid:8)(cid:8)(cid:13)(cid:8)(cid:8)(cid:14)(cid:8)(cid:8)(cid:15)(cid:8)(cid:8)(cid:16)(cid:8)(cid:8)(cid:20)(cid:8)(cid:8)(cid:17)
(cid:1)(cid:2)(cid:3)(cid:4)(cid:5)(cid:6)(cid:4)(cid:7)(cid:8)(cid:9)(cid:10)(cid:4)(cid:11)(cid:12)(cid:13)(cid:14)(cid:3)(cid:6)(cid:15)
vii
Contents
1 Preface ix
1 Background Concepts 1
1.1 Computer Algebra Systems . . . . . . . . . . . . . . . . . . . . 1
1.2 Mathematical Pseudo-Language(MPL) . . . . . . . . . . . . . 2
1.3 Automatic Simplification and ExpressionStructure . . . . . . 5
1.4 General Polynomial Expressions . . . . . . . . . . . . . . . . . 11
1.5 Miscellaneous Operators . . . . . . . . . . . . . . . . . . . . . 12
2 Integers, Rational Numbers, and Fields 17
2.1 The Integers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2 Rational Number Arithmetic . . . . . . . . . . . . . . . . . . . 37
2.3 Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3 Automatic Simplification 63
3.1 The Goal of Automatic Simplification . . . . . . . . . . . . . . 63
3.2 An Automatic Simplification Algorithm . . . . . . . . . . . . . 91
4 Single Variable Polynomials 111
4.1 Elementary Concepts and Polynomial Division . . . . . . . . . 111
4.2 Greatest Common Divisors in F[x] . . . . . . . . . . . . . . . . 126
4.3 Computations in Elementary Algebraic Number Fields . . . . 146
4.4 PartialFraction Expansion in F(x) . . . . . . . . . . . . . . . . 166
viii
5 Polynomial Decomposition 179
5.1 Theoretical Background . . . . . . . . . . . . . . . . . . . . 180
5.2 A Decomposition Algorithm . . . . . . . . . . . . . . . . . 188
6 Multivariate Polynomials 201
6.1 Multivariate Polynomials and Integral Domains . . . . . . . 201
6.2 Polynomial Division and Expansion. . . . . . . . . . . . . . 207
6.3 Greatest Common Divisors . . . . . . . . . . . . . . . . . . 229
7 The Resultant 265
7.1 The Resultant Concept . . . . . . . . . . . . . . . . . . . . 265
7.2 Polynomial Relations for Explicit Algebraic Numbers . . . . 289
8 Polynomial Simplification with Side Relations 297
8.1 Multiple Division and Reduction . . . . . . . . . . . . . . . 297
8.2 Equivalence, Simplification, and Ideals . . . . . . . . . . . 318
8.3 A Simplification Algorithm . . . . . . . . . . . . . . . . . . 334
9 Polynomial Factorization 349
9.1 Square-Free Polynomials and Factorization . . . . . . . . . 350
9.2 Irreducible Factorization: The Classical Approach . . . . . 360
9.3 Factorization in Zp[x] . . . . . . . . . . . . . . . . . . . . . 370
9.4 Irreducible Factorization: A Modern Approach . . . . . . . 399
Bibliography 431
Index 441