# Stratification (mathematics)

{{ safesubst:#invoke:Unsubst||$N=Unreferenced |date=__DATE__ |$B=
{{#invoke:Message box|ambox}}
}}
**Stratification** has several usages in mathematics.

## In mathematical logic

In mathematical logic, **stratification** is any consistent assignment of numbers to predicate symbols guaranteeing that a unique formal interpretation of a logical theory exists. Specifically, we say that a set of clauses of the form is stratified if and only if
there is a stratification assignment S that fulfills the following conditions:

- If a predicate P is positively derived from a predicate Q (i.e., P is the head of a rule, and Q occurs positively in the body of the same rule), then the stratification number of P must be greater than or equal to the stratification number of Q, in short .
- If a predicate P is derived from a negated predicate Q (i.e., P is the head of a rule, and Q occurs negatively in the body of the same rule), then the stratification number of P must be greater than the stratification number of Q, in short .

The notion of stratified negation leads to a very effective operational semantics for stratified programs in terms of the stratified least fixpoint, that is obtained by iteratively applying the fixpoint operator to each *stratum* of the program, from the lowest one up.
Stratification is not only useful for guaranteeing unique interpretation of Horn clause
theories. It has also been used by W.V. Quine (1937) to address Russell's paradox, which undermined Frege's central work *Grundgesetze der Arithmetik* (1902).

## In set theory

In New Foundations (NF) and related set theories, a formula in the language of first-order logic with equality and membership is said to be
**stratified** if and only if there is a function
which sends each variable appearing in (considered as an item of syntax) to
a natural number (this works equally well if all integers are used) in such a way that
any atomic formula appearing in satisfies and any atomic formula appearing in satisfies .

It turns out that it is sufficient to require that these conditions be satisfied only when
both variables in an atomic formula are bound in the set abstract
under consideration. A set abstract satisfying this weaker condition is said to be
**weakly stratified**.

The stratification of New Foundations generalizes readily to languages with more predicates and with term constructions. Each primitive predicate needs to have specified required displacements between values of at its (bound) arguments in a (weakly) stratified formula. In a language with term constructions, terms themselves need to be assigned values under , with fixed displacements from the values of each of their (bound) arguments in a (weakly) stratified formula. Defined term constructions are neatly handled by (possibly merely implicitly) using the theory of descriptions: a term (the x such that ) must be assigned the same value under as the variable x.

A formula is stratified if and only if it is possible to assign types to all variables appearing in the formula in such a way that it will make sense in a version TST of the theory of types described in the New Foundations article, and this is probably the best way to understand the stratification of New Foundations in practice.

The notion of stratification can be extended to the lambda calculus; this is found in papers of Randall Holmes.

## In singularity theory

In singularity theory, there is a different meaning, of a decomposition of a topological space *X* into disjoint subsets each of which is a topological manifold (so that in particular a *stratification* defines a partition of the topological space). This is not a useful notion when unrestricted; but when the various **strata** are defined by some recognisable set of conditions (for example being locally closed), and fit together manageably, this idea is often applied in geometry. Hassler Whitney and René Thom first defined formal conditions for stratification. See topologically stratified space.

## In statistics

See stratified sampling.