The exponential function is usually defined as follows:

We can define a sequence *S*(*x*) such that as as follows, using a second sequence *s*(*x*), whose current value is used to simplify the implementation:

If (*x* < 0), the sequence *S* oscillates about the limit. We can
easily use two consecutive elements of the sequence to compute a lower
and upper bound, and hence compute the required stream of nested
intervals.

If (*x* > 0), the sequence no longer oscillates around the sequence, but
tends to the limit from below. We can observe that

Therefore to create a sequence of nested intervals bounding the
required limit, we simply find *N* such that

Now we simply compute nested intervals using the bounds above.

There is a problem with the above approach, which is that we cannot
determine the sign of *x* without examining a potentially infinite
number of digits, and yet we need to know the sign to determine the
method to use. One solution to this is to `normalise' the input, but
stopping after a finite number of steps if no non-zero digit is found.
If we cannot determine the sign, we simply compute *S*_{n-1}, *S*_{n},
and , and then take the minimum and maximum
of these numbers as lower and upper bounds respectively. This is the
way the algorithm has been implemented in the calculator, and despite
the extra cost, the method is very fast as both sequences converge
extremely quickly for small values of |*x*|.