When reducing a polynomial p w.r.t. a set of polynomials PS we can choose between partial reduction and complete reduction .
Partial reduction can be sloppily described as follows: the leading monomial of p is deleted by subtraction of an ``appropriate multiple'' of a polynomial in PS. This process is iterated as long as there exists a polynomial q in PS s.t. the leading monomial of p is a multiple of the leading monomial of q. Partial reduction yields a polynomial, called the partial normal form of p w.r.t. PS, whose leading monomial is not a multiple of the leading monomial of any of the polynomials in PS.
Complete reduction iterates partial reduction in the sense that when a partial normal form is found, the leading monomial is kept and the remaining polynomial is partially reduced again. This yields a polynomial, the complete normal form of p w.r.t. PS, which does not contain monomials that are multiples of the leading monomial of any of the polynomials in PS.
The function that computes the normal form of a polynomial w.r.t. a set of polynomials is called normal_form_poly and the desired normal form algorithm is selected in the file GB.nf.setup.