Categorize associates an infinite number of typically infinite sets to the sets C and (see item I3 in §). The union of the 's is the set . Therefore, the union of and the 's is . On the other hand, when NCProcess is given two collections of equations C and , NCProcess computes a finite number of finite sets such that the four properties appearing below hold. Properties 1, 2 and 3 show that a major difference between the 's and the 's is that the union of and the 's is the ideal whereas the union of the 's and is a generating set for the ideal . Property 4 involves a difference in the way the equations are presented in comparison to the figure in §.
The sets above can be related to categories as described in §. In a trivial way, the set is precisely the union of V-categories of D where V ranges over all sets of exactly j unknowns and where D is the union of the 's.
Both NCProcess1 and NCProcess2 use algorithms which remove redundant equations (see §) when forming the sets . Given a particular input (see §), the sets which NCProcess1 creates are, in general, different from the sets which NCProcess2 creates. This is where the two differences between NCProcess1 and NCProcess2 lie. We now describe these two differences. Firstly, NCProcess1 runs a GBA before removing redundant equations, but NCProcess2 does not run a GBA before removing redundant equations. The role of NCProcess2 is to find a smaller generating set -- not to find new equations which hold. Secondly, the algorithm which NCProcess2 uses for removing redundant equations is more aggressive than that of NCProcess1 and, therefore, can take a longer time to execute. NCProcess2 is used only when it is believed that all of the interesting equations for the problem under consideration have been found. NCProcess2 tries to assure that its output has the property that the k-th polynomial on the spreadsheet is not in the ideal generated by the first k-1 polynomials. The output of NCProcess2 is often smaller (and is never larger) than its input.