Maximal independent set
In graph theory, a maximal independent set in an undirected graph G = ([V](/page/V.), E) is defined as a subset S \subseteq [V](/page/V.) of vertices such that no two vertices in S are adjacent (i.e., S is an independent set), and no additional vertex from [V](/page/V.) \setminus S can be added to S while preserving independence.[1][2] This property ensures that S is "locally maximal" but does not necessarily imply global maximality in size.
Unlike a maximum independent set, which is an independent set of largest possible cardinality (denoted by the independence number \alpha(G)), a maximal independent set may be significantly smaller; for example, in a star graph with n leaves, a maximal independent set consisting of the center vertex has size 1, while the maximum has size n.[2] A key structural property relates maximal independent sets to vertex covers: the complement of a maximum independent set is a minimum vertex cover, and \alpha(G) + \beta(G) = |V|, where \beta(G) is the size of a minimum vertex cover.[1] The number of distinct maximal independent sets in a graph G is at most $3^{n/3}, providing an upper bound on their enumeration.[3]
Finding a maximal independent set is computationally tractable and serves as a building block for more complex problems, with efficient algorithms available in both sequential and distributed settings. A simple greedy algorithm sequentially adds a vertex to the set if it is non-adjacent to existing members, running in linear time O(|V| + |E|).[2] In distributed computing, Luby's randomized algorithm computes a maximal independent set in O(\log n) expected rounds with high probability, by having vertices randomly select and mark based on degree, ensuring termination and independence.[2][4] These algorithms underpin applications in graph coloring (enabling (\Delta + 1)-coloring in O(\log n) time, where \Delta is the maximum degree), maximal matching, and approximation of minimum dominating sets.[2] In optimization contexts, maximal independent sets arise in scheduling, network design, and resource allocation, where they model non-conflicting selections.[1]
Fundamentals
Definition
In an undirected graph G = (V, E), an independent set is a subset S \subseteq V such that no two vertices in S are adjacent, meaning there exists no edge \{u, v\} \in E with both u, v \in S.[5] A maximal independent set is an independent set that is not a proper subset of any other independent set in G.[5]
Equivalently, a set S is a maximal independent set if it is independent and for every vertex v \notin S, there exists at least one vertex u \in S such that \{u, v\} \in E.[6] This condition implies that S dominates the graph in the sense that every vertex outside S is adjacent to some vertex in S.[5]
For example, consider the path graph P_3 on vertices labeled 1--2--3 with edges \{1,2\} and \{2,3\}. The singleton set \{2\} is a maximal independent set of size 1, as neither 1 nor 3 can be added without violating independence. In contrast, \{1,3\} is a maximum independent set of size 2 (and also maximal), but note that not all maximal independent sets achieve the maximum size.[3]
The size of a maximum independent set in G is denoted by the independence number \alpha(G), and while every maximum independent set is maximal, the converse does not hold—maximal independent sets can be strictly smaller than \alpha(G).[7]
Basic Properties
A maximal independent set in a graph G is irreducible, meaning no vertex outside the set can be added to it without violating the independence condition. This property ensures that every vertex not in the set is adjacent to at least one vertex in the set, preventing any extension while maintaining independence.[8]
Every maximal independent set is also a minimal dominating set. Specifically, it dominates the graph because any vertex v \notin S must be adjacent to some vertex in S (otherwise, S \cup \{v\} would be independent, contradicting maximality); thus, every vertex is either in S or adjacent to S. Moreover, S is minimal as a dominating set: for any u \in S, removing u leaves u undominated, since no other vertex in S is adjacent to u (by independence) and u has no self-loop in simple graphs.[8] Conversely, every independent minimal dominating set in a simple graph is a maximal independent set, establishing their equivalence in this context.[8]
The size of a maximal independent set can vary significantly across different graphs and even within the same graph. In a complete graph K_n with n vertices, every singleton set \{v\} for v \in V(K_n) is a maximal independent set of size 1, which equals the independence number \alpha(K_n) = 1. In contrast, for a star graph K_{1,n-1} with n \geq 2 vertices, the set of n-1 leaves forms a maximal independent set of size n-1 = \alpha(K_{1,n-1}), while the singleton consisting of the center is another maximal independent set of size 1. Thus, maximal independent sets range in size from the independent domination number i(G) (the minimum over all such sets) up to \alpha(G).[8]
Maximal independent sets are rarely unique; most graphs possess multiple such sets, often of varying sizes, as indicated by the distinction between i(G) and \alpha(G) when i(G) < \alpha(G). For instance, the complete graph K_n has exactly n maximal independent sets, all of size 1.
Independent Sets and Extensions
An independent set in a graph is a subset of vertices with no two adjacent. Among independent sets, a maximal independent set is one that cannot be extended by including any additional vertex while preserving independence; that is, it is maximal with respect to inclusion in the family of independent sets.[2] In contrast, a maximum independent set is an independent set of largest possible cardinality, denoted \alpha(G) for a graph G.[2]
The hierarchy under inclusion places all proper independent sets—those that are strict subsets of some larger independent set—within the collection of maximal independent sets, which in turn include the maximum independent sets as those attaining the largest size. Equality holds between maximal and maximum only when every maximal independent set achieves \alpha(G). Finding a maximum independent set is NP-hard, whereas identifying a maximal one can be done efficiently via greedy methods.[9]
Minimal independent sets, by cardinality, are the smallest non-empty independent sets, which are singletons consisting of a single vertex. These contrast with maximal independent sets through their extension property: while a minimal independent set can often be enlarged, a maximal one cannot.[2]
For example, in the cycle graph C_5 with five vertices, every maximal independent set has cardinality 2, matching \alpha(C_5) = 2, and all independent sets of size 2 are maximal since no larger independent set exists.[10]
Connections to Dominating Sets and Vertex Covers
In simple undirected graphs, every maximal independent set is a minimal dominating set. This follows because an independent set requires no internal domination—removing any vertex from it fails to dominate that vertex itself—and maximality ensures that every vertex outside the set is adjacent to it, providing full coverage. Conversely, every independent minimal dominating set is a maximal independent set, establishing that maximal independent sets are precisely the independent minimal dominating sets.[11][12]
The complement of any independent set is a vertex cover, as every edge must have at least one endpoint in the complement to avoid both endpoints lying within the independent set. Specifically, the complement of a maximal independent set is a minimal vertex cover: for any vertex v in the complement C = V \setminus S, C \setminus \{v\} fails to cover the edges from v to S, since S is independent and maximality implies v is adjacent to at least one vertex in S. The converse also holds: the complement of a minimal vertex cover is a maximal independent set.[13]
For example, in the complete bipartite graph K_{m,n} with partite sets A of size m and B of size n (assuming m \geq n \geq 1), the maximal independent sets are exactly A and B. The complement of A is B, a minimal vertex cover of size n, which aligns with König's theorem equating the minimum vertex cover size to the maximum matching size in bipartite graphs.[14]
These connections extend to dual problems via the Gallai identity, which states that for any graph G on |V(G)| = n vertices, the independence number \alpha(G) plus the vertex cover number \tau(G) equals n. While this relates maximum sizes, it applies to maximal cases by noting that the size of any maximal independent set i satisfies \tau(G) \leq n - i \leq n - \alpha(G), bounding the corresponding minimal vertex covers.[15]
Characterizations
In Specific Graph Families
In trees, maximal independent sets possess a recursive structure that facilitates their characterization and enumeration through dynamic programming. For a rooted tree T with root r, any maximal independent set S either includes r (in which case none of r's children are in S, and S restricted to each grandchild subtree must be maximal) or excludes r (in which case S restricted to each child subtree must be maximal). This decomposition yields a linear-time algorithm to count the total number of maximal independent sets in T, given by recursive formulas based on subtree contributions.[16] Representative examples include the two partite sets from the tree's bipartite coloring, such as all vertices at even depths or all at odd depths in a rooting.[17]
In bipartite graphs, the complete partite sets form maximal independent sets when the graph has no isolated vertices, since each such set is independent by definition and dominates the opposite partite set (every vertex there has at least one neighbor in the set). More generally, maximal independent sets in bipartite graphs are precisely the minimal dominating independent sets, and their maximum size is characterized by König's theorem, which equates the independence number to the vertex count minus the size of a maximum matching, computable in polynomial time via flow algorithms.[18] This linkage enables efficient approximation or exact solutions for the largest maximal independent sets, though enumerating all remains challenging in dense cases.
For planar graphs, the four color theorem guarantees an independent set of size at least n/4 (the largest color class in a proper 4-coloring), implying the existence of a maximal independent set achieving this lower bound on the independence number, as the maximum independent set is itself maximal.[19] This bound is tight, witnessed by triangulations like stacked copies of K_4, but no polynomial-time characterization exists for identifying or listing all maximal independent sets in general planar graphs, despite efficient heuristics leveraging planarity for approximations.
Chordal graphs admit a perfect elimination order (PEO)—a vertex ordering where each vertex's earlier neighbors form a clique—which enables linear-time computation of a maximum independent set via a greedy selection in reverse order: include a vertex if none of its later neighbors are included. This exploits the graph's clique tree representation, where maximal cliques intersect in subtrees, facilitating dynamic programming over the tree to count all independent sets (including maximal ones) in linear time relative to the number of maximal cliques. Maximal independent sets in chordal graphs correspond to maximal cliques in the complement, but due to the complement's structure, enumeration leverages the PEO for targeted generation rather than exhaustive listing, as their number can grow exponentially (e.g., in path graphs).[20]
In claw-free graphs (those without an induced K_{1,3}), maximal independent sets exhibit restricted structure: no vertex outside the set has three pairwise non-adjacent neighbors, limiting branching in selection processes. This property allows a polynomial-time algorithm for the maximum-weight independent set (a canonical maximal one) by reducing to weighted matching in an auxiliary edge graph, where local maximality choices propagate without conflicts due to the claw-freeness. Seminal results confirm this approach solves the unweighted case exactly, highlighting how the forbidden subgraph constrains independent set extensions.[21]
Structural Characterizations
A set S \subseteq V(G) is a maximal independent set in a graph G = (V, E) if and only if S is an independent set and a dominating set.[8] This characterization highlights the intrinsic structure: independence ensures no edges within S, while domination ensures every vertex in V \setminus S is adjacent to at least one vertex in S, preventing extension of S. Equivalently, the bipartite subgraph induced by the edges between S and V \setminus S has no isolated vertices in V \setminus S.[8] This dual property provides a non-constructive way to verify maximality without enumerating larger sets.
In comparability graphs, which are the undirected graphs admitting a transitive orientation corresponding to a partial order on the vertices, maximal independent sets have a particularly elegant structural description. Specifically, independent sets correspond to antichains in the underlying poset, and thus maximal independent sets are precisely the maximal antichains. These can be found using lexicographic breadth-first search orderings, which respect the partial order and allow identification of maximal antichains via chain decompositions, as per Dilworth's theorem. Elimination orderings in such graphs further reveal that removing vertices in a linear extension order preserves the antichain structure of remaining maximal sets.
The collection of all independent sets in G forms the faces of a simplicial complex known as the independence complex I(G), where the maximal faces (facets) are exactly the maximal independent sets.[22] This abstract topological structure, introduced in the context of enumerative combinatorics, provides a geometric characterization: the facets of I(G) capture the "maximal" boundary elements of the complex, enabling algebraic tools like the Stanley-Reisner ring to study properties such as the number of facets. Moon and Moser utilized early insights into this structure to bound the number of such facets, showing that a graph on n vertices has at most $3^{n/3} maximal independent sets, with equality for disjoint unions of triangles.
An alternative hypergraph perspective interprets maximal independent sets through duality. Consider the hypergraph \mathcal{H} whose vertex set is V(G) and whose hyperedges are the closed neighborhoods N for each v \in V(G); then, the minimal transversals of \mathcal{H} correspond to the minimal dominating sets, and when restricted to independent transversals, they yield maximal independent sets.[23] In the line graph L(G), which models edge adjacencies, maximal independent sets of G relate to maximal matchings, but the hypergraph representation of L(G) (with hyperedges as incident edge sets) frames maximal independent sets of G as minimal hyperedge transversals that avoid full incidences, providing a combinatorial abstraction for parallel algorithms.
Algorithms for a Single Maximal Independent Set
Sequential Greedy Algorithms
The sequential greedy algorithm is a simple deterministic method for computing a maximal independent set in a graph G = (V, E). It processes the vertices in an arbitrary fixed order, iteratively adding a vertex to the independent set S if it is not adjacent to any vertex already in S. This ensures that S becomes maximal because every vertex not in S is adjacent to at least one vertex in S by the end of the process.[24]
The algorithm can be implemented iteratively or recursively. Here is pseudocode for the iterative version using an adjacency list representation:
Input: Graph G = (V, E) with vertices ordered as v1, v2, ..., vn
Output: Maximal independent set S
S ← ∅
marked ← array of false for all vertices
for i = 1 to n do
if not marked[vi] then
add vi to S
for each neighbor u of vi do
marked[u] ← true
marked[vi] ← true
return S
Input: Graph G = (V, E) with vertices ordered as v1, v2, ..., vn
Output: Maximal independent set S
S ← ∅
marked ← array of false for all vertices
for i = 1 to n do
if not marked[vi] then
add vi to S
for each neighbor u of vi do
marked[u] ← true
marked[vi] ← true
return S
This implementation marks vertices to avoid adding neighbors, ensuring efficiency.[24]
The time complexity is O(n + m), where n = |V| and m = |E|, as each vertex and edge is processed a constant number of times. The algorithm always produces a maximal independent set, regardless of the vertex ordering. For the maximum independent set problem, it achieves an approximation ratio of \Delta + 1, where \Delta is the maximum degree of the graph; that is, the size of the output set |S| satisfies |S| \geq \alpha(G) / (\Delta + 1), with \alpha(G) denoting the independence number.[24]
A common variant modifies the vertex ordering to improve performance in practice. The lowest-degree-first ordering processes vertices in non-decreasing order of their degrees, selecting the minimum-degree vertex among remaining unmarked vertices at each step. This heuristic often yields larger independent sets than arbitrary ordering, though the worst-case approximation ratio remains O(\Delta).[25]
Parallel Randomized Algorithms
Parallel randomized algorithms for computing a single maximal independent set exploit randomness to facilitate concurrent vertex selection and elimination, enabling efficient execution in parallel computational models like the PRAM (Parallel Random Access Machine). These methods typically operate in phases, progressively eliminating vertices until the remaining set is maximal, and achieve sublinear time complexity in expectation by ensuring significant graph reduction per round.
Luby's algorithm, a foundational randomized parallel approach from 1985, proceeds iteratively on the current subgraph. In each round, every remaining vertex v with degree d in the induced subgraph is independently selected for the independent set with probability \frac{1}{2d + 1}. The selected vertices are added to the independent set, and both they and their neighbors are removed from the graph. This process repeats until no vertices remain. The algorithm requires expected O(\log n) rounds and runs on the EREW PRAM model, where n denotes the number of vertices.[26]
Blelloch's random-permutation algorithm, introduced in 2012, relies on a fixed random ordering of the vertices to drive selection in a manner that parallels the sequential greedy method but with low parallelism depth. It begins by choosing a parameter \delta \in (0,1] and identifying the first \delta n vertices in the random permutation as a candidate set P. An independent set I is formed by including vertices from P that have no neighbors within P. If I is not maximal, the algorithm recurses on the subgraph induced by vertices outside the closed neighborhood of I. With suitable \delta, it completes in expected O(\log n) rounds and is work-efficient, performing O(m + n) total operations where m is the number of edges.[27]
The random-priority method extends ideas similar to Blelloch's by assigning each vertex a priority via a hashing function to approximate a random permutation without explicit ordering. In parallel, vertices are checked to determine if their priority exceeds that of all neighbors; those qualifying are selected as local maxima and added to the independent set, with selected vertices and neighbors removed. Like the others, it achieves expected O(\log n) time through multiple filtering rounds.[28]
These algorithms always guarantee a maximal independent set, with expected O(\log n) running time, incur O(n) space overhead, and are well-suited for distributed systems due to their localized operations and low communication needs. Unlike sequential greedy algorithms, which process vertices one by one, they enable massive parallelism by allowing independent decisions across vertices in each round.[26][27][28]
Enumeration and Counting
Listing All Maximal Independent Sets
Enumerating all maximal independent sets in a graph involves generating each such set exactly once, typically using output-sensitive algorithms that scale with the number of sets produced. A basic approach employs backtracking to systematically explore the power set of vertices while maintaining independence and ensuring maximality. The algorithm begins with an empty independent set and recursively considers each remaining vertex: if adding it preserves independence, the vertex is included and the process recurses on the updated remaining vertices; otherwise, it is excluded. To enforce maximality, the recursion prunes branches where no further vertices can be added without violating independence, outputting the current set only when it cannot be extended. This method avoids duplicates by processing vertices in a fixed order and backtracks upon reaching dead ends.[29]
An influential optimization is the algorithm by Tsukiyama et al., which uses a search tree structure based on adjacency relations to generate all maximal independent sets without redundancy. It constructs a search tree where each maximal independent set corresponds to a leaf, navigating via parent-child relations derived from adding or removing vertices adjacent to the current set. The algorithm has polynomial total time bounded by a constant times the number of maximal independent sets. A further refinement by Johnson et al. generates the sets in lexicographic order with polynomial delay between consecutive outputs, meaning the time to produce each set after the previous one is bounded by a polynomial in the graph size. The total running time is O(3^{n/3}) in the worst case, where n is the number of vertices, reflecting the exponential growth possible in the number of such sets.[29][30]
In general, algorithms for listing all maximal independent sets are output-sensitive, with total time proportional to the number of maximal independent sets multiplied by a polynomial in n and the number of edges m. While counting the number of maximal independent sets is #P-complete even for restricted graph classes like chordal graphs, listing them remains feasible for small graphs using these enumeration methods, as the explicit generation does not require solving the counting problem.[31]
For example, consider the path graph P_4 with vertices labeled 1-2-3-4. The maximal independent sets are {1,3}, {1,4}, and {2,4}, as each cannot be extended further without including an adjacent vertex.
Counting Maximal Independent Sets
Determining the exact number of distinct maximal independent sets in a graph is a fundamental #P-complete problem in computational complexity, even when restricted to bipartite graphs.[32] This hardness holds because verifying maximality and ensuring independence across all potential subsets leads to an exponential enumeration challenge without efficient shortcuts for general graphs.[33]
For graphs with bounded treewidth w, dynamic programming on a tree decomposition provides an efficient parameterized algorithm to count the number of maximal independent sets in O(3^w n) time, where n is the number of vertices.[34] The approach maintains states for partial independent sets in each bag, tracking inclusion and coverage to enforce global maximality upon completion of the decomposition. This exploits the structural sparsity captured by low treewidth, making the problem fixed-parameter tractable in w.[34]
While the standard independence polynomial \sum_{S \in \mathcal{I}(G)} x^{|S|} enumerates all independent sets \mathcal{I}(G), counting only the maximal ones requires adaptation to focus on the facets of the independence complex.[35] This can be approached using the maximal independence polynomial \sum_{k} s_k x^k, where s_k is the number of maximal independent sets of size k, or via inclusion-exclusion principles to subtract non-maximal sets from the total, though such methods remain computationally intensive and do not yield polynomial-time solutions for general graphs.[35]
Approximate counting of maximal independent sets is also hard; it is AP-hard to approximate the number within a constant factor.[36] In n-vertex graphs, the number of maximal independent sets can reach up to $3^{n/3}, highlighting the scale of the output even before computational challenges arise.[37]
Bounds and Extremal Results
Bounds on the Size of Maximal Independent Sets
A maximal independent set S in a graph G = (V, E) with n = |V| vertices satisfies $1 \leq |S| \leq \alpha(G) \leq n, where \alpha(G) denotes the independence number of G. This follows directly from the definitions, as S is nonempty (assuming n \geq 1) and cannot exceed the largest possible independent set.
A fundamental lower bound on the size of any maximal independent set states that |S| \geq n / (\Delta + 1), where \Delta is the maximum degree of G. To see this, note that since S is maximal, the union of the closed neighborhoods N for v \in S covers V. Although these neighborhoods may overlap, |V| \leq \sum_{v \in S} |N| \leq |S| \cdot (\Delta + 1), as each closed neighborhood has at most \Delta + 1 vertices. This bound is achieved by the greedy algorithm for constructing a maximal independent set, which processes vertices in arbitrary order and adds a vertex if it does not adjacent to previously added ones, guaranteeing maximality and the stated size lower bound.[1]
The Caro–Wei bound improves upon this by providing a degree-dependent lower bound tailored to the graph's structure. Consider the random-order greedy algorithm, which processes the vertices in a uniformly random permutation and adds each vertex to S if none of its neighbors appear earlier in the order. The expected size of the resulting maximal independent set satisfies \mathbb{E}[|S|] \geq \sum_{v \in V} \frac{1}{d(v) + 1}, where d(v) is the degree of vertex v. This expectation arises from the probability that a given vertex v is added to S, which equals $1 / (d(v) + 1) as it requires v to precede all its neighbors in the random order. By the probabilistic method, there exists a permutation yielding a maximal independent set of at least this size. The bound was established independently by Caro and by Wei.[38][39]
In extremal cases, the size of maximal independent sets can vary dramatically. In the complete graph K_n, every singleton vertex set is a maximal independent set of size 1, and no larger independent set exists. Conversely, in the empty graph (edgeless graph) on n vertices, the entire vertex set V is the unique maximal independent set of size n, as any proper subset can be extended by adding an isolated vertex.
Bounds on the Number of Maximal Independent Sets
The maximum number of maximal independent sets in an n-vertex graph is $3^{n/3}, as established by the Moon-Moser theorem.[40] This upper bound is tight and achieved by the disjoint union of n/3 triangles (assuming n is divisible by 3), where each triangle contributes exactly three maximal independent sets (its singletons), yielding the product $3^{n/3}.[41]
For lower bounds, consider bipartite graphs, which are triangle-free. In such graphs, the number of maximal independent sets is at most $2^{n/2} for n \geq 4.[42] This bound is attained by the graph consisting of n/2 disjoint edges (assuming n even), where each edge contributes two maximal independent sets (its endpoints), resulting in $2^{n/2} total maximal independent sets.[42]
In random graphs G(n,p) with constant p, the expected number of maximal independent sets is exponential in n.[41] This follows from the exponential growth observed in general graphs, modulated by the random structure, where the typical number aligns with the entropy of maximal configurations under the Erdős–Rényi model.[41]
Advanced Topics and Applications
Parallel and Distributed Computing Applications
In parallel and distributed computing, maximal independent sets (MIS) are widely used for leader election in distributed networks, where the selected nodes serve as non-conflicting coordinators to manage synchronization, broadcasting, and resource coordination without interference. By computing an MIS on the network graph, adjacent nodes are prevented from simultaneous leadership, ensuring reliable operation in environments like wireless or ad-hoc networks. This application stems from the inherent conflict-free property of MIS, allowing local leaders to handle subtasks independently before global aggregation. Luby's seminal randomized algorithm (1985), originally designed for parallel models, has been adapted to the distributed LOCAL model to compute MIS in O(log n) rounds with high probability, enabling efficient leader election.[26] Deterministic algorithms for MIS in the LOCAL model achieve polylogarithmic round complexity in general graphs.[43]
MIS also underpins parallel algorithms for graph coloring, providing a greedy framework that iteratively assigns colors to independent vertices. The process begins by computing an MIS in the graph, assigning all nodes in the set a single color, removing them and their neighbors, and recursing on the residual graph; this yields a proper coloring using at most Δ+1 colors, where Δ is the maximum degree, as each iteration reduces the graph by at least a constant fraction. In parallel implementations, randomized MIS algorithms facilitate concurrent selection across iterations, achieving polylogarithmic time on PRAM models. Goldberg, Plotkin, and Shannon (1987) demonstrated this approach for constant-degree graphs, coloring with Δ+1 colors in O(log^2 n) time using O(n^2 / log n) processors, highlighting MIS's role in scalable coloring for parallel applications like scheduling and register allocation.[44]
For load balancing in parallel computing, MIS enables task partitioning by selecting non-adjacent vertices or elements to distribute workloads across processors, minimizing inter-processor communication while ensuring even distribution. In dynamic environments, such as adaptive finite element simulations on unstructured meshes, MIS identifies independent subdomains for migration or coarsening, preventing overload on neighboring processors and supporting scalable repartitioning as the computation evolves. This is particularly effective in multilevel partitioning, where parallel computation of a maximal matching coarsens the graph by contracting along independent edges, preserving balance during refinement. Walshaw et al. (1997) incorporated maximal matching-based coarsening into their parallel dynamic load balancer for unstructured meshes, achieving near-linear speedup on up to 100 processors for adaptive CFD simulations by reducing edge cuts and balancing vertex weights.[45]
Early PRAM models leveraged MIS algorithms to simulate sequential circuits in parallel, selecting independent gates or operations for concurrent evaluation to accelerate depth reduction and overall computation. Luby's algorithm (1985) provided a foundational O(log n)-time method on CRCW PRAMs, allowing efficient parallel simulation of circuit-like dependencies in graph-based models and influencing subsequent work on parallel complexity classes.[26]
Recent Advances in Algorithms and Complexity
In recent years, significant progress has been made in scaling maximal independent set (MIS) computations to handle massive graphs that exceed the memory limits of single devices. A notable advancement is the MG-MIS algorithm, which enables efficient MIS computation across multiple GPUs for graphs too large to fit in a single GPU's memory. Developed by Akathoott et al., this approach partitions the graph across GPUs and employs asynchronous swaps to minimize inter-GPU communication overhead, allowing seamless handling of graphs requiring over 32 GB of memory. Performance evaluations demonstrate that MG-MIS achieves up to 17.73× speedup over state-of-the-art single-GPU implementations with unified virtual memory on four NVIDIA V100 GPUs, while producing MIS sets only 2.6% smaller on average.[46]
The integration of machine learning into algorithms for independent set problems has emerged as a promising direction for improving approximation guarantees, particularly in dynamic or online environments. In 2024, Braverman et al. introduced a learning-augmented framework for the maximum independent set problem (a related but harder variant of MIS seeking the largest possible independent set), where a machine learning oracle provides predictions on vertex membership in an optimal set with accuracy 1/2 + ε. These predictions guide greedy selection processes, yielding an Õ(√Δ / ε)-approximation ratio using a single query per vertex in O(m) time, where Δ is the maximum degree and m the number of edges; with O(n / ε²) queries, it achieves a constant-factor approximation. This method breaks traditional NP-hard approximation barriers in online settings by leveraging ML advice, offering robust competitive ratios even under prediction errors.[47]
Advancements in query complexity have also clarified fundamental limits for graph reconstruction using MIS oracles. Konrad et al. established in 2025 that reconstructing the edges of an n-vertex graph requires Ω(n log n) queries to a maximal independent set oracle in the worst case, resolving a key open question in property testing and oracle-based graph algorithms. This lower bound highlights the informational efficiency of MIS queries compared to simpler independent set oracles, while upper bounds remain exponential, underscoring ongoing challenges in adaptive querying strategies.[48]
Recent complexity results have refined the parallel and distributed landscape for MIS, particularly for bounded-degree graphs. Deterministic NC algorithms for MIS in constant-degree graphs, building on classic parallel reductions, achieve polylogarithmic time using O(n + m) processors, with recent implementations confirming scalability in massively parallel settings. In the LOCAL model, ongoing research has tightened round complexity bounds; for instance, randomized algorithms require Ω(√(log n / log log n)) rounds in general graphs, while deterministic variants for low-degree graphs approach O(log* n) through network decomposition techniques, with 2024-2025 works exploring hypergraph extensions to further reduce constants.[43][49]