  The Micali-Vazirani (MV) algorithm for maximum cardinality matching in
general graphs, which was published in 1980 \cite{MV}, remains to this day the
most efficient known algorithm for the problem.
  This paper gives the first complete and correct proof of this algorithm.
Central to our proof are some purely graph-theoretic facts, capturing
properties of minimum length alternating paths; these may be of independent
interest. An attempt is made to render the algorithm easier to comprehend.
