## Macaulay Resultant Formulation

The Macaulay resultant
formulation handles homogeneous polynomial systems of any size:
f1(x1,x2,...,xn), f2(x1,x2,...,xn),...,fn-1(x1,x2,...,xn) (such that
there are n variables and n expressions).

The Macaulay resultant is based upon Bajaj, Garrity & Warrens
Technical report (Rice COMP TR88-83). Bajaj et al described
Macaulay's construction in the following manner:

Steps 1-5 compute the numerator of the Macaulay resultant A
- Compute Macaulay monomial degree d = 1 + \Sum_i (d_i-1)
- Enumerate X^d, the set of all x^\alpha monomials of degree d.
- Partition these monomials into disjoint sets X^d_i which are defined
as { X^\alpha | \alpha_i >= d_i and \alpha_j < d_j \forall j < i
- For each set X^d_i, construct a set of polynomials F_i using
monomials in X^d_i according to: F_i = \frac{X^d_i}{{x_i}^{d_i}}f_i
- Compute the elements of the resultant numerator (i,j) by computing
the monomial coefficients for F_i with respect to the monomial
{X^d}_j (the j'th monomial in the x^\alpha monomials
of degree d)

Steps 6-7 compute the denominator of the Macaulay resultant B
- Delete all columns from A which correspond to monomials x^\alpha
where \alpha_i < d_i for all but one value of i
- Delete all rows of A which correspond to polynomials in F_i whose
multipliers x^\alpha have \alpha_j < d_j for i < j <= n.