Loading [MathJax]/jax/element/mml/optable/MathOperators.js

Thursday, March 15, 2012

Keepin' it Hyperreal

I haven't posted anything here in a while, so let's do something cool... like construct ^*\mathbb{R}
Swag.

The hyperreals, ^*\mathbb{R}, (Abraham Robinson's world of nonstandard analysis) are a neat way to rigorously develop the notion of infinitesimal numbers in analysis.  Because we want our numbers to form a field, that means we'll also pick up a new description of 'infinitely large' numbers (quite distinct from the cardinals/ordinals though).

This will be more about the crazy set theory shenanigans that go into building ^*\mathbb{R}, rather than actually working in  ^*\mathbb{R}... maybe I'll cover the practical side in another blogpost...
You remember building \mathbb{R} from the set of all cauchy sequences in \mathbb{Q}?  Well, to construct ^*\mathbb{R} from \mathbb{R}, we start with the set of all sequences in \mathbb{R} (no restrictions at all) and call it \mathbb{R}^\mathbb{N}

Now we need to put some sort of equivalence relation of these sequences.  Intuitively, we're going to say two sequences, \{a_i\}_{i \in \mathbb{N}}, \{b_i\}_{i \in \mathbb{N}} \in \mathbb{R}^\mathbb{N} are equivalent \left( \mbox{i.e. }\{a_i\}_{i \in \mathbb{N}} \sim \{b_i\}_{i \in \mathbb{N}}\right) if they agree on a 'large' subset of \mathbb{N}: i.e. if the set \{ i \in \mathbb{N}: a_i = b_i\} is 'large'.

It's a curious way to define an equivalence.  On one hand, a pair of cauchy sequences like \{0.9, 0.99, 0.999 ...\} and \{0, 0.9, 0.99 ...\}, while very similar, do not precisely equal each other at any term, and thus won't be equal.  And sequences like \{0,1,0,1 ...\} look like they're going to give us a headache.  Is it 1 or is it 0?  It ought to be one of them... but it's not clear which one...

Let's write out some nice properties for 'large' subsets of \mathbb{N} to have, and see where that takes us.
1. \mathbb{N} itself is large (this way, a sequence is at least equivalent to itself)
2. \emptyset is not large (this way, not every pair of sequences in \mathbb{R}^\mathbb{N} are equivalent)
3. If A is large and A \subset B, then B is large
4. If A and B are both large, then A \cap B is large.
We can define a notion of 'largeness' by simply specifying what the collection of all 'large' sets is, some \mathcal{F} \subset \mathcal{P}(\mathbb{N}).  A good example (and also a good starting point) is the collection of all cofinite subsets (sets whose complement in \mathbb{N} is finite).  Generally speaking, any \mathcal{F} that fits these four criteria  is called a proper filter on \mathbb{N}.  As the notation would suggest, if \emptyset \in \mathcal{F}, we would call \mathcal{F} = \mathcal{P}(\mathbb{N}) the improper filter on \mathbb{N}.

Put those Filters on the backburner for now.  There's one more (tentative) property of 'large sets' that makes all the numerical magic happen:
5.  For any A \subset \mathbb{N}, A is a large set if and only if A^C is not a large set,
This lets us put a strict order relation \prec on the equivalence classes in \mathbb{R}^\mathbb{N}.  We can say \{a_i\}_{i \in \mathbb{N}} \prec \{b_i\}_{i \in \mathbb{N}} iff  \{i \in \mathbb{N}: a_i < b_i\} is large.  By the usual trichotomy of < and property #4 of large sets, precisely one of these sets will be large for any pair \{a_i\}_{i \in \mathbb{N}}, \{b_i\}_{i \in \mathbb{N}} \in \mathbb{R}^\mathbb{N}:
\{i \in \mathbb{N}: a_i < b_i\}, i.e. \{a_i\}_{i \in \mathbb{N}} \prec \{b_i\}_{i \in \mathbb{N}}
\{i \in \mathbb{N}: a_i = b_i\}, i.e. \{a_i\}_{i \in \mathbb{N}} \sim \{b_i\}_{i \in \mathbb{N}}
\{i \in \mathbb{N}: a_i  > b_i\}, i.e. \{a_i\}_{i \in \mathbb{N}} \succ \{b_i\}_{i \in \mathbb{N}}
Which gives the same trichotomy with \prec.  We also get transitivity pretty easily:
If \{a_i\}_{i \in \mathbb{N}} \prec \{b_i\}_{i \in \mathbb{N}} \prec \{c_i\}_{i \in \mathbb{N}},
\{i \in \mathbb{N}: a_i < b_i\} and \{i \in \mathbb{N}: b_i < c_i\} are both large sets
Thus by #3 & #4,
\{i \in \mathbb{N}: a_i < b_i\}\cap \{i \in \mathbb{N}: b_i < c_i\} \subset \{i \in \mathbb{N}: a_i < c_i\} is a large set
\therefore\{a_i\} \prec \{b_i\} \prec \{c_i\} \Rightarrow \{a_i\} \prec \{c_i\}
Neat!  These wonky criteria ensure that any definition of 'large sets' will have a natural ordering on the equilvance classes of \mathbb{R}^\mathbb{N} it defines.  We even get a field structure when we use component-wise addition and multiplication:  If \{a_i\}_{i \in \mathbb{N}} \nsim \{0\}_{i \in \mathbb{N}} (i.e. a 'large' subset of \{a_i\}_{i \in \mathbb{N}} is nonzero) then \{a_i\}_{i \in \mathbb{N}} has a multiplicative inverse: define \{b_i\}_{i \in \mathbb{N}} such that

b_i = \left\{ \begin{array}{l} a_i^{-1} \mbox{ when } a_i \neq 0 \\ 0 \mbox{ when } a_i = 0 \end{array} \right.
Thus we have that \{a_i\}_{i \in \mathbb{N}} \times \{b_i\}_{i \in \mathbb{N}} = \{a_i \times b_i\}_{i \in \mathbb{N}} agrees with \{1\}_{i \in \mathbb{N}} on a 'large' set.

All right.  So a classification of the elements of \mathcal{P}(\mathbb{N}) into 'large' and 'not large' elements is guaranteed to produce a simply ordered field from \mathbb{R}^\mathbb{N} that is 'bigger' than \mathbb{R}.
So when do we get a good definition of 'large' already?

And now the magic happens.

Let's look at those filters again.  Note that when \mathcal{F}_1 \subset \mathcal{F}_2, we can consider \mathcal{F}_2 a 'refinement' of \mathcal{F}_1.  In this sense, \subset is a partial order relation on the set of filters over \mathbb{N}.

Theorem: A proper filter \mathcal{F} is maximal iff \forall A \in \mathcal{P}(\mathbb{N}), \, A \in \mathcal{F} \Leftrightarrow A^C \notin \mathcal{F}

What does this mean?  The filters that satisfy condition #5 are precisely the maximal ones.
Given their significance, maximal proper filters are also called ultrafilters.

Proof:
Part one: "maximal \Rightarrow #5" by way of  "\neg#5 \Rightarrow \neg maximal"
If A, A^C \notin \mathcal{F}, we must show there exists a filter \mathcal{F}' such that \mathcal{F}\subsetneq  \mathcal{F}'\subsetneq \mathcal{P}(\mathbb{N})
Let \mathcal{F}' = \{C \in  \mathcal{P}(\mathbb{N}): \exists B \in \mathcal{F}\mbox{ for which } A \cap B \subseteq C\}
(Now how do you show \mathcal{F}' is a proper filter? Run through that list of conditions...)
Part two: "#5 \Rightarrow maximal"
Suppose \mathcal{F}' satisfies \mathcal{F}\subsetneq  \mathcal{F}'
Thus \exists A \in \mathcal{F}' : A \notin \mathcal{F}
By #5, A^C \in \mathcal{F} \subsetneq \mathcal{F}'
Because \mathcal{F}' is a filter,  A, A^C \in \mathcal{F}' \Rightarrow A \cap A^C = \emptyset \in \mathcal{F}'
\therefore \neg \exists \mathcal{F}': \mathcal{F}\subsetneq  \mathcal{F}'\subsetneq \mathcal{P}(\mathbb{N})
 \Box
But where does this ultrafilter on \mathbb{N} come from?  We use Zorn's Lemma to pick an ultrafilter that contains the (proper, but definitely not maximal) filter of cofinite sets in \mathbb{N}.
(Zorn's Lemma does apply: every ascending chain of filters in \mathcal{P}(\mathbb{N}) has a maximal element, as an arbitrary union of nested proper filters is still a proper filter)
So this is where ^*\mathbb{R} starts looking pretty crazy... given that we need the axiom of choice to pick our ultrafilter for us.  But a canny reader may want to point out further: shouldn't there be a lot of different ultrafilters that we could get in this way?  Wouldn't a different ultrafilter produce a different ^*\mathbb{R}?

This is when even more crazy stuff happens.  Proving that all such 'versions' of ^*\mathbb{R} are isomorphic requires the Continuum Hypothesis.

Again, crazy set theory shenanigans.  The notion that you would need the continuum hypothesis to construct a system of numbers besides the ordinals... still boggles my mind.

Source: Robert Goldblatt's Lectures on the Hyperreals

No comments:

Post a Comment