The Kripke–Platek set theory with urelements (KPU) is an axiom system for set theory with urelements, based on the traditional (urelement-free) Kripke–Platek set theory. It is considerably weaker than the (relatively) familiar system ZFU. The purpose of allowing urelements is to allow large or high-complexity objects (such as the set of all reals) to be included in the theory's transitive models without disrupting the usual well-ordering and recursion-theoretic properties of the constructible universe; KP is so weak that this is hard to do by traditional means.
The usual way of stating the axioms presumes a two sorted first order language
L*
\in
p,q,r,...
a,b,c,...
x,y,z,...
The letters for sets may appear on both sides of
\in
p\ina
b\ina
The statement of the axioms also requires reference to a certain collection of formulae called
\Delta0
\Delta0
\in
\neg
\wedge
\vee
\forallx\ina
\existsx\ina
a
The axioms of KPU are the universal closures of the following formulae:
\forallx(x\ina\leftrightarrowx\inb) → a=b
\phi(x)
\existsa.\phi(a) → \existsa(\phi(a)\wedge\forallx\ina(\neg\phi(x)))
\existsa(x\ina\landy\ina)
\existsa\forallc\inb.\forally\inc(y\ina)
\Delta0
\phi(x)
\existsa\forallx(x\ina\leftrightarrowx\inb\wedge\phi(x))
\Delta0
\phi(x,y)
\forallx\ina.\existsy.\phi(x,y) → \existsb\forallx\ina.\existsy\inb.\phi(x,y)
\existsa(a=a)
Technically these are axioms that describe the partition of objects into sets and urelements.
\forallp\foralla(p ≠ a)
\forallp\forallx(x\notinp)
KPU can be applied to the model theory of infinitary languages. Models of KPU considered as sets inside a maximal universe that are transitive as such are called admissible sets.