[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

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>