Annotation of OpenXM_contrib/PHC/Ada/Root_Counts/Product/m_homogeneous_bezout_numbers.ads, Revision 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>