#### D.8.7.12 num_radical_via_randlincom

Procedure from library `recover.lib` (see recover_lib).

Usage:
  num_radical_via_randlincom(I,D); ideal I, int D
  D a bound to the degree of the elements of the components.

Return:
  ideal: the radical of I

Remarks:
  Uses Bertini.
  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 rational numbers.

Example:

    LIB "recover.lib";
    //First, we attempt to compute the radical via the hybrid algorithm.
    ring R=0,(x,y,z),dp;
    ideal I=(x+y)^2*(y+2z)^3, (x+y)^3*(x-3z)^2;
    int D=2;
    int Prec=300;
    ideal numRad=num_radical_via_randlincom(I,D,Prec);
    numRad;
    //Then we compute the radical symbolically and compare the results.
    ideal Rad=radical(I);
    Rad;
    reduce(Rad,std(numRad));
    reduce(numRad,std(Rad));

See also: num_radical_via_decom.

User manual for Singular version 4.4.1, 2025, generated by texi2html.