From: avr@cs.purdue.EDU (Andrew V. Royappa)
Newsgroups: sci.math.symbolic
Subject: Grobner basis calculation in MapleV
Keywords: elimination theory
Date: 15 Apr 92 03:34:29 GMT
Organization: Department of Computer Science, Purdue University

Hi, I have a question about the Gr"obner basis calculation in Maple.
We just got Maple V (I like it).

I am trying to implicitize a rational parametric surface. Actually, I'm
trying to compute the inversion functions that give the parameters 
corresponding to a point on the surface, but implicitization is 
enough to highlight what I don't understand about Maple.

As explained nicely in the book "Geometric and Solid Modeling" by C.M.
Hoffman, to implicitize a rational algebraic surface given by
	x = f1(u,v)/f4(u,v)
	y = f2(u,v)/f4(u,v)
	z = f3(u,v)/f4(u,v)

we first consider the ideal of the polynomials
	{ f4(u,v)*x-f1(u,v), f4(u,v)*y-f2(u,v), f4(u,v)*z-f3(u,v) }

Then, compute the Grobner basis of this ideal using the lexicographic
ordering of variables z < y < x < v < u. The basis will contain
the implicit form polynomial F(x,y,z) corresponding to the surface,
without any extraneous factors.

Now I tried this in maple for the surface F(x,y,z) = x^2+y^2-z^2-1 = 0,
a hyperboloid of one sheet.  (So I know the implicit form in advance).
The parametric equations I used are

	x = (u^2-v^2+1) / (u^2+v^2-1)
	y = 2*u*v       / (u^2+v^2-1)
	z = 2*u		/ (u^2+v^2-1)

I formed the 3 polynomials as above, and computed the Grobner basis,
expecting it to contain the polynomial x^2+y^2-z^2-1 (or perhaps a
constant multiple of it). This is what happens in Maple V:
================================================================

> FL := [(u^2+v^2-1)*x-(u^2-v^2+1),(u^2+v^2-1)*y-2*u*v,(u^2+v^2-1)*z-2*u];
FL :=

   2    2           2    2        2    2                   2    2
[(u  + v  - 1) x - u  + v  - 1, (u  + v  - 1) y - 2 u v, (u  + v  - 1) z - 2 u]

_____________________________________________________________________________
/* This sets up the ordering u > v > x > y > z that we want */
> IL := [u,v,x,y,z];
                             IL := [u, v, x, y, z]

_____________________________________________________________________________
> factor(gbasis(FL,IL,plex));
       2      2                 2      2
   [y u  + y v  - y - 2 u v, z u  + z v  - z - 2 u,

                  2        2                                2
       u v y - x v  + x - v  + 1 - u z, - u (- z v + y), z v  - z - u + u x,

          2      2              2          2
       u y  - x v  z + z x - z v  + z - u z , - (v - 1) (v + 1) (- z v + y),

                           2        2    2
       (v - 1) (v + 1) (- z  - 1 + x  + y )]

_____________________________________________________________________________
> 

	
================================================================

Now my question: why doesn't the Grobner basis contain a polynomial
free of u & v? It does contains a polynomial with the implicit form
x^2+y^2-z^2-1 as a factor. Is this perhaps because the grobner[gbasis]
function computes a "reduced, minimal" Grobner basis ? I don't see why
the factor (v-1)*(v+1) should appear in the last polynomial.

			Thanks for any help,

						Andrew Royappa
						avr@purdue.edu