with Ada.Calendar; with Standard_Natural_Numbers; use Standard_Natural_Numbers; with Standard_Integer_Numbers; use Standard_Integer_Numbers; with Standard_Complex_Poly_Systems; with Standard_Complex_Laur_Systems; with DoblDobl_Complex_Poly_Systems; with DoblDobl_Complex_Laur_Systems; with QuadDobl_Complex_Poly_Systems; with QuadDobl_Complex_Laur_Systems; package Black_Box_Square_Solvers is -- DESCRIPTION : -- A square system has as many equations as unknowns -- and are the input to the solve procedures below. procedure Solve ( nt : in natural32; infilename,outfilename : in string; start_moment : in Ada.Calendar.Time; p : in Standard_Complex_Poly_Systems.Link_to_Poly_Sys; deflate,append_sols : in boolean; verbose : in integer32 := 0 ); procedure Solve ( nt : in natural32; infilename,outfilename : in string; start_moment : in Ada.Calendar.Time; p : in DoblDobl_Complex_Poly_Systems.Link_to_Poly_Sys; append_sols : in boolean; verbose : in integer32 := 0 ); procedure Solve ( nt : in natural32; infilename,outfilename : in string; start_moment : in Ada.Calendar.Time; p : in QuadDobl_Complex_Poly_Systems.Link_to_Poly_Sys; append_sols : in boolean; verbose : in integer32 := 0 ); -- DESCRIPTION : -- A polynomial system with as many equations as unknowns is square. -- This procedure solves a square polynomial system p, -- using double, double double, or quad double arithmetic. -- -- REQUIRED : -- Must be called after the special cases (one single equation -- and a linear system) have been dealt with. -- ON ENTRY : -- nt the number of tasks, if 0 then no multitasking, -- otherwise nt tasks will be used to track the paths; -- infilename the name of the input file; -- outfilename the name of the output file; -- start_moment clock time when phc was started; -- p polynomial system to be solved. -- deflate if not deflate, then not deflation will be applied; -- append_sols true if solutions need to be appended to input file; -- verbose the verbose level. -- ON RETURN : -- p system may be scaled or reduced. procedure Solve ( nt : in natural32; infilename,outfilename : in string; start_moment : in Ada.Calendar.Time; p : in Standard_Complex_Laur_Systems.Link_to_Laur_Sys; append_sols : in boolean; verbose : in integer32 := 0 ); procedure Solve ( nt : in natural32; infilename,outfilename : in string; start_moment : in Ada.Calendar.Time; p : in DoblDobl_Complex_Laur_Systems.Link_to_Laur_Sys; append_sols : in boolean; verbose : in integer32 := 0 ); procedure Solve ( nt : in natural32; infilename,outfilename : in string; start_moment : in Ada.Calendar.Time; p : in QuadDobl_Complex_Laur_Systems.Link_to_Laur_Sys; append_sols : in boolean; verbose : in integer32 := 0 ); -- DESCRIPTION : -- A polynomial system with as many equations as unknowns is square. -- This procedure solves a square Laurent polynomial system p, -- with double, double double, or quad double arithmetic. -- -- REQUIRED : -- Must be called after the special cases (one single equation -- and a linear system) have been dealt with. -- ON ENTRY : -- nt the number of tasks, if 0 then no multitasking, -- otherwise nt tasks will be used to track the paths; -- infilename the name of the input file; -- outfilename the name of the output file; -- start_moment clock time when phc was started; -- p polynomial system to be solved. -- append_sols true if solutions need to be appended to input file; -- verbose the verbose level. -- ON RETURN : -- p system may be scaled or reduced. end Black_Box_Square_Solvers;