Recap: it would be nice to add a number such as $\infty $ as an "infinite number", and then to determine the behaviour of a sequence $\left({a}_{n}\right)$ as $n$ "goes to infinity" just look at ${a}_{\infty}$.

Adding an "infinite number" to a system in this way is similar to the process when a system is "completed" by adding all values of limits (such as how each irrational real number is a limit of rationals and added to $\mathbb{Q}$ to form $\mathbb{R}$). The problems with the example of ${a}_{\infty}$ are that (1) we need to define the sequence's value at $\infty $ and (2) there are, in fact, many ways of "going to infinity" and each should get a different infinite number like $\infty $.

With that said, Robinson's method for constructing nonstandard numbers does have a lot of similarities with "completions" in mainstream mathematics.

This section covers the ultrafilter construction: it is rather concrete and straightforward. We start with a sequence $\left({a}_{n}\right)$ and want to investigate its behaviour "at infinity".

A *real-valued process* is a sequence of real numbers ${b}_{n}$
We will make all real valued processes into numbers with the help
of an *ultrafilter*. An ultrafilter $D$ is a subset of
$P\left(X\right)$ where $X$ is an infinite indexing set (here we take
$X=\mathbb{N}$). The ultrafilter $D$ must satisfy certain axioms.

- $\varnothing \notin D$
- $A\in D$ and $B\in D$ implies $A\cap B\in D$
- $A\in D$ and $B\supseteq A$ implies $B\in D$
- for all $A\subseteq \mathbb{N}$, $A\in D$ or $X\setminus A\in D$

Think of $D$ as specifying the *large* subsets of $X$.
(They are so large that the intersection of any two large sets is large.)

The easiest example of an ultrafilter is the *principal* ultrafilter for
some $a\in X$, defined as ${D}_{a}=\left\{A\subseteq X:a\in A\right\}$.
An ultrafilter $D$ is nonprincipal if it is not of this type.

For an example of a nonprincipal ultrafilter one must work a bit harder. Start with $\mathrm{Cofin}=\left\{A\subseteq X:X\setminus A\text{is finite}\right\}$. This is a filter, i.e. satisfies the first three axioms. Now using Zorn's lemma extend $\mathrm{Cofin}$ to a maximal filter in $P\left(X\right)$. This will be an ultrafilter: the mathematical work is done when given a filter $D$ not containing $A$ nor $X\setminus A$ one observes that

is a filter properly extending $D$. To see that an ultrafilter extending $\mathrm{Cofin}$ is not principal just note that it contains $X\setminus \left\{a\right\}$ for all $a\in X$.

We now fix an ultrafilter $D$ for $X=\mathbb{N}$ extending $\mathrm{Cofin}$ and look at real-valued processes $\left({b}_{n}\right)$. The trick is to say two such sequences $\left({b}_{n}\right)$ and $\left({c}_{n}\right)$ are equivalent (essentially equal) if the set of indices where they are equal is "large" i.e. in $D$.

Exercise: show this is an equivalence relation.

I will notate the equivalence class of the sequence $\left({b}_{n}\right)$ by ${b}_{D}$.

The new extended set of numbers, denoted ${\Pi}_{D}\mathbb{R}$, or ${*}^{}\mathbb{R}$, is the set of real-valued processes $\left({b}_{n}\right)$ modulo this equivalence. It includes all normal real numbers because each $r\in \mathbb{R}$ gives rise to a constant process ${b}_{n}=r$, all $n$, whose equivalence class we identify with $r$.

Exercise: show that all distinct constant real-valued processes are inequivalent under the equivalence relation.

For an example of an infinite number, consider the process given by ${b}_{n}=n$. This is not equal to any $r$ since $\left\{n:n\ne r\right\}$ is in $\mathrm{Cofin}$. The number corresponding to the original $\left({a}_{n}\right)$ is typically a new number too. To picture where this arises we need to put some new structure on ${*}^{}\mathbb{R}$.

Other operations such as $-$ and $\left|\right|$ can be defined in an analogous way. In all cases, these definitions agree with the usual one on $\mathbb{R}$ because of the identification of $r\in \mathbb{R}$ with a constant sequence and $\mathbb{N}\in D$.

Exercise. For ${b}_{n}=n$ show that ${b}_{D}>r$ for all $r\in \mathbb{R}$. (We write this as ${b}_{D}>\mathbb{R}$.)

The system ${*}^{}\mathbb{R}$ contains infinitesimal numbers too, such as ${b}_{D}$ where ${b}_{n}=1/n$. It is easily seen that $0<{b}_{D}<r$ for all positive $r\in \mathbb{R}$. (Exercise.)

Here is an important definition: write $a\approx b$ when $\left|a-b\right|$ is zero or infinitesimal.

Proposition. For $a\in {*}^{}\mathbb{R}$, $a\approx r$ for at most one $r\in \mathbb{R}$.

When $a\approx r$ for some $r\in \mathbb{R}$ we say $a$ is *finite*
and write $r=\mathrm{st}a$.

Theorem. For the sequence $\left({a}_{n}\right)$ and $l\in \mathbb{R}$ we have, ${a}_{n}\to l$ iff ${a}_{D}\approx l$ for all ultrafilters $D\supseteq \mathrm{Cofin}$.

One direction goes by assuming ${a}_{n}\to l$ and showing $\left|{a}_{D}-l\right|<\epsilon $ for each positive $\epsilon \in \mathbb{R}$. This is rather standard in the literature. The other direction (which is less often presented) goes by assuming $l$ is not a limit and so for some $\epsilon >0$ in $\mathbb{R}$ there are ${n}_{i}\in \mathbb{N}$ with ${n}_{0}<{n}_{1}<\dots $ and $\left|{a}_{{n}_{i}}-l\right|>\epsilon $ for $i\in \mathbb{N}$. Then there is an ultrafilter $D\supseteq \mathrm{Cofin}$ containing $\left\{{n}_{0},{n}_{1},\dots \right\}$ and

showing $\left|{a}_{D}-l\right|>\epsilon $ for this $D$.

We haven't quite got to where we want to be: we have infinite numbers such as the number ${b}_{D}$ for the process ${b}_{n}=n$ but we haven't made sense of ${a}_{{b}_{D}}$ yet, and the characterisation of convergence involves a quantifier over ultrafilters $D$.

The first is easily fixed. Since ${a}_{n}$ is a function it extends naturally to the nonstandard universe. First

The set ${*}^{}\mathbb{N}\subseteq {*}^{}\mathbb{R}$ is the set of ${b}_{D}$ where $\left\{n:{b}_{n}\in \mathbb{N}\right\}\in D$. For any such ${b}_{D}$ we set

Note that only the ${b}_{n}\in \mathbb{N}$ matter because there is a $D$-large set of such indices $n$. We could set ${a}_{\left({b}_{n}\right)}=0$ for all other $n$, or indeed anything else.

Now we have ${a}_{x}$ for any $x\in {*}^{}\mathbb{N}$, including infinite such $x$.

Theorem. ${a}_{n}\to l$ iff ${a}_{x}\approx l$ for all infinite $x\in {*}^{}\mathbb{N}$.

For one direction, suppose ${a}_{n}\to l$ and $x={x}_{D}\in {*}^{}\mathbb{N}$. then for each $\epsilon >0$ there is $N\in \mathbb{N}$ so that $\left\{n:\left|{a}_{n}-l\right|<\epsilon \right\}\supseteq \left\{n:n>N\right\}$, and as ${x}_{D}$ is infinite, $\left\{n:{x}_{n}>N\right\}\in D$. Therefore $\left\{n:\left|{a}_{n}-l\right|<\epsilon \right\}\in D$.

For the other, suppose ${a}_{n}\to l$ is false and take $\epsilon >0$ and natural numbers ${x}_{0}<{x}_{1}<{x}_{2}<\dots $ with $\left|{a}_{\left({x}_{i}\right)}-l\right|>\epsilon $. So ${x}_{D}$ is infinite (because the sequence $\left({x}_{n}\right)$ is increasing) and $\left|{a}_{\left({x}_{D}\right)}-l\right|>\epsilon $.

Remark. It is certainly remarkable that the notion ${a}_{n}\to l$ (which involves three quantifiers, $\forall \epsilon >0\hspace{0.17em}\exists N\in \mathbb{N}\hspace{0.17em}\forall n>N\hspace{0.17em}\dots $) is equivalent to "${a}_{x}\approx l$ for all infinite $x\in {*}^{}\mathbb{N}$" which involves only one quantifier, quantifying over infinite $x\in {*}^{}\mathbb{N}$. Of course the "infinite" $x$ is doing some work as is $\approx $. Note that neither of these two key notions are defined in the "usual" way by saying some set of indices is in $D$. You could ask, given that $\forall \epsilon >0\hspace{0.17em}\exists N\in \mathbb{N}\hspace{0.17em}\forall n>N\hspace{0.17em}\left(\left|{a}_{n}-l\right|<\epsilon \right)$ gives a function $f$ with $\forall \epsilon >0\hspace{0.17em}\forall n>f\left(\epsilon \right)\hspace{0.17em}\left|{a}_{n}-l\right|<\epsilon $ we should be able to obtain a similar function from the nonstandard characterisation. Indeed we can: take

It is easy to check that this definition gives finite $f\left(\epsilon \right)$ for positive standard real $\epsilon $.