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

Annotation of OpenXM_contrib/PHC/Ada/Root_Counts/Stalift/mixed_coherent_subdivisions.ads, Revision 1.1

1.1     ! maekawa     1: with Standard_Integer_Vectors;           use Standard_Integer_Vectors;
        !             2: with Standard_Floating_Vectors;
        !             3: with Standard_Integer_VecVecs;           use Standard_Integer_VecVecs;
        !             4: with Arrays_of_Integer_Vector_Lists;     use Arrays_of_Integer_Vector_Lists;
        !             5: with Integer_Mixed_Subdivisions;         use Integer_Mixed_Subdivisions;
        !             6: with Standard_Complex_Poly_Systems;      use Standard_Complex_Poly_Systems;
        !             7:
        !             8: package Mixed_Coherent_Subdivisions is
        !             9:
        !            10: -- DESCRIPTION :
        !            11: --   A number of routines for constructing a mixed coherent subdivision
        !            12: --   are offered, each with a different type of lifting function.
        !            13:
        !            14: -- a polynomial system as lifting function :
        !            15:
        !            16:   function Mixed_Coherent_Subdivision
        !            17:                ( n : natural; mix : Vector; points : Array_of_Lists;
        !            18:                  lift : Poly_Sys ) return Mixed_Subdivision;
        !            19:
        !            20:   procedure Mixed_Coherent_Subdivision
        !            21:                ( n : in natural; mix : in Vector; points : in Array_of_Lists;
        !            22:                  lift : in Poly_Sys; lifted : in out Array_of_Lists;
        !            23:                  nbsucc,nbfail : in out Standard_Floating_Vectors.Vector;
        !            24:                  mixsub : out Mixed_Subdivision );
        !            25:
        !            26: -- a user-defined lifting function :
        !            27:
        !            28:   function Mixed_Coherent_Subdivision
        !            29:                ( n : natural; mix : Vector; points : Array_of_Lists;
        !            30:                  linear : boolean; lift : VecVec ) return Mixed_Subdivision;
        !            31:
        !            32:   procedure Mixed_Coherent_Subdivision
        !            33:                ( n : in natural; mix : in Vector; points : in Array_of_Lists;
        !            34:                  linear : in boolean; lift : in VecVec;
        !            35:                  lifted : in out Array_of_Lists;
        !            36:                  nbsucc,nbfail : in out Standard_Floating_Vectors.Vector;
        !            37:                  mixsub : out Mixed_Subdivision );
        !            38:
        !            39: -- a randomly generated lifting function :
        !            40:
        !            41:   function Mixed_Coherent_Subdivision
        !            42:                ( n : natural; mix : Vector; points : Array_of_Lists;
        !            43:                  linear : boolean; low,upp : Vector )
        !            44:                return Mixed_Subdivision;
        !            45:
        !            46:   procedure Mixed_Coherent_Subdivision
        !            47:               ( n : in natural; mix : in Vector; points : in Array_of_Lists;
        !            48:                  linear : in boolean; low,upp : in Vector;
        !            49:                  lifted : in out Array_of_Lists;
        !            50:                  nbsucc,nbfail : in out Standard_Floating_Vectors.Vector;
        !            51:                  mixsub : out Mixed_Subdivision );
        !            52:
        !            53:   -- DESCRIPTION :
        !            54:   --   Given a set of points and a lifting function,
        !            55:   --   a subdivision of the polytope will be computed.
        !            56:
        !            57:   -- ON ENTRY :
        !            58:   --   n         the dimension of the vector space;
        !            59:   --   mix       mix(k) indicates how many times the kth point set occurs;
        !            60:   --   points    an array of all different point sets;
        !            61:   --   linear    indicates wether a linear lifting should be used;
        !            62:   --   lift      an array of lifting polynomials or an m dimensional
        !            63:   --             array of vectors, where the length of the kth vector
        !            64:   --             must equal the length of the kth support,
        !            65:   --             when nonlinear, otherwise the length equals n.
        !            66:   --   low,upp   lower and upper bounds for random lifting.
        !            67:
        !            68:   -- ON RETURN :
        !            69:   --   lifted    the lifted points which can later be used for lifting
        !            70:   --             the polynomial system;
        !            71:   --   nbsucc    the number of successful face-face combinations that
        !            72:   --             have been computed;
        !            73:   --   nbfail    the number of unsuccessful face-face combinations;
        !            74:   --   mixsub    the mixed subdivision of the polytope, defined as
        !            75:   --             lower hull of the lifted points.
        !            76:
        !            77: end Mixed_Coherent_Subdivisions;

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