with Standard_Complex_Poly_Systems; use Standard_Complex_Poly_Systems; package Reduction_of_Nonsquare_Systems is -- DESCRIPTION : -- This package provides two different approaches for reducing -- a overconstrained system to a square system. function Random_Square ( p : in Poly_Sys ) return Poly_Sys; -- DESCRIPTION : -- The system q (q'range = 1..N) on return will be square, like -- q(i) = p(i) + l(i,N+1)*p(N+1) + .. + l(i,n)*p(n), for i=1,2,..,N. -- This type of reduction is recommended when the solution of any -- subsystem of p (p'range = 1,..,n) has a connected solution component. function Reduced_Square ( p : in Poly_Sys ) return Poly_Sys; -- DESCRIPTION : -- The system q (q'range = 1,..,N) on return will be square, like -- q(i) = Rpoly(..(Rpoly(p(i),p(N+1)), p(n)), for i=1,2,..,N, -- i.e.: the additional polynomial will be used for reducing the system. -- This type of reduction is recommended when the solution set of the -- first N equation of p consists of isolated points that do not all -- satisfy the remaining equations. end Reduction_of_Nonsquare_Systems;