In mathematics, a classification theorem answers the classification problem "What are the objects of a given type, up to some equivalence?". It gives a non-redundant enumeration: each object is equivalent to exactly one class. A few issues related to classification are the following. The equivalence problem is "given two objects, determine if they are equivalent". A complete set of invariants, together with which invariants are solves the classification problem, and is often a step in solving it. A (together with which invariants are realizable) solves both the classification problem and the equivalence problem. A canonical form solves the classification problem, and is more data: it not only classifies every class, but provides a distinguished (canonical) element of each class. There exist many classification theorems in mathematics, as described below. Classification of Euclidean plane isometries Classification theorems of surfaces Classification of two-dimensional closed manifolds Enriques–Kodaira classification of algebraic surfaces (complex dimension two, real dimension four) Nielsen–Thurston classification which characterizes homeomorphisms of a compact surface Thurston's eight model geometries, and the geometrization conjecture Berger classification Classification of Riemannian symmetric spaces Classification of 3-dimensional lens spaces Classification of manifolds Classification of finite simple groups Classification of Abelian groups Classification of Finitely generated abelian group Classification of Rank 3 permutation group Classification of 2-transitive permutation groups Artin–Wedderburn theorem — a classification theorem for semisimple rings Classification of Clifford algebras Classification of low-dimensional real Lie algebras Bianchi classification ADE classification Langlands classification Finite-dimensional vector spaces (by dimension) Rank–nullity theorem (by rank and nullity) Structure theorem for finitely generated modules over a principal ideal domain Jordan normal form Sylvester's law of