JOEL S COHEN Cohen Computer Algebra and Symbolic Computation Computer Algebra and Symbolic Computation Elementary Algorithms Elementary Algorithms AK PETERS CuuDuongThanCong.com CuuDuongThanCong.com Computer Algebra and Symbolic Computation CuuDuongThanCong.com CuuDuongThanCong.com Computer Algebra and Symbolic Computation Elementary Algorithms Joel S Cohen Department of Computer Science University of Denver A K Peters Natick, Massachusetts CuuDuongThanCong.com Editorial, Sales, and Customer Service Office A K Peters, Ltd 63 South Avenue Natick, MA 01760 www.akpeters.com Copyright © 2002 by A K Peters, Ltd All rights reserved No part of the material protected by this copyright notice may be reproduced or utilized in any form, electronic or mechanical, including photocopying, recording, or by any information storage and retrieval system, without written permission from the copyright owner Library of Congress Cataloging-in-Publication Data Cohen, Joel S Computer algebra and symbolic computation : elementary algorithms / Joel S Cohen p cm Includes bibliographical references and index ISBN 1-56881-158-6 AlgebraData processing I Title QA155.7.E4 C635 2002 512dc21 Printed in Canada 06 05 04 03 02 CuuDuongThanCong.com 10 2001055159 To my wife Kathryn CuuDuongThanCong.com CuuDuongThanCong.com Contents Preface ix Introduction to Computer Algebra 1.1 1.2 Computer Algebra and Computer Algebra Systems Applications of Computer Algebra Elementary Concepts of Computer Algebra 2.1 2.2 2.3 2.4 Mathematical Pseudo-language (MPL) Expression Evaluation Mathematical Programs Sets and Lists Recursive Structure of Mathematical Expressions 3.1 3.2 3.3 29 49 58 68 77 119 Mathematical Algorithms 119 MPL’s Algorithmic Language 132 Case Study: First Order Ordinary Differential Equations 156 Recursive Algorithms 5.1 5.2 5.3 29 Recursive Definitions and Algorithms 77 Expression Structure and Trees 84 Structure-Based Operators 108 Elementary Mathematical Algorithms 4.1 4.2 4.3 10 171 A Computational View of Recursion 171 Recursive Procedures 176 Case Study: Elementary Integration Operator 199 vii CuuDuongThanCong.com viii Contents Structure of Polynomials and Rational Expressions 6.1 6.2 6.3 6.4 6.5 Single Variable Polynomials General Polynomial Expressions Relationships Between Generalized Variables Manipulation of General Polynomial Expressions General Rational Expressions Exponential and Trigonometric Transformations 7.1 7.2 213 214 223 242 247 259 275 Exponential and Trigonometric Expansion 275 Exponential and Trigonometric Contraction 289 Bibliography 307 Index 316 CuuDuongThanCong.com 310 Bibliography [37] Richard J Fateman Symbolic mathematics system evaluators In Michael J Wester, editor, Computer Algebra Systems, A Practical Guide, pages 255–284 John Wiley & Sons, Ltd., New York, 1999 [38] Richard J Gaylord, N Kamin, Samuel, and Paul R Wellin An Introduction to Programming with Mathematica, Second Edition Springer-Verlag, New York, 1996 [39] K.O Geddes, S.R Czapor, and G Labahn Algorithms for Computer Algebra Kluwer Academic Publishers, Boston, 1992 [40] Jă urgen Gerhard, Walter Oevel, Frank Postel, and Stefan Wehmeier MuPAD Tutorial, English Edition Springer-Verlag, New York, 2000 [41] John W Gray Mastering Mathematica, Programming Methods and Applications Second Edition Academic Press, New York, 1997 [42] J Gutierrez and T Recio Advances on the simplification of sinecosine equations Journal of Symbolic Computation, 26(1):31–70, July 1998 [43] G H Hardy and E M Wright An Introduction To The Theory of Numbers Oxford at The Clarendon Press, London, 1960 [44] K M Heal, M L Hansen, and K M Rickard Maple Learning Guide Waterloo Maple Inc., Waterloo, ON, Canada, 2000 [45] Andr´e Heck Introduction to Maple Second Edition Springer-Verlag, New York, 1996 [46] I N Herstein Topics in Algebra Second Edition Xerox Publishing Company, Lexington, MA, 1975 [47] E W Hobson Treatise on Plane and Advanced Trigonometry Seventh Edition Dover Publications, Inc., New York, 1957 [48] Douglas R Hofstadter Gă odel, Escher, Bach: An Eternal Golden Braid Random House Inc., New York, 1980 [49] David J Jeffrey and Albert D Rich Simplifying square roots of square roots by denesting In Michael J Wester, editor, Computer Algebra Systems, A Practical Guide, pages 61–72 John Wiley & Sons, Ltd., New York, 1999 [50] Richard D Jenks and Robert S Sutor Axiom, The Scientific Computation System Springer-Verlag, New York, 1992 CuuDuongThanCong.com Bibliography 311 [51] N Kajler, editor Computer-Human Interaction in Symbolic Computation Springer-Verlag, New York, 1998 [52] Israel Kleiner Field theory, from equations to axiomatization part i American Mathematical Monthly, 106(7):677–684, August-September 1999 [53] Israel Kleiner Field theory, from equations to axiomatization part ii American Mathematical Monthly, 106(9):859–863, November 1999 [54] Morris Kline Mathematics and The Search for Knowledge Oxford University Press, New York, 1985 [55] D Knuth The Art of Computer Programming, volume Second Edition Addison-Wesley, Reading, MA, 1981 [56] Donald Knuth, Ronald Graham, and Oren Patashnik Concrete Mathematics, A Foundation For Computer Science Addison-Wesley, Reading, MA, 1989 [57] K Korsvold An on-line algebraic simplify program Technical report, Stanford University, 1965 Stanford University Artificial Intelligence Project, Memorandum 37 [58] J S Kowalik, editor Coupling Symbolic and Numerical Computing in Expert Systems Elsevier Science Publishers, New York, 1986 [59] Dexter Kozen and Susan Landau Polynomial decomposition algorithms Journal of Symbolic Computation, 7:445–456, 1989 [60] Susan Landau Simplification of nested radicals SIAM J Comput., 21(1):85–110, February 1992 [61] Ulrich Libbrecht Chinese Mathematics in the Thirteenth Century MIT Press, Cambridge, MA, 1973 [62] R Lidl and H Niederreiter Introduction to Finite Fields and their Applications Revised Edition Cambridge University Press, New York, 1994 [63] C C Lin and L A Segel Mathematics Applied to Deterministic Problems in the Natural Sciences Classics in Applied Mathematics Society for Industrial and Applied Mathematics, Philadelphia, 1988 [64] John D Lipson Elements of Algebra and Algebraic Computing Benjamin/Cummings, Menlo Park, CA, 1981 CuuDuongThanCong.com 312 Bibliography [65] Stephen B Maurer and Anthony Ralston Discrete Algorithmic Mathematics A K Peters, Ltd., Natick, MA, 1998 [66] Maurice Mignotte Mathematics for Computer Algebra SpringerVerlag, New York, 1991 [67] Maurice Mignotte and Doru S ¸ tef˘anescu Polynomials, An Algorithmic Approach Springer-Verlag, New York, 1999 [68] Bhubaneswar Mishra Algorithmic Algebra Springer-Verlag, New York, 1993 [69] M B Monagan, K O Geddes, K M Heal, G Labahn, S M Vorkoetter, and J McCarron Maple Programming Guide Waterloo Maple Inc., Waterloo, ON, Canada, 2000 [70] Joel Moses Symbolic Integration PhD thesis, MIT, September 1967 [71] Joel Moses Algebraic simplification: A guide for the perplexed Communications of the ACM, 14(8):527–537, August 1971 [72] George M Murphy Ordinary Differential Equations and Their Solutions D Van Nostrand, New York, 1960 [73] David Musser Algorithms for Polynomial Factorization PhD thesis, Department of Computer Science, University of Wisconsin, 1971 √ [74] Paul J Nahin An Imaginary Tale, The Story of −1 Princeton University Press, Princeton, NJ, 1998 [75] Jurg Nievergelt, J Craig Farrar, and Edward M Reingold Computer Approaches to Mathematical Problems Prentice-Hall, Englewood Cliffs, NJ, 1974 [76] F S Nowlan Objectives in the teaching college mathematics American Mathematical Monthly, 57(1):73–82, February 1950 [77] R Pavelle, M Rothstein, and J P Fitch Computer algebra Scientific American, 245:136–152, 1981 [78] Louis L Pennisi Elements of Complex Variables Holt, Rinehart and Winston, New York, 1963 [79] Charles Pinter A Book of Abstract Algebra Second Edition McGraw-Hill, New York, 1990 CuuDuongThanCong.com Bibliography 313 [80] Marcelo Polezzi A geometrical method for finding an explicit formula for the greatest common divisor American Mathematical Monthly, 104(5):445–446, May 1997 [81] Frank Postel and Paul Zimmermann Solving ordinary differential equations In Michael J Wester, editor, Computer Algebra Systems, A Practical Guide, pages 191–209 John Wiley & Sons, Ltd., New York, 1999 [82] T W Pratt Programming Languages, Design and Implementation Second Edition Prentice Hall, Englewood Cliffs, NJ, 1984 [83] Gerhard Rayna Reduce, Software for Algebraic Computation Springer-Verlag, New York, 1987 [84] D Richardson Some undecidable problems involving elementary functions of a real variable Journal of Symbolic Logic, 33(4):511– 520, December 1968 [85] J F Ritt Prime and composite polynomials Trans Am Math Soc., 23:51–66, 1922 [86] P Sconzo, A LeSchack, and R Tobey Symbolic computation of f and g series by computer The Astronomical Journal, 70(1329):269– 271, May 1965 [87] George F Simmons Differential Equations with Applications and Historical Notes Second Edition McGraw-Hill, New York, 1991 [88] George F Simmons Calculus with Analytic Geometry Second Edition McGraw-Hill, New York, 1996 [89] Barry Simon Symbolic magic In Michael J Wester, editor, Computer Algebra Systems, A Practical Guide, pages 21–24 John Wiley & Sons, Ltd., New York, 1999 [90] Barry Simon Symbolic math powerhouses revisited In Michael J Wester, editor, Computer Algebra Systems, A Practical Guide John Wiley & Sons, Ltd., New York, 1999 [91] Trevor J Smedley Fast methods for computation with algebraic numbers Research Report CS-90-12, Department of Computer Science, University of Waterloo, May 1990 [92] Jerome Spanier and Keith B Oldham An Atlas of Functions Hemisphere Publishing Corporation, New York, 1987 CuuDuongThanCong.com 314 Bibliography [93] Frederick W Stevenson Exploring the Real Numbers Prentice Hall, Upper Saddle River, NJ, 2000 [94] David R Stoutemyer Crimes and misdemeanors in the computer algebra trade Notices of the American Mathematical Society, 38(7):778–785, September 1991 [95] R Tobey, R Bobrow, and S Zilles Automatic simplification in Formac In Proc AFIPS 1965 Fall Joint Computer Conference, volume 27, pages 37–52 Spartan Books, Washington, DC, November 1965 Part [96] Joachim von zur Gathen and Jă urgen Gerhard Modern Computer Algebra Cambridge University Press, New York, 1999 [97] Paul Wang and Barry Trager New algorithms for polynomial square free decomposition over the integers SIAM Journal of Comp., 8:300– 305, 1979 [98] Mark Allen Weiss Data Structures and Problem Solving Using C++ Second Edition Addison-Wesley, Reading, MA, 2000 [99] Clark Weissman Lisp 1.5 Primer Dickenson Publishing Company, Belmont, CA, 1967 [100] Michael J Wester Computer Algebra Systems, A Practical Guide John Wiley & Sons, Ltd., New York, 1999 [101] F Winkler Polynomial Algorithms in Computer Algebra SpringerVerlag, New York, 1996 [102] Stephen Wolfram The Mathematica Book Fourth Edition Cambridge University Press., New York, 1999 [103] D Wooldridge An algebraic simplify program in Lisp Technical report, Stanford University, December 1965 Artificial Intelligence Project, Memo 11 [104] W A Wulf, M Shaw, P Hilfinger, and L Flon Fundamental Structures of Computer Science Addison-Wesley, Reading, MA, 1981 [105] Chee Keng Yap Fundamental Problems of Algorithmic Algebra Oxford University Press, New York, 2000 [106] David Y Y Yun On square-free decomposition algorithms In R D Jenks, Proceedings of the 1976 ACM Symposium of Symbolic and Algebraic Computation, pages 26–35 ACM, New York, 1976 CuuDuongThanCong.com Bibliography 315 [107] David Y Y Yun and David R Stoutemyer Symbolic mathematical computation In J Belzer, A.G Holzman, and A Kent, editors, Encyclopedia of Computer Science and Technology, volume 15, pages 235–310 M Dekker, New York, 1980 [108] Richard Zippel Effective Polynomial Computation Kluwer Academic Publishers, Boston, 1993 [109] Daniel Zwillinger Handbook of Differential Equations Academic Press, Boston, MA, 1989 CuuDuongThanCong.com Index Automatic simplify(u), 83 Axiom, Absolute value(u), 34, 123, 199 Actual parameters for a procedure, 134 of a function, 133 Adjoin(x, L), 72 Akritas, A., 26 Algebraic expression conventional structure, 84 expanded form, 251 exponential-contracted form, 289 exponential-expanded form, 276, 286 log-contracted form, 305 log-expanded form, 286 simplified structure, 93 trigonometric-contracted form, 293 trigonometric-expanded form, 281, 287 Algebraic expand (u), 34, 253, 259 Algebraic expression (u), 194 Assignment, 38 Atomic expression, 81 Automatic simplification, 52 context of, 54 Automatically simplified algebraic expression (ASAE), 93 base(u), 272 Bernardin, L., 27 Bernoulli (u, x, y), 242 Bilinear form(u, x, y), 237 Buchberger, B., 26 By parts(f, x), 212 CAIN (Computer Algebra Information Network), 26 Cancel (u), 273 CAS, Chou, S.C., 27 Cipra, B.A., 27 Coefficient (u, x, j), 34, 64 Coefficient alternate(u, x, j), 239 Coefficient gpe(u, x, j), 230, 233 Coefficient list(u, x), 223 Coefficient monomial gpe (u, x), 232 Coefficient monomial sv (u, x), 222 Coefficient sv (u, x, j), 218, 222 Coefficient vars(u, L),, 247 Coeff var monomial(u, S), 237 Cohen, Joel S., 10 Collect terms(u, S), 248, 249 Collect terms (u, S), 257 Comb(S, k), 196 316 CuuDuongThanCong.com Index 317 Combine(u), 257 Common factors (u, v), 272 Complete sub-expression, 109 Complete sub expressions (u), 177 Compound expression, 81 Computer algebra, Computer algebra language, Computer algebra system (CAS), commercial, mathematical knowledge in, COMPUTER ALGEBRA, Algorithms, Systems and Applications, 26 Concurrent structural substitution, 115 Concurrent substitute (u, S), 115, 195 Contain parameters (u, x), 194 Contract exp(u), 290, 305 Contract exp rules(u), 291 Contract log(u), 305 Contract trig (u), 296, 306 Contract trig power (u), 306 Contract trig rules(u), 297 Curvature(f, x), 150 Czapor, S.R., 26 Data objects, 39 logical expressions, 54 Davenport, J.H., 26 Decimal(u), 34, 123 Decision structures, 141 Default simplification, 52 deg(u, S), 230 deg(u, x), 214, 230 Degree of a GME, 229 of a GPE, 230 Degree(u, x), 34, 63 Degree alternate (u, x), 239 Degree general (u, x), 239 Degree gpe(u, v), 238 Degree monomial gpe(u, v), 238 Degree monomial sv (u, x), 219 Degree sv (u, x), 217, 220 Delete(x, L), 73 Denominator (u), 123, 260, 270 CuuDuongThanCong.com Denominator (u, L), 271 Derivative(u, x), 34, 182, 196 Derivative order (u, x, y), 197 Derive, Differential equation Bernoulli, 241 exact, 157 homogeneous, 168 homogeneous second order, 169 integrating factor, 157 separable, 157 singular solution, 166 variation of parameters, 169 Differentiation of factorials, 196 of undefined functions, 196 Distance point line(u, x, y, p), 151 Distribute(u), 258 Effective step in an algorithm, 120 Evaluate(u, n), 50 Evaluation in Maple, 52 in Mathematica, 52 in MuPAD, 52 multi-level, 50 single level, 50 suppressed, 50 Even odd (u, x), 144 Expand exp(u), 279, 280, 286 Expand exp rules(A), 279, 280, 286 Expand log(u), 286 Expand main op, 258 Expand power (u, n), 254, 259 Expand product (r, s), 253 Expand restricted (u, T ), 258 Expand tan(u), 288 Expand trig (u), 283, 287 Expand trig rules(u), 283, 287 Expd exp(u), 278 exponent(u), 272 Exponential contraction, 276, 289 Exponential expansion, 276 Expression main operator, 87 root node of tree, 87 318 structure, 84 tree, 87 branch, 87 evaluation, 49 F and G series, 155 Factor (u), 34 Fateman, R J., 75 FG(n, t), 156 Fibonacci numbers recursive definition, 175 Find deg (S, x), 151 First(L), 72 Fitch, J.P., 26 Floor function, 257, 306 FORMAC computer algebra system, 155 Formal parameters in MPL, 140 of a function, 133 of a procedure, 133 Fraction (fraction), 92 Free of (u, t), 110, 179, 194 mathematical properties of, 242 Free of sort (S), 246 Geddes, K.O., 26 General monomial expression (GME) coefficient part, 224 computational definition, 225 mathematical definition, 224 variable part, 224 General polynomial expression (GPE) collected form, 248 computational definition, 225 degree of, 229 mathematical definition, 224 General rational expression (GRE) computational definition, 261 mathematical definition, 259 Generalized coefficients, 224 Generalized variables, 224 Gerhard, J., 26 CuuDuongThanCong.com Index Global symbol, 137 GPE to mult(u), 246 Haskins, L., 10 Heck, A., Homogeneous polynomial, 238 Homogeneous (M, N, x, y), 169 Homogeneous 2(a, b, c, x) , 169 Homogeneous polynomial (u, x, y), 238 Horner (u, x), 195 Identifier as a mathematical symbol or variable, 32 as a programming variable, 32 in MPL, 32 if structure, 141 if-else structure, 142 Implicit derivative(u, y, x, n), 197 Infinite recursive loop, 175 Integer (integer), 104 Integer gcd (a, b), 122 Integral linear properties, 200 Integral (f, x), 34, 206 Integral table(f, x), 209 Integration derivative divides method, 203 substitution method, 200 table, 200 Iquot (a, b), 122 Irem(a, b), 122 Irrational numbers in MPL, 32 Iteration structures, 145 Iter fact(n), 79 Jenks, R.D., Join(L, M, , N ), 72 Kajler, N., 27 Kind (u), 104 Index 319 Kline, M., 26 Kowalik, J.S., 27 Labahn, G., 26 Lagrange polynomial(P, x), 153 lc(u, x), 214, 233 Leading coeff degree gpe (u, x), 238 Leading Coefficient gpe(u, x), 234, 238 Leading coefficient monomial sv (u, x), 222 Leading coefficient sv (u, x), 220, 222 Leading numer coeff (u, L), 246 Legendre(n, x), 191 Legendre polynomials, 189 iterative algorithm, 192 Limit(u, x, a), 34 Lin, C.C., 10 Line(u, x, y), 153 Linear differential operator, 240 Linear derivative order (u, x, y), 240 Linear factors(u, x), 151 Linear form(u, x), 181 Linear properties (f, x), 209 Lipson, J.D., 26 List (list), 100 Lists, 71 empty list([ ]), 71 mathematical properties, 71 primitive operations, 72 use in MPL, 71 membership(∈), 73 Local environment of a procedure, 134 Local variables in a procedure, 134 low deg(u, x), 236 Macsyma, 7, 21, 55, 256 Maple, 3, 4, 6, 7, 14–16, 44, 54, 127, 129, 130, 145, 193, 246, 267, 277, 287 improperly posed expressions, 127 list operations, 73 CuuDuongThanCong.com set operations, 70 MPL reserved operators, 35 MPL reserved symbols, 33 Map(F, u), 188 Map(G, u, y, , z), 188 Marchand, J.P., 10 Mathematica, 7, 12, 40, 46, 54, 94, 95, 113, 130, 145, 240, 246, 256, 276 list operations, 73 set operations, 70 differential equations, 36 MPL operators, 35 MPL reserved symbols, 33 Mathematical algorithm, 119 Mathematical operators procedures for, 133 Mathematical pseudo-language (MPL), 29 Max (S ), 198 Max exponent (u, x), 198 Mignotte, M., 26 Mishra, B., 26 Monomial gpe(u, v), 226, 227 Monomial sv (u, x), 215, 217, 218 MPL general form of a function, 133 general form of a procedure, 135 mathematical algorithm, 58 operators algebraic, 32 logical, 36 relational, 36 reserved symbols e, 33 ∅, 70 false, 33 ı, 33 ∞, 33 π, 33 true, 33 Multi-branch structure, 142 MuPAD, 7, 18, 47, 54, 145, 267, 277, 287 320 list operations, 73 MPL reserved operators, 35 MPL reserved symbols, 33 set operations, 70 Normal simplification operator, 269 Number of operands (u), 105 Numerator simplification context, 130 Numerator (u), 123, 260, 270 Numerator (u, L), 271 Numerical (u), 195 Numerical expression, 195 Numerical coefficient (u), 152 Operand (u, i), 34, 43, 105 Operand list(u), 151 Operator binary infix, 85 function postfix, 85 n-ary infix, 85 structure based, 108 unary postfix, 85 unary prefix, 85 Operator evaluation and automatic simplification of arguments, 54 Index Polynomial height (u, x), 221 Polynomial mv (u, S), 222 Polynomial sign(u, L), 247 Polynomial sign var (u), 247 Polynomial sq2 (u, x), 222 Polynomial sv (u, x), 215, 218 Polynomial sv unexp(u, x), 222 Polynomial xy(u, x, y), 222 Power set, 196 Power set (S), 196 Precedence rules conventional algebraic expressions, 86 simplified algebraic expressions, 93 Primitive operations general polynomial expressions, 225 simplified mathematical expressions, 104 single variable polynomials, 215 Procedure body of, 134 iterative, 79 Properly posed operation, 126 Quadratic form(u, x ), 195 Parentheses level different, 85 same, 85 Pavelle, R., 26 Perpendicular line(u, x, y, p), 150 Polynomial degree, 214 height, 221 leading coefficient, 214 multivariate mathematical definition, 221 single variable computational definition, 215 mathematical definition, 214 Polynomial sign, 247 Polynomial gpe(u, v), 226, 228 CuuDuongThanCong.com Radical form(f, x), 210 Rational number arithmetic, 31 Rational simplification, 270, 271 Rational-expanded form, 268, 270 Rational expand (u), 270 Rational form(f, x), 210 Rational gre(u, v), 261, 270 Rationalization of algebraic expressions, 262 Rationalized form of an algebraic expression, 263 Rationalize expression (u), 265 Rationalize sum(u, v), 265 Rational simplify(u), 123 Rational sv(u, x), 223 Rational variables(u), 262, 270 Rayna, G., Index 321 real, 31 Real (real), 104 Rec fact (n), 80, 172 Recurrence relation, 190 Recursion redundant, 183, 193, 226, 256, 266, 277, 282 Recursion in mathematics, 82 Recursive chain, 193 Recursive definition or algorithm, 77 Recursive procedure, 80, 172 Recursive structure of mathematical expressions, 80 Reduce, Remembering procedure calls in Maple, 193 Remove duplicates(L), 151 Rest (L), 72 Return(u), 135 Reverse(L), 73 Richardson, D., 145 Rothstein, M., 26 Rule-based programming in Maple, 185 in Mathematica, 184 sci.math.symbolic discussion site, 26 Segel, L.A., 10 Semantic capacity, 126 Separable ode(M, N, x, y) , 168 Separate factors (u, x), 148 Separate sin cos(u), 152 Separate variables(u, x, y), 152 Sequential structural substitution, 114 Sequential substitute (u, L), 114, 195 Set (set), 100 Set free of (u, S), 180, 194 Set product (A, B), 151 Sets, 69 difference (∼), 69 empty set (∅), 70 intersection (∩), 69 mathematical properties, 69 union (∪), 69 CuuDuongThanCong.com use in MPL, 69 membership (∈), 70 SIGSAM (Special Interest Group on Symbolic and Algebraic Manipulation), 26 Simplification context, 128 Simplified structure of algebraic expressions, 90 of differences, 90 of fractions, 92 of lists, 100 of logical expressions, 97 of products, 90 of quotients, 92 of relational expressions, 96 of set expressions, 100 of sums, 90 Simplify exp(u), 305 Siret, Y., 26 Solve(u, x), 34 Solve ode(w, x, y), 34, 161, 162 Solve ode (a, b, c, f, x, y), 170 Solve quadratic(u, x), 151 Solve exact (M, N, x, y), 163 Stack, 174 S ¸ tef˘ anescu, D., 26 Stoutemyer, D.R., 26 Structural assumptions for conventional algebraic expressions, 86 Structural assumptions for simplified algebraic expressions, 90 Structural substitution multiple, 114 Substitute (u, t = r), 34, 111 Substitute (u, v), 195 Substitution and evaluation, 112 structural, 111 Substitution method (f, x), 206 Sutor, R.S., Symbol (symbol), 104 Symbol manipulation, Symbol manipulation system, Symbolic programming language, 322 SymbolicNet, 26 Symbols(u), 194 Symmetric(u, x, y) , 151 Tangent line(f, x, a), 136 Taylor (u, x, y, a, b, n), 153 Taylor ode(w, x, y, a, b, n), 155 Termination condition in a recursive procedure, 172 in a recursive procedure, 80 Total degree(u), 238 Tournier, E., 26 Transformation rule sequence, 182 rule convention, 184 Transformation rules CF (Common factors (u, v)), 272 FO (Factor out (u)), 272 GMEALT (alternate general monomial expression), 238 GME (general monomial expression), 225 GPE (general polynomial expression), 225 ND (N umerator(u), Denominator(u)), 260 DERIV (Derivative (u, x)), 182 LNC (Leading numer coeff (u, L)), 246 MON (single variable monomial), 215 NUM (Numerical (u)), 195 CuuDuongThanCong.com Index POLY (single variable polynomial), 215 TRIGSUB (Trig substitute (u)), 186 VAR (Variables(u)), 227 Transform ode(w, x, y), 162, 240 Transform ode (w, x, y), 241 Tree-size of an expression, 195 Tree size(u), 195 Trial substitutions (f ), 209 Trig form(f, x), 211, 306 Trig free of (u), 194 Trigonometric contraction, 293 Trigonometric expansion, 281 Trig substitute (u), 187, 303 T rig substitute map(u), 190 Unassign(u), 52 Variable evaluation, 50 Variables(u), 227, 237 Variation of param (y1, y2, f, a, x), 170 von zur Gathen, J., 26 Wester, M., 7, 26 Winkler, F., 26 Wolfram, S., Yap, C.K., 26 Yun, D.Y.Y., 26 Zero equivalence operator, 269 Zero equivalence problem, 145 Zippel, R., 26 CuuDuongThanCong.com Cohen Computer Algebra and Symbolic Computation Elementary Algorithms The author explores the structure and implementation of computer algebra algorithms as well as the mathematical and computational concepts behind them This book: • Is accessible to students and appeals to professionals • Introduces mathematical concepts as needed • Contains a CD with the entire text, active reference hyperlinks, and complete algorithms Computer Algebra and Symbolic Computation bridges the gap between software manuals, which only explain how to use computer algebra programs such as Mathematica, Maple, Derive, etc., and graduate level texts, which only describe algorithms ISBN 1-56881-158-6 A K Peters, Ltd CuuDuongThanCong.com Elementary Algorithms For a more advanced look at computer algebra, including the application of algorithms to methods such as automatic simplification, polynomial decomposition, and polynomial factorization, see Computer Algebra and Symbolic Computation: Mathematical Methods Computer Algebra and Symbolic Computation JOEL S COHEN AK PETERS ... Cataloging-in-Publication Data Cohen, Joel S Computer algebra and symbolic computation : elementary algorithms / Joel S Cohen p cm Includes bibliographical references and index ISBN 1-5 688 1-1 5 8-6 AlgebraData... prompts, CuuDuongThanCong.com 1.1 Computer Algebra and Computer Algebra Systems > u1 := x^ 5-4 *x^ 4-7 *x^ 3-4 1*x^ 2-4 *x+35; u1 := x5 − x4 − x3 − 41 x2 − x + 35 > factor(u1); (x + 1) (x2 + x + 7) (x2 −... √ x+2 eq4 : eq3 - x - 3; √ = −2 x + eq5 : eq4∧2; 16 = 4(x + 2) solve(eq5,x); (d7) (c8) √ √ x + = −2 x + + x + (d6) (c7) x+7 =1− eq3 : expand(eq2∧2); (d5) (c6) x+2 =1 eq2 : eq1 - sqrt(x+2); (d4)