notes-math-foundations-setsWithUndefinableElements

should we allow sets to have undefinable elements, e.g. the set of reals? if we do, should we treat them differently? e.g. i think Feferman sometimes speaks of using intuitionistic logic in such cases. Are difficulties with such sets related to Russell's paradox?

Elements precede sets

One viewpoint is that the elements are the 'real' things, and that sets are an invention to allow us to talk about common properties of types of elements.

As an aside, while reading the "Language and cognition" section of Brown's list of cultural universals, http://en.wikipedia.org/wiki/Cultural_universal , one sees "Abstraction in speech and thought" and "Logical notions of "and," "not," "opposite," "equivalent," "part/whole," "general/particular"". Should "grouping" and "number" be other ones? (see however http://en.wikipedia.org/wiki/Pirah%C3%A3_people ; who are also alleged to do without units of time). However, from this list one notes the absence of sets in general, and one suspects that if there is a universal notion of group, it starts in terms of putting individuals together, rather than starting from a notion of membership. Of course this suspicion as written here is entirely without evidence.

Note that in this section i will use "group" in its common meaning of collection/aggregation, rather than in its mathematical meaning of group axioms.

To put another way, we might start out saying, 'Bob is a human'. So there is a type 'human' and Bob is that type. And then we say "Bob is a member of tribe X". So there is a finite grouping 'tribe X' and Bob is a member of it. And we notice that we have certain operations that we can perform on any finite grouping, for example, we can take the union and intersection of pairs of groupings, we can ask for an enumeration of the member of a group, we can do maps and filters (e.g. apply a function to each member of any group and get a group of the results, apply a predicate to any group and discard the members that don't match to get a subset group). But perhaps the combination of these two concepts is somewhat unnatural; perhaps we can't always permit ourselves constructions of the form 'Consider the group consisting of all objects who are of type human', wherein we assume that each type is also a group.

This sort of construction seems to be at the root of Russell's paradox, where we say "ok let's allow ourselves to do that, and let's also the word 'set' for group", and then using the dubious construction we can say "consider the set of all sets', and then we can apply the filter 'given a set S of sets, consider the set of members of S which are not subsets of themselves'.

many solutions to Russell's paradox lie in prohibiting just this sort of dubious construction, e.g. when we say 'the set of all sets is not itself a set, it's a class' and similar for classes etc, this implies that there is no notion of 'group' possessing well-defined operations like those above for which we can take any type and call it a group. Afaict Quine's http://en.wikipedia.org/wiki/New_Foundations proceeds by allowing the set of all sets, but denying the universal validity of the naive filtering operation given above; filtering is restricted to stratified formulae ( http://en.wikipedia.org/wiki/New_Foundations#How_NF.28U.29_avoids_the_set-theoretic_paradoxes ).

see also predicativity. see also http://logic.harvard.edu/EFI_Feferman_IsCHdefinite.pdf , in which the general argument of 'maybe we are over-unifying things' is applied to a somewhat different immediate purpose, but with this sort of thing in the background.

also my friend DR had a good rejoinder to the argument, 'you should believe in the reality of uncountable cardinality because both rationals and surreals seem like reasonable constructions of magnitude, however they are disjoint until you allow them to be constructed with countably infinite steps, at which point both of them yield the reals'. His rejoined was, 'you should not believe in the reality of uncountable cardinality because the process you describe for constructing them is so fantastic that it makes the rationals and the surreals, which are obviously very different things as you point out, look the same'. This is another form of 'maybe we are over-unifying things'.

see also Mark Burgin's "named sets", sets where each element has a name: http://arxiv.org/abs/math/0403186

If this is the mistake, namely taking two primitive constructions (types and finite groups) and mistakenly unifying them into one thing (set), then perhaps this mistake may have been made elsewhere; and in general, perhaps we must be suspicious of other similar unifications; perhaps the modern mathematical foundational project of boiling down everything to as few primitives as possible may have gone too far when it attempted to go all the way to one thing (sets, and set-like things like classes). I don't mean to cast doubt on that project itself; rather, just to say that perhaps instead of being able to boil everything down to just one thing (sets), maybe we have to stop with a handful of things.

A remark in the introduction to http://homotopytypetheory.org/book/ leads to further thoughts in this direction. It says that mathematical sets are hard to work with because they may be inhomogenous, and so the structure of their members is opaque, whereas mathematical type theory gives each member a uniform structure, showing how it may be constructed (e.g. in programming terms i think they are saying that in what they call 'type theory', each type has a constructor that, if fed the proper arguments, can construct any member of the type).

Also related, these days we feel free to turn not only types into groups, but also to construct groups by selecting everything with a certain predicate. This allows us to consider dispensing with the philosophical idea of substances/natural types. That is, say we see an object X which possesses properties P1 and P2. We might make no distinction between saying "individual object X IS of type T, and T is a natural kind" and saying "define set S as the set of all things with property P2. Individual object X is a member of S.", and if we do not make such a distinction, we cannot allow the following reasoning: "individual object X IS of type T, and an essential property of type T is property P1; so P1 is an essential, not accidental, property of object X; whereas object X is only a MEMBER of set S; therefore (in the absence of further evidence) P2 is only an accidental property of object X". An example might be: Bob IS a human. An essential property of humans is that they are alive. Therefore being alive is an essential property of Bob. However, the property of having one's first name start with the letter B is only an accidental property of Bob."

Perhaps, if we should not permit ourselves to treat the any type as a grouping, we should also not permit ourselves to construct groupings out of any given property; in fact this seems required if we are not to allow the construction of a set of sets by way of the property of "being a set". Another way out wouuld be to say that "being an X" is not a property or at least is not the sort of property that one is allowed to use to construct groupings. Or perhaps we should allow the construction of groupings out of (ordinary) properties, but should distinguish between such groupings and 'real types' (introducing a notion of natural kinds; 'real types' are 'natural kinds'). In the latter case we can now distinguish between essential and accidental properties of objects (the former being those that result from essential attributes of their types).

This is also somewhat related to the idea of single inheritance with mixins in some OOP programming languages, which is sometimes justified as 'inheritance says what type of thing an object IS, mixins are merely things attached to it' (note that class-based OOP programming languages also already have a distinction between essential and accidental properties, namely, things that are inherited and cannot be overridden vs. things that are not inherited or which can be overridden; e.g. if a class has a method named M, then the property of having a method of that name is an essential property of all objects of this class; whereas the property of a field having a particular value is accidental (even if it is set that way in the superclass it can be overridden) (in some languages e.g. Java certain method definitions can be made essential properties if the method is declared 'final')).

see http://en.wikipedia.org/wiki/Essence , http://plato.stanford.edu/entries/substance/ , http://en.wikipedia.org/wiki/Substance_theory , http://en.wikipedia.org/wiki/Hylomorphic

In summary we have four concepts which may or may not be unified: types, homogenous types which may be construced in a certain way, groupings, predicates. Depending on which way we swing on the questions of unifying these things, we may or may not get ways of ordering the world such as natural kinds. Some ways of unifying them are logically forbidden; e.g. we cannot unify them all in the naive way without causing Russell's paradox (e.g. if we identify types and groupings to 'set' and allow all naive operations on any set, then we can construct the set of all sets as the type 'set', and we can then apply naive filtering to get the set of all sets which are not subsets of themselves; or, if we allow the construction of a grouping for any predicate whatsoever, including predicates composed of naive operations, then we can construct the set of all sets as the set defined by the predicate 'isa set' and then we can get the set of all sets which are not subsets of themselves by the predicate 'isa set AND is not a subset of itself').

This all also seems related to the desire to have a way to talk only of sets with definable elements. Which is somewhat but perhaps not completely related to constructive mathematics and computable mathematics, because perhaps there are still nonconstructive proofs over objects with totally definable parts (e.g. perhaps you can prove that a natural number with a certain property must exist without being able to say which natural number it is).

This way of thinking may lead to explanations of the counterintuitiveness of some solutions to the major set-theoretic paradoxes (Russell's, Burali-Forti's of the largest ordinal, Cantor's of the largest cardinal; see also http://en.wikipedia.org/wiki/Paradoxes_of_set_theory). The standard solutions to Russell's appear to be:

there is no set of all sets

ZFC set theory.

This seems paradoxical if we think of 'set' as identical with the very concept of (a) as a type, or (b) as a grouping. Clearly, as a type, a 'class' is almost the same as 'sets'; both of these are opaque groupings to which we can apply the same operations of filtering, unioning, etc, and worse, all sets are classes. So it seems wrong to separate them. But really, neither the notion of a set nor the notion of a class are 'meant to' coincide with either of the notions (a) or (b).

Rather, although sets and classes are PARTICULAR types and PARTICULAR groupings, they do not coincide with the very concept of these notions. It seems like they should, because we have been assuming that types are groupings, and surely "a grouping" is a type, so let's call the type of groupings by the name "set" and, and then consider the grouping of sets, that is, the set of all sets. But, as we argue above, we cannot assume that any type is also a grouping, so we cannot assume that "all sets" is a grouping.

However, this is still unsatisfactory because classes are groupings too, so we must recognize that "set" is not even the type of groupings. In fact, what mainstream mathematics seems to be implicitly doing is to continue to assume that any type is also a grouping (e.g. if you say "the real numbers" or "sets" or "classes", we implicitly assume that there is some set or class or similar entity corresponding to this type, and that we can do operations like filtering on it); but to reject naive filtering on groupings. Instead, in order to filter a set, you must prove via the ZFC axioms that you are allow to. Which is rather similar to just imposing a stratification on predicates as in Quine's New Foundations.

This is unintuitive because sets are often presented as if they are the type of groupings.

See also http://en.wikipedia.org/wiki/Class_%28set_theory%29 , which presents class as the type of groupings.

there is a set of all sets, but we cannot filter any set by unstratified predicates

Quine's New Foundations.

This seems paradoxical because given any finite grouping of groupings, we can surely say for each of its members, 'is this grouping a member of itself?'. But here the notion of 'set' is meant to correspond with the notion of 'type', but we cannot say that any type is a grouping. So we cannot always apply the same grouping operations such as naive filtering.

Review of some things which we may not be able to unify

If we believe in natural kinds, then not every grouping is a type, and we can't allow any predicate to define a type.

If we define grouping by saying we can apply naive filtering by any predicate, then not every type can be a grouping, and furthermore, we can't allow any predicate to define a grouping.

...and if not every type is a grouping, then we must have a way to say "P is a necessary property of any object of type T" without saying "for all objects of type T", because the grouping "all objects of type T" does not necessarily exist.

If every type is a grouping, then we can't apply naive filtering by any predicate.

We might want to say that certain syntactically valid predicates are not necessarily real (stratification in New Foundations, predicativity). Then we can allow ourselves to apply naive filtering but only after the existence of the predicate has been proven.

Relevance to the argument for the reality of the reals

One argument for the reality of the reals is as follows:

The above thinking suggests that perhaps the step "the real numbers are a grouping" is flawed. The real numbers might be a real 'type' without being a real 'grouping', intuitively meaning that although "pi IS a real number", and we can talk about properties necessarily present in real numbers, e.g. "given a real number, any other real number is either less than or greater than it", but we can't necessarily construct the concept of "all real numbers". This is confusing because using traditional modern notation we would assert necessary property of real numbers using the 'forall' quantifier, but in the proposed mode of thinking we can't quantify over the collection of reals because there may be no such collection.