Search anything:

Hall's Marriage Theorem

Binary Tree book by OpenGenus

Open-Source Internship opportunity by OpenGenus for programmers. Apply now.

What is Hall's Marriage?

Hall's Marriage Theorem is a key concept in graph theory, proven by Philip Hall in 1935. It helps solve the marriage problem: given a set of girls and boys, under what conditions can each girl be matched to a boy she knows? This theorem is useful in various fields, such as job assignments and creating Latin squares.

The Marriage Problem

Imagine a group of girls, each knowing several boys. The goal is to find out if each girl can be matched to a boy she knows, so that every girl gets a unique boy. We can represent this situation using a special kind of graph called a bipartite graph.

Graphical Representation

A bipartite graph is a graph where the set of vertices (points) is divided into two groups. In our case, one group represents the girls (V1) and the other group represents the boys (V2). An edge (line) connects a girl to a boy if she knows him. The problem is to see if we can match each girl to a different boy she knows

To visualize, consider a bipartite graph G=(V1,V2)

  1. V1 represents the set of girls
  2. V2 represents the set of boys
  3. An edge exists between a girl in V1 and a boy in V2 if the girl knows the boy

  4. 1__RdqQ_IOltfGzP7hhpXD2g

    Theorem: In a bipartite graph 𝐺=(X,Y), there is a perfect matching (where each girl is matched to one boy she knows) if and only if for every group of girls, the number of boys they collectively know is at least as large as the number of girls in that group.

    The goal is to determine if there is a perfect matching, meaning every girl can be paired with a unique boy she knows.

    In Mathematical terms,


    Example Problem

    Let's see an example:

    Seven students Bharat (B), Daksh (D), Ferhan (F), Juhi (J), Kiran (K), Leela (L), and Maria (M) are applying for seven different job positions: accountant (a), consultant (c), editor (e), programmer (p), reporter (r), secretary (s), and teacher (t). Each student has applied for some jobs:

    • B:{c,e}
    • D:{a,c,p,s,t}
    • F:{c,r}
    • J:{c,e,r}
    • K:{a,e,p,s}
    • L:{e,r}
    • M:{p,r,s,t}


    To determine if every student can get a job they applied for, we use Hall's Theorem. Let's analyze the sets:

    1.Consider the subset {B,F,J,L}. The jobs they collectively applied for are {c, e, r}.
    2. The number of jobs in this set is 3.
    3. The number of students in the subset is 4.

    According to Hall's Theorem, for each subset of girls, the number of boys they know should be at least as large as the number of girls. Here, ∣𝑁({𝐵,𝐹,𝐽,𝐿})∣=3 and ∣{𝐵,𝐹,𝐽,𝐿}∣=4. Since 3 < 4, the condition is not met.

    This means it is not possible to hire all seven students for the positions they applied for. Not all subsets of girls have a corresponding number of boys that meet the theorem's condition, indicating that a perfect matching is not possible in this scenario.

    Applications of Hall's Marriage Theorem

    Hall's Theorem can be used to solve practical problems like:

    1. Job Assignments: Assigning workers to jobs they are qualified for. We create a bipartite graph where one set represents workers and the other set represents jobs. An edge exists between a worker and a job if the worker is qualified for it. Hall's Theorem helps us find if a perfect job assignment is possible.
      • Example: Suppose a company has workers and jobs, and each worker is qualified for certain jobs. We use Hall's Theorem to check if we can assign each worker to a job they are qualified for.
    2. Creating Latin Squares: A Latin square is an n×n grid filled with n symbols, each appearing exactly once in each row and column. Hall's Theorem helps in constructing such squares.
    3. Scheduling Problems: Scheduling can often be framed as a bipartite graph problem, where tasks need to be assigned to time slots or resources. Hall's Theorem helps ensure that the scheduling is feasible.
    4. Resource Allocation: In resource allocation problems, resources (like classrooms, machines, or computers) need to be assigned to users or tasks. The bipartite graph representation and Hall's Theorem can help determine if a perfect allocation is possible.

    5. Conclusion

      Hall's Marriage Theorem is a powerful tool in graph theory that provides a clear and concise condition for the existence of perfect matching in bipartite graphs. By ensuring that the number of neighbors for any subset of vertices in one partition is at least as large as the subset itself, it guarantees the possibility of matching every vertex in one partition with a unique vertex in the other partition. This theorem has broad applications in various practical problems, making it an essential concept in both theoretical and applied mathematics. Whether for job assignments, scheduling, or constructing combinatorial designs like Latin squares, Hall's Theorem offers a simple yet effective solution to complex matching problems.

      Additionally, Hall's Theorem is a cornerstone for more advanced topics in combinatorics and optimization, providing foundational insights into how systems with specific constraints can achieve balance and efficiency. Understanding this theorem not only aids in solving practical problems but also enriches one's comprehension of the elegant structures within mathematics.

      Related Topics:

      Hungarian Maximum Matching Algorithm
      Maximum Matching

Hall's Marriage Theorem
Share this