While trying to get some hold on the hyperreal numbers I found that their construction using the already existing real number system $\mathbb{R}$ requires the use of objects called free ultrafilters on $\mathbb{N}$. When I read about ultrafilters from wikipedia then I found that a free ultrafilter $U$ on $\mathbb{N}$ is a set of subsets of $\mathbb{N}$ such that $$U = \{A \subseteq \mathbb{N} \mid \mathbb{N} - A \text{ is finite}\}$$ i.e. $U$ consists of all cofinite subsets of $\mathbb{N}$.
Now we come to the point where this ultrafilter $U$ is used in construction of hypperreal numbers. The essential idea is to think of a hyperreal number as a sequence of real numbers and the idea of ultrafilter is needed to define ordering of hyperreal numbers. Thus if we have two sequences $A = \{a_{n}\}, B = \{b_{n}\}$ of real numbers then we define $A \leq B$ if the set $\{n \mid a_{n} \leq b_{n}\} \in U$ where $U$ is a free ultrafilter on $\mathbb{N}$. To me this is equivalent to saying $a_{n} \leq b_{n}$ except for finitely many values of $n$.
My questions are:
Is my understanding of a free ultrafilter on $\mathbb{N}$ correct?
I think I may be wrong here because I have started studying this only today and maybe I have not understood this properly. If I am wrong then please let me know exactly why/how my understanding is wrong.
If the answer to previous question is "yes" then I don't see the need to introduce just another jargon called ultrafilter (and that too of a free type) and saying that $a_{n}\leq b_{n}$ for all except a finite number of values of $n$ is sufficient to define ordering of hyperreal numbers $A$ and $B$ defined by these sequences. Why then do we need this ultrafilter thing?
Edit: Ok my understanding of ultrafilter was incorrect and hence the second question is striked out. From the comments I see that existence of free ultrafilter $U$ on $\mathbb{N}$ depends on Axiom of Choice. I have seen applications of this axiom (like proving the existence of non-measurable set) and its use does not disturb me philosophically.
How do I use this axiom to create free ultrafilter on $\mathbb{N}$? One way is probably like this: let $A, B$ be non-empty subsets of $\mathbb{N}$ such that $A \cup B = \mathbb{N}$. For every such pair of $A, B$ i chose one of them and put in the free ultrafilter being constructed. Does this work or I am surely headed in wrong direction?
Further Edit: After reading some more stuff (thanks to Andre Nicolas for link to another question regarding ultrafilter existence) I can make some sense. The set $U$ I wrote above is not an ultrafilter but rather a filter which commonly goes by the name Fréchet filter. Each filter is contained in an ultrafilter and hence there is an ultrafilter $U'$ such that $U \subset U'$ and this is the desired ultrafilter needed to construct the hyperreal numbers.