|
D.8.7.14 num_radical2
Procedure from library recover.lib (see recover_lib).
- Usage:
- num_radical2(P,D,C); list P, int D, bigint C
P a list of lists representing a witness point set representing an ideal I
D should be a bound to the degree of the elements of the components
C the number with which the images of the Veronese embeddings are multiplied
- Return:
- list of ideals: each of the ideals a prime component of the radical of I
- Remarks:
- Instead of using the images of the Veronese embeddings of each individual witness
point, this procedure first computes a random linear combination of those images
and searches for homogeneous polynomial relations for this linear combination.
- Note:
- Should only be called from a ring over the complex numbers.
Example:
| LIB "recover.lib";
//First, we write the input file for bertini and compute the radical symbolically.
ring r=0,(x,y,z),dp;
ideal I=4xy2-4z3,-2x2y+5xz2;
ideal Rad=radical(I);
writeBertiniInput(I,100);
//Then we attempt to compute the radical via the hybrid algorithm.
ring R=(complex,100,i),(x,y,z),dp;
system("sh","bertini input");
list P=getWitnessSet();
int D=2;
bigint C=bigint(10)**30;
ideal Rad2=num_radical2(P,D,C);
//Lastly, we compare the results.
Rad2;
ideal Rad=fetch(r,Rad);
Rad;
reduce(Rad,std(Rad2));
reduce(Rad2,std(Rad));
| See also:
num_radical1.
|