
- Discrete Mathematics - Home
- Discrete Mathematics Introduction
- Mathematical Statements and Operations
- Atomic and Molecular Statements
- Implications
- Predicates and Quantifiers
- Sets
- Sets and Notations
- Relations
- Operations on Sets
- Venn Diagrams on Sets
- Functions
- Surjection and Bijection Functions
- Image and Inverse-Image
- Mathematical Logic
- Propositional Logic
- Logical Equivalence
- Deductions
- Predicate Logic
- Proof by Contrapositive
- Proof by Contradiction
- Proof by Cases
- Rules of Inference
- Group Theory
- Operators & Postulates
- Group Theory
- Algebric Structure for Groups
- Abelian Group
- Semi Group
- Monoid
- Rings and Subring
- Properties of Rings
- Integral Domain
- Fields
- Counting & Probability
- Counting Theory
- Combinatorics
- Additive and Multiplicative Principles
- Counting with Sets
- Inclusion and Exclusion
- Bit Strings
- Lattice Path
- Binomial Coefficients
- Pascal's Triangle
- Permutations and Combinations
- Pigeonhole Principle
- Probability Theory
- Probability
- Sample Space, Outcomes, Events
- Conditional Probability and Independence
- Random Variables in Probability Theory
- Distribution Functions in Probability Theory
- Variance and Standard Deviation
- Mathematical & Recurrence
- Mathematical Induction
- Formalizing Proofs for Mathematical Induction
- Strong and Weak Induction
- Recurrence Relation
- Linear Recurrence Relations
- Non-Homogeneous Recurrence Relations
- Solving Recurrence Relations
- Master's Theorem
- Generating Functions
- Graph Theory
- Graph & Graph Models
- More on Graphs
- Planar Graphs
- Non-Planar Graphs
- Polyhedra
- Introduction to Trees
- Properties of Trees
- Rooted and Unrooted Trees
- Spanning Trees
- Graph Coloring
- Coloring Theory in General
- Coloring Edges
- Euler Paths and Circuits
- Hamiltonion Path
- Boolean Algebra
- Boolean Expressions & Functions
- Simplification of Boolean Functions
- Advanced Topics
- Number Theory
- Divisibility
- Remainder Classes
- Properties of Congruence
- Solving Linear Diophantine Equation
- Useful Resources
- Quick Guide
- Useful Resources
- Discussion
Coloring Theory in General in Discrete Mathematics
The graph coloring problem is useful in graph theory and discrete mathematics. Graph coloring ensures that no two adjacent vertices will have the same color. This technique has applications across diverse fields, from scheduling problems to frequency assignment for radio stations.
In this chapter, we will explain the general principles of coloring theory in discrete mathematics.
What is Graph Coloring?
Graph coloring usually means assigning colors to the vertices of a graph so that no two adjacent vertices share the same color. There are a few key terms we must understand −
- Vertex Coloring − This gives assigning colors to each vertex in the graph. For a coloring to be "proper," no two connected (or adjacent) vertices should have the same color.
- Chromatic Number − The chromatic number, represented as χ(G). It is the smallest number of colors needed to properly color a graph G. So, if a graph can be colored with three colors but not with two, its chromatic number is three.
- Planar Graphs − Planar graphs are graphs that can be drawn on a plane. It does not have any of their edges crossing. This characteristic often affects the chromatic number of a graph.
The Four-Color Theorem
The Four-Color theorem states that any planar graph can be properly colored using no more than four colors. This means that if we have a map of countries, states, or regions, we can color it with four colors so that no two adjacent regions share the same color.

This theorem has an interesting history. It is simple to state, but the proof is complex and was only achieved with the help of computer verification. While the theorem might seem limited to cartography. It has much broader implications in graph theory. For planar graphs.
Real-World Applications of Graph Coloring
Graph coloring has a large variety of applications in real-life. For instance, when we are going to scheduling classes, assigning frequencies, or arranging roommates, the graph coloring gives a structured way to handle these problems. Let us see a few real-world examples where graph coloring theory is required.
Classroom and Exam Scheduling
In a school or university setting, certain classes cannot be scheduled at the same time due to shared resources. The shared resources are like classrooms or instructors. By representing each class as a vertex and each conflict as an edge, we can make a graph where the goal is to assign time slots (or colors) to each class so that no two conflicting classes are scheduled at the same time.
Example of Class Scheduling Problem
Let us see the above problem through an example −
- Class A conflicts with Classes D and I.
- Class B conflicts with Classes D, I, and J.
- Class C conflicts with Classes E, F, and I.
Each class can be thought of as a vertex. And an edge between any two classes that cannot run at the same time. This is minimum number of colors in this graph (the chromatic number) would give us the least number of time slots required to schedule all classes without any overlaps.

Frequency Assignment for Radio Stations
Consider the scenario of radio broadcasting. The nearby stations need to avoid interference by using different frequencies. Graph coloring helps with this problem by treating each radio station as a vertex and drawing edges between any stations that are close enough to interfere with each other. Here the chromatic number tells us the minimum number of frequencies required to prevent interference.
Example of Frequency Assignment Problem
Let us see this with setting up radio stations in a new region. Some stations are close enough to interfere, so they need different frequencies −
- Station A is close enough to interfere with Stations B, D, and E.
- Station B interferes with Stations C and F.
- Station C interferes with Station D.
We can represent each station as a vertex, with edges between any two stations that interfere with each other. So, a proper coloring of this graph gives us the minimum number of frequencies needed to avoid interference.

Chemical Storage Safety
Another interesting example could be the chemical storage. Here the chemicals need to be stored safely, graph coloring can help prevent hazardous reactions. If two chemicals should not be stored together, they are considered adjacent vertices in a graph.
By coloring the graph, we can determine the fewest number of rooms required to store all chemicals without any dangerous pairs ending up in the same room.
Bounds for Chromatic Numbers
Calculating the exact chromatic number of a graph can be challenging. But we have ways to estimate the bounds for the chromatic number.
- Lower Bound (Clique Number) − The clique number of a graph states the largest complete subgraph. This is a set of vertices all connected to each other. A graph's chromatic number must be at least as large as its clique number.
- Upper Bound (Maximum Degree) − The maximum degree of a vertex in a graph provides an upper bound for the chromatic number. For any graph G, the chromatic number is at most Δ(G), where Δ(G) is the maximum degree of any vertex in the graph.
Special Types of Graphs in Coloring Theory
Let us see some special types of graphs based on their chromatic numbers.
Perfect Graphs
Perfect graphs are graphs in which the chromatic number of each subgraph is equal to its clique number. This property simplifies the task of finding the chromatic number for perfect graphs.

Bipartite Graphs
Bipartite graphs are such graphs whose vertices can be divided into two sets. And with edges only between vertices from different sets. These graphs have a chromatic number of 2. Because only two colors are needed to ensure that adjacent vertices have different colors.

Conclusion
In this chapter, we covered the basics of coloring theory in discrete mathematics. Starting with an overview of vertex coloring, we understood how the chromatic number determines the minimum colors needed to achieve a proper coloring.
We looked at the Four-Color Theorem too and explored how graph coloring is applied in real-world problems like class scheduling, frequency assignment, and chemical storage.
Finally, we explained the methods of estimating chromatic numbers and identified some special types of graphs where these calculations become simpler.