The syntax of these procedures is the same as `GeneralSolve` but
there are two main differences between these procedures and `GeneralSolve`:

- the derivatives of the expressions are used to improve their
interval evaluation: hence the expressions should be at least for
`GradientSolve`and for`HessianSolve` - provided that the jacobian of the system is regular these
algorithms are able to compute
*exactly*the solutions of a system in the following sense: each of the solution boxes are guaranteed to contain one and only one solution and furthermore there is a numerical scheme that allows to determine this solution. If this is the case these procedures will return as result boxes for which each interval is reduced to a point (otherwise interval solutions are returned: this is a good way to determine if`ALIAS`has been able to calculate an exact solution). Furthermore the result provided by`HessianSolve`may be used as input for the`Newton`procedure that will allow to compute the solutions with an arbitrary accuracy, see section 9.8.

When `ALIAS` has returned a point M as solution it is always possible to
retrieve the boxes in which it was found that there was a unique
solution whose approximation is M: all interval solutions are
available via the list ``ALIAS/Solutions``.

In spite of the additional computation time involved by the use of the
derivatives, these procedures are in general faster
than `GeneralSolve`. Indeed the algorithms
that are used in these procedures may allow to determine relatively
large box in which an unique solution will be found, thereby avoiding
a large number of bisection. As this knowledge
is used to manage the list of boxes it may have a drastic effect on
the computation time of the algorithm.

Note that it is possible to avoid using the Hessian (which may be
computer intensive) for the evaluation of the expressions by setting
the variable ``ALIAS/no_hessian`` to 1.
The flag ``ALIAS/rand`` may be used to switch of bisection mode
from time to time (it fixes the value of the ALIAS-C++ `ALIAS_RANDG` variable).
The variables ``ALIAS/size_tranche_bisection`` and
``ALIAS/tranche_bisection`` may be used for the bisection mode 8
of `GradientSolve` (see the ALIAS-C++ manual).

For systems with equations and unknowns with the
algorithm computes the exact solutions of the first equations. Then
if the interval evaluation of all the remaining equations has an
absolute value lower than ``ALIAS/fepsilon`` the solution is
supposed to be valid. For systems with see
section 3.4.