The next step towards non-standard analysis (after defining enlargements in NSA: introduction and construction) is to enlarge a ZF set theory. There are various foundational problems here (due to the need to transcend cardinality: "the set of all sets" is not a well-formed expression by any means; ZF set theory can only give you a class of these sets). There are 2 ways to get around this. The first is to use some internal model of ZF (inside ZF); this model has a universe which is a set (in the external model), so everything works as expected. The second is trickier, and uses a hierarchy of models, based on bounding cardinalities.

We skip all these tedious technical troubles, noting only that they're all resolvable, and proceed to examining the relationship between objects in the Real World (the model of ZF set theory) and objects in its enlargement, known as the non-standard world.

First, note that our language contains names for everything in the real world. Every (standard!) set has a name. ZF set theory defines a predicate ε (is an element of) which tests if a set x is an element of a set A. So the enlargement will also give an interpretation for this predicate. We call this predicate *(is an element of); "*" is pronounced "pseudo" (or, less commonly, "non-standard"), and indicates we're referring to the non-standard interpretation. Similarly, we can prefix (almost) anything with "*" or "pseudo-" to indicate we're referring to the non-standard world.

By the axiom of extensionality, two sets are equal iff they have the same elements. So we know that in the non-standard world, two pseudo-sets are equal iff they have the same pseudo-elements1. Call the collection of pseudo-elements of a pseudo-set a its content, a^. It is easy to show that contents respect the rules of set theory with regard to intersection, union, and difference (e.g. the content of the intersection of pseudo-sets A and B is the intersection of their contents).

Now suppose A is a (standard) set. Then A is a subset of its content A^: for every (standard!) x in A, we have to prove x *-in A. Here's why: write down the sentence "x in A" (in the standard language; note that x and A have names there, since they're standard). The sentence is true in the standard world. By the transfer principle, it's true in the non-standard world. Interpreting the sentence there, we see that x is a pseudo-element of A.

Note:

By NSA: Robinson's "overspill" lemma, A equals A^ iff A is finite.