[BACK]Return to interpolating_homotopies.ads CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / PHC / Ada / Root_Counts / Product

File: [local] / OpenXM_contrib / PHC / Ada / Root_Counts / Product / interpolating_homotopies.ads (download)

Revision 1.1.1.1 (vendor branch), Sun Oct 29 17:45:29 2000 UTC (23 years, 7 months ago) by maekawa
Branch: PHC, MAIN
CVS Tags: v2, maekawa-ipv6, RELEASE_1_2_3, RELEASE_1_2_2_KNOPPIX_b, RELEASE_1_2_2_KNOPPIX, RELEASE_1_2_2, RELEASE_1_2_1, HEAD
Changes since 1.1: +0 -0 lines

Import the second public release of PHCpack.

OKed by Jan Verschelde.

with Standard_Integer_Matrices;          use Standard_Integer_Matrices;
with Standard_Complex_Poly_Systems;      use Standard_Complex_Poly_Systems;
with Standard_Complex_Solutions;         use Standard_Complex_Solutions;
with Partitions_of_Sets_of_Unknowns;     use Partitions_of_Sets_of_Unknowns;

package Interpolating_Homotopies is

-- DESCRIPTION :
--   This package contains facilities for constructing interpolating
--   homotopies, based on a given m-homogeneous structure.
--   The routines are given in the order in which they should be applied.
--   Null polynomials are ignored, making scaled interpolation possible,
--   the scaling equation, used for generating the interpolating vectors,
--   can be added afterwards.  For linear scalers, the last unknown of the
--   scaling equation should be ignored in those monomials that have degree
--   one in that unknown, to avoid singular interpolation matrices.

  function Dense_Representation
              ( p : Poly_Sys; z : partition ) return Poly_Sys;
  function Dense_Representation
              ( p : Poly_Sys; z : partition; d : Matrix ) return Poly_Sys;

  -- DESCRIPTION :
  --   A dense representation of an m-homogeneous structure is returned.
  --   The coefficients of the polynomials in the returned system are all one.

  function Independent_Representation ( p : Poly_Sys ) return Poly_Sys;

  -- DESCRIPTION :
  --   An independent representation of a polynomial system is returned.
  --   This means that the initial term of each polynomial does not occur
  --   in every other polynomial.

  function Independent_Roots ( p : Poly_Sys ) return natural;
  function Independent_Roots ( p : Poly_Sys; i : natural ) return natural;

  -- DESCRIPTION :
  --   Returns the number of independent roots the system p can have.
  --   When the ith unknown is given as parameter, the monomials that
  --   have degree one in x_i are not counted.

  -- IMPORTANT NOTE : p must be an independent representation of a polynomial
  --                  system, otherwise the result might not be reliable.

  function Interpolate ( p : Poly_Sys; b : natural; sols : Solution_List )
                       return Poly_Sys;
  function Interpolate ( p : Poly_Sys; i,b : natural; sols : Solution_List )
                       return Poly_Sys;

  -- DESCRIPTION :
  --   This routine constructs a start system q with the same monomial
  --   structure as the system p.

  -- ON ENTRY :
  --  p         a polynomial system;
  --  i         monomials with degree one in x_i will be ignored;
  --  b         must equal Independent_Roots(p);
  --  sols      interpolation vectors, Length_Of(sols) = b.

  -- ON RETURN :
  --  q         system that has the given list sols as solutions.

end Interpolating_Homotopies;