(This uses the notation used by Noether in her Lagrange's theorem writeup)
Define the (left) cosets of **H** in **G** as all the distinct sets *g***H**, where *g* is an element of **G**. Note that any 2 cosets have the same number of elements: multiplication (on the left) by *gh*^{-1} performs this 1-1 mapping from *h***H** to *g***H**. We claim that the cosets partition **G**.

It is clear that every element of **G** is in some coset. Indeed, since the identity element *e* is in **H**, if *g* is in **G** then it is also in *g***H**, which is a coset.

To prove the theorem, all that remains is to show that for every *g,g'* in **G**, either *g***H**=*g'***H** or the 2 sets are disjoint. So suppose the intersection of the sets is non-empty, and contains some element *k*. Then *k=g h = g' h'* for some *h,h'* in **H**, so *g'*^{-1}*g* = *h' h*^{-1} is in **H**. But this means that *every* element *g' j* of *g'***H** (*j* in **H**) may be expressed as *g g*^{-1}g' j, and since *g*^{-1}g' j is in **H**, this shows *g' j* is in *g***H** too. Switching rôles of *g* and *g'* proves equality.