London, Canada

Department of Computer Science

Course Description --- Fall 1998

- Description
- The creation and development of efficient computer algebra
systems, used now
worldwide by millions of people to help with mathematical tasks in
application areas such as
engineering or finance, requires very sophisticated computer science.
This course will provide
a hands-on introduction to many of the most important ideas used in
CAS. Topics covered may
include memory management, data structures for mathematical objects,
classical numerical analysis and computation, use of randomness for
efficiency, types, functional and generic programming, modular and
homomorphic algorithms,
OpenMath and MathML.
The course will begin with an introduction to Maple, one of the suggested programming languages for the course. [The other is Aldor.]

- The creation and development of efficient computer algebra
systems, used now
worldwide by millions of people to help with mathematical tasks in
application areas such as
engineering or finance, requires very sophisticated computer science.
This course will provide
a hands-on introduction to many of the most important ideas used in
CAS. Topics covered may
include memory management, data structures for mathematical objects,
classical numerical analysis and computation, use of randomness for
efficiency, types, functional and generic programming, modular and
homomorphic algorithms,
OpenMath and MathML.
- Prerequisites
- Operating Systems: unix
- Programming Languages: at least one.
- Course Work --- This course is interdisciplinary. It will develop needed computer science and mathematics as it comes up in the course. The real prerequisites for this course are mathematical maturity and computer science experience as appropriate for a senior student.

- Instructors
- Rob Corless, Western Science Centre 115
- Office Hours: TBA
- Phone x8794 E-Mail: Rob.Corless@uwo.ca

- Stephen Watt, Middlesex 375
- Phone x3540 E-Mail: Stephen.Watt@uwo.ca

- Mark Giesbrecht, Middlesex 360
- Phone x6915 E-Mail: mwg@csd.uwo.ca

- Rob Corless, Western Science Centre 115
- Course Assistant Information: no assistant
- Texts
- No required text: Algorithms for Computer Algebra
(Geddes
*et. al*, Essential Maple (Corless) may each be helpful. - Supplementary Reading: handouts given in class

- No required text: Algorithms for Computer Algebra
(Geddes
- Topics may include:
- Introduction to Computer Algebra
- Introduction to the Maple Computer Algebra system
- Polynomial Arithmetic
- Data Structures
- Arithmetic
- The Euclidean Algorithm
- The Chinese Remainder Theorem and Modular Algorithms

- Sparse linear systems and Black-box matrices
- Lazy power series in Maple
- Systems Issues
- Memory Management and Garbage Collection
- Type systems for Mathematics // an example of an Aldor domain
- Functional programming, RO vs RW data, lazy series reprise
- communication of mathematical objects

- General Course Conduct
- First meeting will be scheduled by discussion today
- Chalk/overheads/HTML notes
- Assignments will be done in teams. We seem to be required
to
state that
Students are directed to ``Scholastic Offences'' of the

*Academic Calendar*on the webhttp://www.registrar.uwo.ca/accals/1998/sec_217.htm

for a description of unacceptable conduct regarding assignments. The maximum penalty for the first offence is for the assignment in question. Offences are kept on file. Students are directed to ``Penalties'' of the*Academic Calendar*on the webhttp://www.registrar.uwo.ca/accals/1998/sec_222.htm

for a list of other penalties if this unacceptable conduct occurs repeatedly. - Late rules: assignment marks are multiplied by
where
**n**is the number of days late; exceptions are possible to arrange*in advance of the due date*. This policy helps you avoid a crushing burden at the end of the year. - Yet another formula quote: ``Students are expected to
adhere to the
*Rules of Ethical Conduct*as received on first issue of accounts for the computing facilities. A copy of these rules is posted outside the I/O counter (MC 352).''

- Exam/Quiz Schedule
- Number of exams/quizzes: no quizzes, no midterms.
- Undergraduate students are expected to write a final exam
- Length of exam: 3 hours
- Exam will be scheduled at our mutual convenience.

- Graduate students must complete a course project (instead of the final exam).

- Undergraduate students are expected to write a final exam
- Approximate date of each exam/quiz (or whether quizzes are
surprise): N/A

- Number of exams/quizzes: no quizzes, no midterms.
- Assignment/Programming Schedule
- Number of assignments/programs: at most 3.
- Individual or group work: teams of 2 or 3 students.
- Machines, Software --- Gaul or perhaps the RS6000 machines; Maple and Aldor; LaTeX & laser printer output.
- Approximate assign and due dates: TBA by Sept. 30
- Expected level of difficulty --- medium
- Assignment schedule will be announced and adhered to.

- Student Evaluation
- Weights for Marking: assignments 60%, exam 40% (CS422), project 40% (CS539).
- Exceptional circumstances will be dealt with by negotiation and judgement of the instructors.

- Assignments are to be created with the document-preparation package LaTeX. All assignments not submitted electronically to Rob.Corless@uwo.ca must be submitted in a brown envelope with your name and the name of the assignment printed in the upper-right-hand corner. Some marks will be deducted for poor grammar, spelling errors, etc, but there is also the possibility of bonus marks for surprising and original work.

Wed Sep 23 13:43:40 EDT 1998