int Solve_General_Gradient_Interval(int m,int n, INTEGER_VECTOR Type_Eq, INTERVAL_VECTOR (* IntervalFunction)(int,int,INTERVAL_VECTOR &), INTERVAL_MATRIX (* IntervalGradient)(int, int, INTERVAL_VECTOR &), INTERVAL_VECTOR & TheDomain, int Order,int M,int Stop, double epsilon,double epsilonf,double Dist, INTERVAL_MATRIX & Solution,int Nb,INTEGER_MATRIX &GI, int (* Simp_Proc)(INTERVAL_VECTOR &))the arguments being:

`m`: number of unknowns`n`: number of functions, see the note 2.3.4.1`Type_Eq`: type of the functions, see the note 2.3.4.2`IntervalFunction`: a function which return the interval vector evaluation of the functions, see the note 2.3.4.3. Remember that if you have equations and inequalities in the system you must first define the equations and then the inequalities.`IntervalGradient`: a function which the interval matrix of the jacobian of the functions, see the note 2.4.2.2`TheDomain`: box in which we are looking for solution of the system. A copy of the search domain is available in the global variable`ALIAS_Init_Domain``Order`: the type of order which is used to store the boxes created during the bisection process. This order may be either`MAX_FUNCTION_ORDER`or`MAX_MIDDLE_FUNCTION_ORDER`. See the note on the order 2.3.4.4.`M`: the maximum number of boxes which may be stored. See the note 2.3.4.5`Stop`: the possible values are 0,1,2- 0: the algorithm will look for every solution in
`TheDomain` - 1: the algorithm will stop as soon as 1 solution has been found
- 2: the algorithm will stop as soon as
`Nb`solutions have been found

- 0: the algorithm will look for every solution in
`epsilon`: the maximal width of the box, see the note 2.3.4.6`epsilonf`: the maximal width of the function intervals, see the note 2.3.4.6. Note that if this value is set to 0, then Moore test is not used.`Dist`: minimal distance between the middle point of two interval solutions, see the note 2.3.4.7`Solution`: an interval matrix of size (`Nb`,`m`) which will contained the solution intervals. This list is sorted using the order specified by`Order``Nb`: the maximal number of solution which will be returned by the algorithm`GI`: an integer matrix called the*simplified jacobian*, which give a-priori information on the sign of the derivative of the function.`GI(i,j)`indicates the sign of the derivative of function`i`with respect to variable`j`using the following code:- -1: the derivative is always negative
- 0: the function is not dependent of variable
`j` - 1: the derivative is always positive
- 2: the sign of the derivative is not known

`Simp_Proc`: a user-supplied procedure that take as input the current box and proceed to some further reduction of the width of the box components or even determine that there is no solution for this box, in which case it should return -1 (see note 2.3.3). Remember that you may use the 3B method to improve the efficiency of this algorithm (see section 2.3.2).

`Type_Eq`: in that case all the functions will supposed to be equations.`GI`: in that case all the sign of the derivatives will supposed to be unknown`Simp_Proc`: no simplification procedure is provided by the user