\(\sc{PERFECT} \ \sc{MATCHING}\ \) Given a finite bipartite graph \(G \), does there exist a perfect matching in \(G \)?  (\(G\) is bipartite just in case its vertices can be partitioned into two disjoints sets \(U\) and \(V\) such that all of its edges \(E \) connect a vertex in \(U\) to one in \(V\).   A matching is a subset of edges  \(M \subseteq E\) no two members of which share a common vertex.  \(M\) is perfect if it matches all vertices.)