MCS 563: Analytic Symbolic Computation
28309 11:00-11:50 AM MWF 303 AH
The goal of the course is to study symbolic-numerical algorithms
with their implementation and applications to science and engineering.
Computational algebraic geometry has many emerging applications
and offers a fun way to learn more about algebraic geometry.
A better title for the course would be
symbolic-numeric algorithms for algebraic geometry.
The evaluation of this course consists of homework and computer projects.
A first run of the course in
Fall 2004 used "Numerical Polynomial Algebra"
by H.J. Stetter as textbook. Lecture notes were distributed in
Spring 2007.
Lecture notes distributed at the start of each lecture are below:
- L-1 01/12/09: Introduction:
We define the problem statement,
give an application, recall Newton's method and formulate
a statement of the theorem of Bézout.
- L-2 01/14/09: Elimination Methods:
We define projective coordinates,
give another application, explain the Sylvester resultant method,
illustrate how to cascade resultants to compute discriminant,
and then state the main theorem of elimination theory.
- L-3 01/16/09: Homotopies and Predictor-Corrector Methods:
Homotopies are families of polynomial systems linking the system we want
to solve to a good system.
We discuss numerical issues when applying predictor-corrector
methods to track solution paths defined by a homotopy. Via the gamma trick
we obtain that all paths stay regular and bounded. The proof for this trick
uses the main theorem of elimination theory and is an ingredient in a classical,
constructive proof of the theorem of Bézout.
- L-4 01/21/09: Rewriting Polynomials:
We present mainly an algebraic (or symbolic view)
on solving polynomial systems. We define the ideal membership
problem and show how the division algorithm solves it, provided
the ideal is given by a Groebner basis.
We end by stating the Hilbert basis theorem.
- L-5 01/23/09: Complexity of Bézout's
theorem: We look at Newton's method from a complexity point of view.
Applications require verification of computational results.
- L-6 01/26/09: Groebner Bases:
We define S-polynomials and motivated to solve the ideal
membership problem by the division algorithm, we introduce
Groebner bases. We sketch the proof of Buchberger's criterion
and algorithm to compute a Groebner basis.
- L-7 01/28/09: Multihomogeneous Homotopies:
We define multiprojective space via an embedding of a product of
affine spaces, taking the product of each projective space.
Systems arising in the computation of Nash equilibria have
a natural multihomogeneous
structure for which the multihomogeneous Bézout number is sharp.
A homotopy using linear-product start systems provides the idea
for a constructive proof of this multihomogeneous version of
Bézout's theorem.
- L-8 01/30/09:
Quotient Rings: Departing form a finite set
of points, we arrived at defining ideals and the shape lemma.
Interpolation was needed in our application in statistics.
We ended by defining the normal set and constructed multiplication
matrices, leading to generalized companion matrices to compute
coordinates of the solution points via eigenvalue problems.
- L-9 02/02/09:
Linear Product Structures: As illustrated
by an application in neural network modeling, symmetric polynomial
systems arise frequently. We extend multihomogenous structures
to exploit symmetry, ending up with a generalized version of
Bézout's theorem.
- L-10 02/04/09:
Groebner Basis Conversion:
As a Groebner basis with a lexicographic term order
is often very expensive to compute, the FGLM-Algorithm converts
the order of a Groebner basis. As application for today we
mentioned the well known cyclic n-roots benchmark system.
We discuss the complexity of Groebner bases for different term orders.
For an ideal with finitely many zeroes we first determined the number
of solution using a degree reverse lexicographic order and then either
compute the coordinates of the solutions via eigenvalue problems,
or via a lexicographic Groebner basis using the FGLM-Algorithm.
- L-11 02/06/09:
Coefficient-Parameter Homotopies:
Many systems in practical applications have natural parameters
and we can naturally formulate homotopies moving from generic
to specific instances of the parameters. To illustrate this idea
we looked at various instances of the Stewart-Gough platforms.
- L-12 02/09/09:
Rational Univariate Representation:
The Rational Univariate Representation (RUR) is one of the symbolic
recipes to represent a zero dimensional solution set, involving
linear algebra methods. As application we looked at the
inverse kinematics of the elbow manipulator. The lecture
ended with a sketch of some of the ingredients in the algorithm
to compute a RUR.
- L-13 02/11/09:
Condition and Scaling:
To see whether we have a valid approximate solution, we compute
the residual, Newton's update and check the condition number of
the Jacobian matrix at the solution. Motivated by chemical equilibria,
we looked at equation and variable scaling.
These scaling methods are numerical preconditioners.
For postconditioning we use iterative approaches.
- L-14 02/13/09:
Kronecker Representation:
Solving a polynomial system in the sense of Kronecker means
developing techniques to compute with the roots.
We introduced the geometrical concepts with a geometric
resolution and discussed Newton-Hensel lifting to compute
power series solutions.
- L-15 02/16/09:
Real Homotopies: When we restricts the
choice of coefficients to real numbers only, we can no longer
guarantee that singular solutions will not occur. Fortunately,
with generic choices of coefficients in a real homotopy, the
only singular solutions which may occur are quadratic turning
points, which are the nicest kind of singular solutions.
We mentioned the n-body problem and outlined arc length
parameter continuation.
- L-16 02/18/09:
Kushnirenko's theorem:
The sparsest polynomial systems we consider have exactly two
monomials in every equation. These so-called binomial systems
we can solved efficiently via unimodular transformations.
Regular triangulations of Newton polytopes give rise to homotopies.
The application of today concerned the design of 4-bar mechanisms.
We ended relating the theorem of Puiseux and the development
of fractional power series to Kushnirenko's theorem.
- L-17 02/20/09:
Mixed Volumes:
We introduced mixed volumes
via a geometric version of the Cayley trick. This Cayley trick
allows us to view resultants as discriminants. Another good
application of Kushnirenko's theorem is the RPS10 system from
mechanical design. We ended by stating Minkowski's theorem,
suggesting an algorithm to compute mixed areas.
- L-18 02/23/09:
Bernshtein's second theorem: We took
another look at solutions at infinity and found that solutions
at infinity are solutions of systems supported on faces of the
Newton polytopes. As also chemists were aware of this, it is
fitting we chose mass action kinetics as our application.
We stated Bernshtein second theorem and showed that polytopes
may be in general position, so the mixed volume is sharp.
The lecture ended with a hint to Richardson extrapolation
to compute certificates for divergence from the observed
directions of the diverging solution paths.
- L-19 02/25/09:
Polyhedral Homotopies: In this lecture
we showed the connections between the second and first theorem
of Bernshtein, deriving that start systems of polyhedral homotopies
are face systems. Our application is the construction of
Runge-Kutta formulas.
Because the material for this course is part of the Prelim exam,
we formulate some good questions in the format of a midterm exam.
- R 02/27/09:
Summary and Review: In this lecture
we summarized and reviewed the main topics in the course covered
so far, divided into numeric, symbolic, and polyhedral methods.
We looked at the questions of the
Spring 2007 Midterm Exam.
- E 03/02/09:
Midterm exam: This take home exam
is due on Wednesday 4 March, at 11AM.
In the next four lectures we look at multiple roots.
- L-20 03/04/09:
Multiple Roots and Approximate GCDs:
We defined the pejorative manifold via the Vieta system for
a polynomial in one variable with roots of higher multiplicities.
The application of Gauss-Newton on the Vieta system reconditions
the root finding problem. The multiplicities of the roots are
revealed by greatest common divisors. The approximate GCD occurs
in the blind deconvolution of images.
- L-21 03/06/09:
Standard Bases:
In this lecture we look at singular solutions.
We define the multiplicity of an isolated
solution geometrically and algebraically.
To compute the multiplicity of singular points,
we work in local rings and construct standard bases.
- L-22 03/09/09:
Newton's Method with Deflation:
For an isolated singular solution of a polynomial system,
we showed how we could restore the quadratic convergence
via deflation. As the condition numbers drop, as illustrated
on a geometric application, we call deflation a reconditioning method.
We ended the lecture by looking at the effect of the deflation
on the staircase as defined by a standard basis.
- L-23 03/11/09:
Multiplicity Structure:
Following the paper of Barry Dayton and Zhonggang Zeng,
we computed the multiplicity of an ideal using plain linear algebra
to find the span of the dual space. For systems like cyclic 9-roots
we have a purely local method to compute the multiplicity of a root.
The duality analysis of deflation also gives a tighter bound on
the number of deflation stages.
Then we look into positive dimensional solution sets:
- L-24 03/13/09:
Witness Sets:
Any representation of a solution set must store the dimension
and the degree of the solution set. A witness set stores the
dimension as the number of random hyperplanes needed to cut
the set down to a set of isolated solutions. The number of
isolated solutions which belong to the set and the random hyperplanes
then defines a witness set. With a cascade of homotopies,
motivated by the design of a sevenbar mechanism, we gain
some intuition into a refined version of Bézout's theorem.
- L-25 03/16/09:
Lifting Fibers:
A symbolic analogue to witness sets are given by lifting fibers,
obtained by specializing as many variables as the dimension of
the set, eventually after a coordinate change to put the set
into Noether position.
- L-26 03/18/09:
Absolute Factorization:
We started by the definition of the linear trace to detect
whether an algebraic curve factors. Changing of coordinates
provided the transition into a numerical irreducible decomposition
of a general solution set, represented by a witness set.
We ended by outlining the use of monodromy actions.
The application of the day (adjacent minors)
comes from algebraic statistics.
- L-27 03/20/09:
Sparse Interpolation:
In the context of polynomial factorization, we may want to construct
symbolic representations for the irreducible factors.
Sparse interpolation is also a major tool in blackbox computer algebra.
Departing with Prony's algorithm, we derived a generalized eigenvalue
problem for which the QZ algorithm is well suitable.
Sampling at complex roots of unity improves the conditioning.
As application we discussed the structure of singular locus
of a Stewart-Gough platform.
- L-28 03/30/09:
Approximate Factorization:
As third lecture on factorization, we considered the application of
the SVD to the problem of factoring a bivariate polynomial with
approximate coefficients, via the Ruppert matrix, obtained using
some differential equation.
- L-29 04/01/09:
Numerical Schubert Calculus:
The static output pole placement problem in the control of linear
systems is solved by classical enumerative geometry.
Homotopies implement Pieri's rule to solve these intersection
conditions.
- L-30 04/03/09:
Sum of Squares: Via semidefinite programming
we search for a Sum of Squares (SoS) representation of a polynomial.
Such a SoS gives a certificate for the polynomial being nonnegative
and is useful in finding Lyapunov functions to control nonlinear systems.
We define the SoS relaxation of global minimization and ended the lecture
by stating a real Nullstellensatz.
In computer algebra we manipulate ideals to capture
the geometry of varieties.
- L-31 04/06/09:
Primary Decomposition: In this lecture we
define prime, radical, and primary ideals, which are the necessary
ingredients in the primary decomposition. Algorithms will be sketched
in later lectures. Our application came again from algebraic
statistics, we derived independence varieties.
- L-32 04/08/09:
Saturation and Splitting: We defined the notion
of saturation of an ideal by a polynomial and sketched the key principle
of splitting as ingredient in a recursive algorithm to compute a primary
decomposition. Computing fixed points of finite dynamical systems is
one of the applications of primary decomposition.
- L-33 04/10/09:
Equidimensional Primary Decompositions:
Continuing the lectures on primary decomposition, we outlined the
use of elimination (implemented via a Groebner basis) showing how
projections lead to methods for finding splitting polynomials.
We ended linking saturation by flatteners to equidimensional decompositions.
Our understanding of algebraic statistics increased via the definition
of Markov ideals.
- L-34 04/13/09:
Computing Primary Decompositions:
In this lecture we concluded our small tour on primary decompositions
and defined hidden Markov models.
To wrap up the course, we cover several miscellaneous topics:
- L-35 04/15/09:
Diagonal Homotopies:
To intersect positive dimensional solution sets numerically,
we use diagonal homotopies. An application for these homotopies
is the computation of the singular locus of a solution set
of a system with parameters.
- L-36 04/17/09:
Border Bases: Because of the sensitivity
of Groebner bases to changes in the input coefficients, a basis
for a zero dimensional ideal "from the outside" is defined by
taking the multiplication matrices for the quotient ring.
We sketched three approaches for a direct computation of a border basis.
- L-37 04/20/09:
Zeroes and Eigenvalues: As a continuation
of the lecture on border bases, we sketched the central theorem
for zero dimensional ideals and defined the Jordan Canonical Form.
The lecture ended with an outline of a new numerical method to
compute the JCF.
- L-38 04/22/09:
Algorithmic Differentiation: In this lecture
we defined algorithmic differentiation and with a simulation in Maple
showed that computing the gradient requires only a small multiple of
the cost of evaluating the function. The lecture ended with an example
of the reverse mode to compute the gradient of a function.
- L-39 04/24/09:
Tropical Algebraic Geometry: wraps up the course,
casting polyhedral homotopies in a new light.