An "n-simplex" for a nonnegative integer n is a generalized triangle: A 0-simplex is a point, a 1-simplex is a closed interval, a 2-simplex is a (filled) triangle, and in general an n-simplex is the convex hull of the n+1 standard basis vectors of (n+1)-dimensional Euclidean space R^(n+1). These n+1 standard basis vectors are the "vertices" of the n-simplex. A k-dimensional face F of an n-simplex S is the k-simplex defined as the convex hull of any k+1 vertices of S. Using any finite collection of n-simplices for various n, most reasonably nice topological spaces can be constructed. A finite "simplicial complex" is just the finite union any collection of n-simplices for various n, under the condition that any two of them intersect in a common k-dimensional face of both of them. Suppose X is a topological space constructed as a finite simplicial complex. Basic invariants of X are its homology groups, one group H_j(X) for each nonnegative integer j up through the dimension of the highest dimensional simplex of X. Each of these groups will turn out to be a finitely generated abelian group. That is, H_j(X) = Z^n + Z_n_1 + ... + Z_n_r where the nonnegative integers n, n_1, ..., n_r (and r) depend on X and j (and we can assume n_1 | n_2 | ... n_r). These groups H_j(X) document the number and type of "holes" that the topological space X has in dimension h. The jth *cohomology* groups H^j(X) have an added feature: if x ∊ H^j(X) and y ∊ H^k(X), these cohomology classes *multiply together* to give a (j+k)-dimensional cohomology class xy ∊ H^(j+k)(X) and this multiplication distributes over the addition in the individual groups. So the cohomology groups all together form a graded ring. Any two very different simplicial complexes may happen to be topologically equivalent, and when they are, their cohomology rings will be isomorphic as graded rings. Particularly interesting topological spaces are the compact surfaces: The orientable ones are the sphere, the torus, and the surface of genus g for any g ≥ 2 (the surface of a button with g holes in it). The non-orientable ones are the projective plane, the Klein bottle, and the "non-orientable surface of genus g", which is the connected sum of g projective planes. Each surface has its own distinct cohomology ring. Any surface could also have a finite number h of holes punched in it, so it ends up with a boundary consisting of h simple closed curves. These surfaces with boundary will also each have their own cohomology rings. It would be interesting to have a table somewhere of all the cohomology rings of all such surfaces. ... And then one can take cartesian products of various of these surfaces and compute their cohomology rings as well ... —Dan