Here's one direction..
If M is an upper bound and this sequence exists, then for any epsilon > 0 there exists an N such than for all n > N,
M - a_n < epsilon
Assume B is a lesser upper bound than M. Then take epsilon = M - B and we get a_n > B for n large enough. But this contradicts B being an upper bound. Hence M is the least upper bound.