|
C.6.2.1 The algorithm of Conti and Traverso
The algorithm of Conti and Traverso (see [CoTr91])
computes IA via the extended matrix B = (Im|A), where Im is the m × m unity matrix. A
lattice basis of B is given by the set of vectors (aj,−ej) ∈ ZZm+n, where aj is the j-th row of A and ej the
j-th coordinate vector. We look at the ideal in K[y1,…,ym,x1,…,xn] corresponding to these vectors,
namely
We
introduce a further variable t and adjoin the binomial t⋅y1 ⋅…⋅ym − 1 to the generating set of I1, obtaining an ideal
I2 in the polynomial ring K[t,y1,…,ym,x1,…,xn]. I2 is saturated w.r.t. all variables because all variables are
invertible modulo I2. Now IA can be computed from I2 by eliminating the variables t,y1,…,ym.
Because of the big number of auxiliary variables needed to compute a
toric ideal, this algorithm is rather slow in practice. However, it has
a special importance in the application to integer programming
(see section Integer programming).
|