|
D.2.4.18 WLemma
Procedure from library grobcov.lib (see grobcov_lib).
- Usage:
- WLemma(F,A[,options]);
The first argument ideal F in Q[x_1,..,x_n][u_1,..,u_m];
The second argument ideal A in Q[x_1,..,x_n].
Calling sequence:
ring R=(0,x_1,..,x_n),(u_1,..,u_m),lp;
ideal F=f_1(x_1,..,x_n,u_1,..,u_m),..,
f_s(x_1,..,x_n,u_1,..,u_m);
ideal A=g_1(u_1,..u_m),..,g_s(u_1,..u_m);
list # : Options
Calling sequence:
WLemma(F,A[,options]);
Given the ideal F and ideal A
it returns the list (lpp,B,S) were B is the
reduced Groebner basis of the specialized F over
the segment S, subset of V(A) with top A,
determined by Wibmer's Lemma.
S is determined in P-representation
(or optionally in C-representation). The basis is
given by I-regular functions.
- Options:
- either ("rep", 0) or ("rep",1) the representation of
the resulting segment, by default is
0 =P-representation, (default) but can be set to
1=C-representation.
- Return:
- list of [lpp,B,S] =
[leading power product, basis,segment],
being B the reduced Groebner Basis given by
I-regular functions in full representation, of
the specialized ideal F on the segment S,
subset of V(A) with top A.
given in P- or C-representation.
It is the result of Wibmer's Lemma. See
A. Montes , M. Wibmer, "Groebner Bases for
Polynomial Systems with parameters".
JSC 45 (2010) 1391-1425.)
or the book
A. Montes. "The Groebner Cover" (Discussing
Parametric Polynomial Systems).
- Note:
- The basering R, must be of the form Q[a][x]
(a=parameters, x=variables).
Example:
| LIB "grobcov.lib";
if(defined(RE)){kill RE;}
ring RE=(0,a,b,c,d,e,f),(x,y),lp;
ideal F=a*x^2+b*x*y+c*y^2,d*x^2+e*x*y+f*y^2;
ideal A=a*e-b*d;
WLemma(F,A);
==> [1]:
==> _[1]=y2
==> _[2]=x2
==> [2]:
==> [1]:
==> _[1]=y2
==> [2]:
==> _[1]=(d)*x2+(e)*xy+(f)*y2
==> _[2]=(a)*x2+(b)*xy+(c)*y2
==> [3]:
==> [1]:
==> [1]:
==> _[1]=(ae-bd)
==> [2]:
==> [1]:
==> _[1]=(bf-ce)
==> _[2]=(af-cd)
==> _[3]=(ae-bd)
==> [2]:
==> _[1]=(d)
==> _[2]=(a)
WLemma(F,A,"rep",1);
==> [1]:
==> _[1]=y2
==> _[2]=x2
==> [2]:
==> [1]:
==> _[1]=y2
==> [2]:
==> _[1]=(d)*x2+(e)*xy+(f)*y2
==> _[2]=(a)*x2+(b)*xy+(c)*y2
==> [3]:
==> [1]:
==> _[1]=(ae-bd)
==> [2]:
==> _[1]=(bdf-cde)
==> _[2]=(af-cd)
==> _[3]=(ae-bd)
|
|