# CMSC 656: Symbolic & Algebraic Processing

## Spring 1997

### Course Description

The primary thrust of CMSC656 is algebraic algorithms.
Maple (which is
secondary) will be used as a means of gaining
a better understanding of these algorithms
through hands-on experience.

We begin by studying and applying such algebraic
constructs as groups, rings, fields, ideals, quotient
rings, etc., with an emphasis on algebraic algorithms.
Next we move on to study Groebner bases, elimination theory,
polynomial & rational functions on a variety.
We then study the application of symbolic & algebraic
processing to robotics & automatic geometric
theorem proving.
Various projects in Maple will be given to illustrate
these concepts.

This is not a programming language course. It is a
course in which the high level programming
language Maple is used as a vehicle to learn algebraic
algorithms. However, the course will begin with some
prelimary lectures and lab sessions devoted to learning
Maple. There will also be lab sessions to help with
the various Maple projects.

### The course grade will be computed as follows:

- 25% Exam I
- 25% Exam II
- 25% Projects
- 25% Final Exam

### Prerequisites:

- CMSC 203 Discrete Math (or equivalent)
- CMSC 221 Linear Algebra (or equivalent)
- A reasonable amount of mathematical & algorithmic maturity

### Course texts:

- The text for symbolic computation is:
Cox, David, John Little, and Donal O'Shea,
"Ideals, Varieties, and Algorithms: An
Introduction to Computational Algebraic
Geometry and Commutative Algebra," Springer-
Verlag (1992).

- The text for Maple is:
Heck, Andre, "Introduction to Maple,"
Springer (1996) (Second Edition)