Naive set theory

When people started to talk about sets, mostly in the 19th century, they did this using natural language. It uses many of the concepts already known from discrete mathematics; for example Venn diagrams to show which elements are contained in a set, or Boolean algebra. It is powerful enough for many areas of contemporary mathematics and engineering. The term naive set theory is used for this kinds of set theory. It is usually contrasted with axiomatic set theory.
Naive set theory leads to a number of problems:
There is a problem though: All the problems above can only be shown to be problems when axioms can be used to describe sets and their properties.
Richard Dedekind (1831-1916) discovered this and started a new set theory, in 1888. In his set theory, there are axioms about sets. His set theory is not good enough though:
Ernst Zermelo published a set theory in 1908. It uses axioms to define sets, and very much limits the ways in which sets can be made. Together with Abraham Fraenkel he is one of the creators of Zermelo–Fraenkel set theory, the set theory that was used for the much of the 20th century. Because of Gödel's incompleteness theorems this can only be proved for finite sets, though.
When teaching about sets in schools, naive set theory and the definition of Georg Cantor are sometimes used.