ABSTRACT

This chapter gives some insight into how a system such as Maple is able to perform some of its algebraic tasks while also illustrating some simple algebraic programming techniques. Much more sophisticated versions of the code that we will develop already exist in Maple. The first section is concerned with univariate, primarily polynomial, algorithms; the second section is concerned with the more general problem of multivariate polynomial algorithms. Although this chapter is based on some fairly sophisticated pure mathematics, the algorithms are not too difficult to explain and do not require a great deal of Maple code to implement, especially when the code is built as a hierarchy of well-defined tools, each calling on the services of those built previously.