Axiom schema of specification

From Wikipedia, the free encyclopedia

In axiomatic set theory and the branches of logic, mathematics, and computer science that use it, the axiom schema of specification, or axiom schema of separation, or axiom schema of restricted comprehension, is a schema of axioms in Zermelo-Fraenkel set theory. It is also called the axiom schema of comprehension, although that term is also used for unrestricted comprehension, discussed below.

Suppose P is any predicate in one variable that doesn't use the symbol B. Then in the formal language of the Zermelo-Fraenkel axioms, the axiom schema reads:

\forall A, \exist B, \forall C: C \in B \iff C \in A \and P(C)

or in words:

Given any set A, there is a set B such that, given any set C, C is a member of B if and only if C is a member of A and P holds for C.

Note that there is one axiom for every such predicate P; thus, this is an axiom schema.

To understand this axiom schema, note that the set B must be a subset of A. Thus, what the axiom schema is really saying is that, given a set A and a predicate P, we can find a subset B of A whose members are precisely the members of A that satisfy P. By the axiom of extensionality this set is unique. We usually denote this set using set-builder notation as {CA : P(C)}. Thus the essence of the axiom is:

Every subclass of a set that is defined by a predicate is itself a set.

The axiom schema of specification is characteristic of systems of axiomatic set theory related to the usual set theory ZFC, but does not usually appear in radically different systems of alternative set theory. For example, New Foundations and positive set theory use different restrictions of the axiom of comprehension of naive set theory. The Alternative Set Theory of Vopenka makes a specific point of allowing proper subclasses of sets, called semisets. Even in systems related to ZFC, this scheme is sometimes restricted to formulas with bounded quantifiers, as in KPU.

Contents

[edit] Relation to the axiom schema of replacement

The axiom schema of separation can almost be derived from the axiom schema of replacement.

First, recall this axiom schema:

\forall A, \exist B, \forall C: C \in B \iff \exist D: D \in A \and C = F(D)

for any functional predicate F in one variable that doesn't use the symbols A, B, C or D. Given a suitable predicate P for the axiom of specification, define the mapping F by F(D) = D if P(D) is true and F(D) = E if P(D) is false, where E is any member of A such that P(E) is true. Then the set B guaranteed by the axiom of replacement is precisely the set B required for the axiom of specification. The only problem is if no such E exists. But in this case, the set B required for the axiom of separation is the empty set, so the axiom of separation follows from the axiom of replacement together with the axiom of empty set.

For this reason, the axiom schema of separation is often left out of modern lists of the Zermelo-Fraenkel axioms. However, it's still important for historical considerations, and for comparison with alternative axiomatisations of set theory, as can be seen for example in the following sections.

[edit] Unrestricted comprehension

The axiom schema of unrestricted comprehension reads:

\exist B, \forall C, C \isin B \harr P \left(C\right)

that is:

There exists a set B whose members are precisely those objects that satisfy the predicate P.

This set B is again unique, and is usually denoted as {C : P(C)}.

This axiom schema was tacitly used in the early days of naive set theory, before a strict axiomatisation was adopted. Unfortunately, it leads directly to Russell's paradox by taking P(C) to be (C is not in C). Therefore, no useful axiomatisation of set theory can use unrestricted comprehension, at least not with classical logic.

Accepting only the axiom schema of specification was the beginning of axiomatic set theory. Most of the other Zermelo-Fraenkel axioms (but not the axiom of extensionality or the axiom of regularity) then became necessary to serve as an additional replacement for the axiom schema of comprehension; each of these axioms states that a certain set exists, and defines that set by giving a predicate for its members to satisfy.

[edit] In NBG class theory

In von Neumann-Bernays-Gödel set theory, a distinction is made between sets and classes. A class C is a set if and only if it belongs to some class E. In this theory, there is a theorem schema that reads:

\exist D: \forall C, C \isin D \harr \left(P\left(C\right) \and \exist E, C \isin E \right)

that is:

There is a class D such that any class C is a member of D if and only if C is a set that satisfies P.

This theorem schema is itself a restricted form of comprehension, which avoids Russell's paradox because of the requirement that C be a set. Then specification for sets themselves can be written as a single axiom:

\forall D, \forall A, \left(\exist E, A \isin E\right) \rarr \exist B, \left(\exist E, B \isin E \right) \and \forall C, C \isin B \harr \left(C \isin A \and C \isin D \right)

that is:

Given any class D and any set A, there is a set B whose members are precisely those classes that are members of both A and D;

or even more simply:

The intersection of a class D and a set A is itself a set B.

In this axiom, the predicate P is replaced by the class D, which can be quantified over.

[edit] In second order logic

In second-order logic, we can quantify over predicates, and the axiom schema of specification becomes a simple axiom. This is much the same trick as was used in the NBG axioms of the previous section, where the predicate was replaced by a class that was then quantified over.

[edit] In Quine's New Foundations

In the New Foundations approach to set theory pioneered by W.V.O. Quine, the axiom of comprehension for a given predicate takes the unrestricted form, but the predicates that may be used in the schema are themselves restricted. The predicate (C is not in C) is forbidden, because the same symbol C appears on both sides of the membership symbol (and so at different "relative types"); thus, Russell's paradox is avoided. However, by taking P(C) to be (C = C), which is allowed, we can form a set of all sets. For details, see stratification.

In other languages