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

Annotation of OpenXM_contrib/PHC/Ada/Root_Counts/Product/m_homogeneous_bezout_numbers.ads, Revision 1.1.1.1

1.1       maekawa     1: with Standard_Complex_Poly_Systems;      use Standard_Complex_Poly_Systems;
                      2: with Partitions_of_Sets_Of_Unknowns;     use Partitions_of_Sets_of_Unknowns;
                      3:
                      4: package m_Homogeneous_Bezout_Numbers is
                      5:
                      6: -- DESCRIPTION :
                      7: --   This package allows the computation of m-homogeneous Bezout numbers.
                      8: --   It provides various enumeration strategies for computing a minimal
                      9: --   m-homogeneous Bezout number.
                     10:
                     11:   function Total_Degree ( p : Poly_Sys ) return natural;
                     12:
                     13:   -- DESCRIPTION :
                     14:   --   Returns the 1-homogeneous Bezout number of the system.
                     15:
                     16:   function Bezout_Number ( p : Poly_Sys; z : Partition ) return natural;
                     17:   function Bezout_Number ( p : Poly_Sys; z : Partition; max : natural )
                     18:                          return natural;
                     19:
                     20:   -- DESCRIPTION :
                     21:   --   Returns the m-homogeneous Bezout number w.r.t. the given partition.
                     22:   --   When max is given as parameter, the computation stops when the
                     23:   --   result becomes larger than or equal to max.
                     24:
                     25:   function Bezout_Number ( p : Poly_Sys ) return natural;
                     26:   function Bezout_Number ( max : natural; p : Poly_Sys ) return natural;
                     27:   function Bezout_Number ( p : Poly_Sys; min : natural ) return natural;
                     28:   function Bezout_Number ( max : natural; p : Poly_Sys; min : natural )
                     29:                          return natural;
                     30:   -- DESCRIPTION :
                     31:   --   A minimal m-homogeneous Bezout number of the polynomial system
                     32:   --   p is computed, by generating partitions of the sets of unknowns.
                     33:
                     34:   -- ON ENTRY :
                     35:   --   p         a polynomial system;
                     36:   --   max       a maximum number of partition to be evaluated,
                     37:   --             if max=0, then the total degree is returned;
                     38:   --   min       the procedure stops when the Bezout number becomes
                     39:   --             smaller than min.
                     40:
                     41:   procedure Bezout_Number
                     42:                ( p : in Poly_Sys; b,m : out natural; z : in out Partition );
                     43:   procedure Bezout_Number
                     44:                ( max : in natural; p : in Poly_Sys; b,m : out natural;
                     45:                  z : in out Partition );
                     46:   procedure Bezout_Number
                     47:                ( p : in Poly_Sys; min : in natural; b,m : out natural;
                     48:                  z : in out Partition );
                     49:   procedure Bezout_Number
                     50:                ( max : in natural; p : in Poly_Sys; min : in natural;
                     51:                  b,m : out natural; z : in out Partition );
                     52:
                     53:   -- DESCRIPTION :
                     54:   --   A minimal m-homogeneous Bezout number of the polynomial system
                     55:   --   is computed.  The partition with the calculated Bezout number
                     56:   --   is returned.
                     57:
                     58:   -- ON ENTRY :
                     59:   --   p         a polynomial system;
                     60:   --   max       a maximum number of partition to be evaluated,
                     61:   --             if max=0, then the total degree is returned;
                     62:   --   min       the procedure stops when the Bezout number becomes
                     63:   --             smaller than min.
                     64:
                     65:   -- ON RETURN :
                     66:   --   b         a minimal m-homogeneous Bezout number;
                     67:   --   m         the number of sets in the partition z;
                     68:   --   z         the partition with the computed Bezout number b.
                     69:
                     70:   procedure PB ( p : in Poly_Sys; b,m : out natural; z : in out Partition );
                     71:
                     72:   -- DESCRIPTION :
                     73:   --   This is a fast heuristic for computing `the' Bezout number of p.
                     74:   --   It is fast because it does not generate all partitions,
                     75:   --   it is a heuristic because it does not always give then
                     76:   --   minimal partition.
                     77:
                     78:   -- ON ENTRY :
                     79:   --   p         a polynomial system.
                     80:
                     81:   -- ON RETURN :
                     82:   --   b         an m-homogeneous Bezout number;
                     83:   --   m         the number of sets in the partition z;
                     84:   --   z         the partition corresponding to b.
                     85:
                     86: end m_Homogeneous_Bezout_Numbers;

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>