 A topos as defined above can be understood as a Cartesian closed category for which the notion of subobject of an object has an elementary or first-order definition.This notion, as a natural categorical abstraction of the notions of subset of a set, subgroup of a group, and more generally subalgebra of any algebraic structure, predates the notion of topos.It is definable in any category, not just topoi, in second-order language, i.e.