# Class logic

Class logic is a logic in its broad sense, whose objects are called classes. In a narrower sense, one speaks of a class logic only if classes are described by a property of their elements. This class logic is thus a generalization of set theory, which allows only a limited consideration of classes.

## Class logic in the strict sense

The first class logic in the strict sense was created by Giuseppe Peano in 1889 as the basis for his arithmetic (Peano Axioms). He introduced the class term, which formally correctly describes classes through a property of their elements. Today the class term is denoted in the form {x|A(x)}, where A(x) is an arbitrary statement, which all class members x meet. Peano axiomatized the class term for the first time and used it fully. Gottlob Frege also tried establishing the arithmetic logic with class terms in 1893; Bertrand Russell discovered a conflict in it in 1902 which became known as Russell's paradox. As a result, it became generally known that you can not safely use class terms.
To solve the problem, Russell developed his type theory from 1903 to 1908, which allowed only a restricted use of class terms. Among mathematicians, Russell's type theory was superseded by an alternative axiomatization of set theory initiated by Ernst Zermelo. This axiomatization is not a class logic in the narrower sense, because in its present form (Zermelo-Fraenkel or NBG) it does not axiomatize the class term, but uses it only in practice as a useful notation. Willard Van Orman Quine described a set theory New Foundations (NF) in 1937, based on a theory of types which was intended as an alternative to Zermelo-Fraenkel. In 1940 Quine advanced NF to Mathematical Logic (ML). Since the antinomy of Burali-Forti was derived in the first version of ML, Quine clarified ML, retaining the widespread use of classes, and took up a proposal by Hao Wang introducing in 1963 in his theory of {x|A(x)} as a virtual class, so that classes are although not yet full-fledged terms, but sub-terms in defined contexts.
After Quine, Arnold Oberschelp developed the first fully functional modern axiomatic class logic starting in 1974. It is a consistent extension of predicate logic and allows the unrestricted use of class terms (such as Peano). It uses all classes that produce antinomies of naive set theory as a term. This is possible because the theory assumes no existence axioms for classes. It presupposes in particular any number of axioms, but can also take those and syntactically correct to formulate in the traditionally simple design with class terms. For example, the Oberschelp set theory developed the Zermelo–Fraenkel set theory within the framework of class logic. Three principles guarantee that cumbersome ZF formulas are translatable into convenient classes formulas; guarantee a class logical increase in the ZF language they form without quantities axioms together with the axioms of predicate logic an axiom system for a simple logic of general class.
The principle of abstraction (Abstraktionsprinzip) states that classes describe their elements via a logical property:
       $\forall y\colon (y\in \{x\mid A(x)\}\iff A(y))$
The principle of extensionality (Extensionalitätsprinzip ) describes the equality of classes by matching their elements and eliminates the axiom of extensionality in ZF:
       $A=B\iff \forall x\colon (x\in A\iff x\in B)$
The principle of comprehension (Komprehensionsprinzip) determines the existence of a class as an element:
       $\{x\mid A(x)\}\in B\iff \exists y\colon (y=\{x\mid A(x)\}\land y\in B)$