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>