Given a surface, one can consider the set of free homotopy classes of oriented closed curves (this is the set of equivalence classes of maps from the circle into the surface, where two such maps are equivalent if the corresponding curves can be deformed one into the other.) Given a free homotopy class one can ask what is the minimum number of times (counted with multiplicity) in which a curve in that class intersects itself. This is the minimal self-intersection number of the free homotopy class. Analogously, given two classes, one can ask what is the minimum number of times representatives of these classes intersect. This is the minimal intersection number of these two classes.