Alright...
Well ordering principle. Like DoPo said, this is just saying that a set of natural numbers must have a least element. This is used to display a contradiction, as pointed out. What you do is, take a set of numbers with a property you believe to be impossible. Among these, there must be a least value. Then, using this least value, create a contradiction. A common method is to find a smaller value in the set. In other words, find a number contained in this set (i.e. having the property you believe to be impossible) that is smaller than the smallest element. Hey presto, you've proved the set to be empty. Do you follow?
In this case we want to prove that a_n = 2^n, and assume for a contradiction that S is non-empty. Therefore, by the well ordering principle, S must have a smallest member, call it s.
We then have that:
1) a_s >= 2^s, and
2) a_s = a_(s-1) + a_(s-2) + a_(s-3) <- missed the trivial step here, easily filled in
Now then, s-1 and s-2 are smaller than s. Since s is the smallest element of S, we see that s-1 and s-2 are not in S (this is how we use that smallest value property). Therefore
i) a_(s-1) < 2^(s-1), and
ii) a_(s-2) < 2^(s-2).
From 1) and 2) we have
2^s <= a_(s-1) + a_(s-2) + a_(s-3),
then substituting i) and ii) we get
2^s < 2^(s-1) + 2^(s-2) + a_(s-3).
Using 2^(s-1) = (2^s)/2 and 2^(s-2) = (2^s)/4 we have
2^s < (3/4) * 2^s + a_(s-3).
Hence
(1/4) * 2^s < a_(s-3), and so
2^(s-2) < a_(s-3).
Finally, we see that
2^(s-2) > 2^(s-3), and therefore
a_(s-3) > 2^(s-3).
But this means s-3 is in S. Since we defined s to be the smallest element of S, this proves that S is empty, which was to be demonstrated.
You may notice at the point I wrote out i) and ii), I could have written a_(s-3) < 2^(s-3) and proceeded from there. It would have resulted in showing that s is not in S, for a similarly effective contradiction. This would have been essentially the same thing as an inductive proof. The two are basically one and the same.