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

Annotation of OpenXM_contrib/PHC/Ada/Root_Counts/Product/set_structure.ads, Revision 1.1

1.1     ! maekawa     1: with text_io;                            use text_io;
        !             2: with Standard_Natural_Vectors;
        !             3: with Lists_of_Integer_Vectors;           use Lists_of_Integer_Vectors;
        !             4:
        !             5: package Set_Structure is
        !             6:
        !             7: -- DESCRIPTION :
        !             8: --   This package manages the set structure of a polynomial system.
        !             9:
        !            10: -- CONSTRUCTORS :
        !            11:
        !            12:   procedure Init ( ns : in Standard_Natural_Vectors.Vector );
        !            13:
        !            14:   -- DESCRIPTION :
        !            15:   --   Initialization of the datastructures, must be the first operation.
        !            16:   --   ns(i) contains the number of sets for the ith equation.
        !            17:
        !            18:   procedure Add ( i,j,k : in natural );
        !            19:
        !            20:   -- DESCRIPTION :
        !            21:   --   To the jth set of the ith equation, the kth unknown will be added.
        !            22:
        !            23:   procedure Remove ( i,j,k : in natural );
        !            24:
        !            25:   -- DESCRIPTION :
        !            26:   --   The kthe unknown will be removed from the jth set
        !            27:   --   of the ith equation.
        !            28:
        !            29: --  SELECTORS :
        !            30:
        !            31:   function Empty return boolean;
        !            32:
        !            33:   -- DESCRIPTION :
        !            34:   --   Returns true if the set structure is empty.
        !            35:
        !            36:   function Dimension return natural;
        !            37:
        !            38:   -- DESCRIPTION :
        !            39:   --   Returns the dimension, that is the number of equations.
        !            40:
        !            41:   function Number_of_Sets ( i : natural ) return natural;
        !            42:
        !            43:   -- DESCRIPTION :
        !            44:   --   Returns the number of sets for the i-th equation.
        !            45:
        !            46:   function Is_In ( i,j,k : natural ) return boolean;
        !            47:
        !            48:   -- DESCRIPTION :
        !            49:   --   Returns true if the k-th unknown belongs to the j-th set of the
        !            50:   --   i-th equation.
        !            51:
        !            52: -- COMPUTING THE UPPER BOUND :
        !            53:
        !            54:   function B return natural;
        !            55:
        !            56:   -- REQUIRED :
        !            57:   --   There exists a set structure for a polynomial system
        !            58:
        !            59:   -- DESCRIPTION :
        !            60:   --   Returns an upper bound to the number of solutions to
        !            61:   --   a given polynomial system.
        !            62:
        !            63:   procedure B ( bn : out natural; l : in out List );
        !            64:
        !            65:   -- REQUIRED :
        !            66:   --   There exists a set structure for a polynomial system
        !            67:
        !            68:   -- DESCRIPTION :
        !            69:   --   Returns the upper bound bn, together with the positions
        !            70:   --   corresponding to the acceptable classes.
        !            71:
        !            72: -- DESTRUCTOR :
        !            73:
        !            74:   procedure Clear;
        !            75:
        !            76:   -- DESCRIPTION :
        !            77:   --   All used memory will be freed
        !            78:
        !            79: end Set_Structure;

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