 Russell’s response to the  paradox  came between 1903 and 1908 with the development of his  theory of types.  It was clear to Russell that some form of restriction needed to be placed on the original comprehension (or abstraction) axiom of naïve set theory, the axiom that formalizes the intuition that any coherent condition (or property) may be used to determine a set. Russell’s basic idea was that reference to sets such as the so-called Russell set (the set of all sets that are not members of themselves) could be avoided by arranging all sentences into a hierarchy, beginning with sentences about individuals at the lowest level, sentences about sets of individuals at the next lowest level, sentences about sets of sets of individuals at the next lowest level, and so on. Using a vicious circle principle similar to that adopted by the mathematician Henri Poincaré, together with his so-called “no class” theory of classes (in which class terms gain meaning only when placed in the appropriate context), Russell was able to explain why the unrestricted comprehension axiom fails:  propositional functions,  such as the function “x is a set,” may not be applied to themselves since self-application would involve a vicious circle. As a result, all objects for which a given condition (or predicate) holds must be at the same level or of the same “type.” Sentences about these objects will then always be higher in the hierarchy than the objects themselves.