Next: Writing Programs in APU
Up:
Previous: Contents
Introduction
APU stands for Algebraic Programming Utilities and that is
precisely what it provides - a collection of special-purpose
C++ utilities which can be used for implementing algorithms involving
polynomial equations and inequalities
. APU can
be used in two ways : as a stand-alone developmental platform which
can be used to develop C++ application code or in conjunction with
a computer algebra package like Maple to solve specific problems
without necessarily developing application code.
The kinds of problems that APU can be used for are :
- Basic algebraic algorithms. Though APU provides a collection
of basic routines like Sylvester resultants, it is by no means
a comprehensive collection of routines. The user however can use
the elementary operations on polynomials to write application
code for specific algebraic algorithms.
- Algorithms for real algebraic geometry. APU provides a
collection of routines which can used to solve systems of equations
using resultant-based techniques. It provides routines for counting
the real roots of a univariate polynomial and for determining
the sign sequences of a collection of polynomials at its roots.
- Stand-alone applications. APU can be used to develop C++
stand-alone applications which take advantage of the implementation
of straight-line programs in APU. Two examples for this which have
been implemented are : implicit point location in semi-algebraic
sets and geometric theorem proving.
Ashu Rege
Fri May 9 17:57:21 PDT 1997