Abstract 1 Introduction 2 Related Work 3 Our Results 4 Preliminaries 5 Semi-Streaming Algorithm for 𝒌-partial (𝒌+𝟏)-coloring 6 Lower Bound: A Super-Linear Space Barrier References

One Color Makes All the Difference in the Tractability of Partial Coloring in Semi-Streaming

Avinandan Das ORCID Aalto University, Finland
Abstract

This paper investigates the semi-streaming complexity of k-partial coloring, a generalization of proper graph coloring. For k1, a k-partial coloring requires that each vertex v in an n-node graph is assigned a color such that at least min{k,deg(v)} of its neighbors are assigned colors different from its own. This framework naturally extends classical coloring problems: specifically, k-partial (k+1)-coloring and k-partial k-coloring generalize (Δ+1)-proper coloring and Δ-proper coloring, respectively.

Prior works of Assadi, Chen, and Khanna [SODA 2019] and Assadi, Kumar, and Mittal [TheoretiCS 2023] show that both (Δ+1)-proper coloring and Δ-proper coloring admit one-pass randomized semi-streaming algorithms. We explore whether these efficiency gains extend to their partial coloring generalizations and reveal a sharp computational threshold: while k-partial (k+1)-coloring admits a one-pass randomized semi-streaming algorithm, the k-partial k-coloring remains semi-streaming intractable, effectively demonstrating a “dichotomy of one color” in the streaming model.

Keywords and phrases:
Graph Coloring, Semi-streaming algorithms, Lower bounds
Copyright and License:
[Uncaptioned image] © Avinandan Das; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Theory of computation Streaming models
Related Version:
Full Version: https://arxiv.org/abs/2602.18987
Acknowledgements:
Avinandan would like to thank Pierre Fraigniaud and Adi Rosén for proposing the problem of k-partial (k+1)-coloring and many discussions.
Funding:
This work was supported in part by the Research Council of Finland, Grants 363558 and 359104.
Editor:
Pierre Fraigniaud

1 Introduction

Partial coloring.

A proper vertex coloring requires that every edge is bichromatic, i.e., every vertex v has all its neighbors colored differently from v. Partial coloring relaxes this requirement by only demanding enough differently-colored neighbors. Formally, for integers k0 and c1, a k-partial c-coloring of a graph G=(V,E) is a map χ:V[c] such that for every vertex v,

|{uNG(v):χ(u)χ(v)}|min{k,degG(v)}.

Equivalently, if degG(v)k then v must have at least k neighbors of a different color, whereas if degG(v)<k then all neighbors of v must have a different color. Specifically, Δ-partial coloring implies a proper coloring of G where Δ is the max. degree of G.

The most prominent parameter choices are k-partial (k+1)-coloring and k-partial k-coloring. These notions generalize the classical degree-based benchmarks: when k=Δ, a Δ-partial (Δ+1)-coloring is exactly a proper (Δ+1)-coloring, and a Δ-partial Δ-coloring is exactly a proper Δ-coloring.

A simple greedy argument in fact shows that a k-partial (k+1)-coloring always exists. Initialize all vertices to color 1 and consider each vertex sequentially. For each considered vertex v, let C(v) be the set of colors present in the neighborhood of v. If |C(v)|=k+1, then the vertex retains it’s color. Otherwise, it recolors itself with a color from the set [k+1]C(v). The resulting coloring is k-partial because (1) node v has at least min{k,deg(v)} neighbors with a color different from its own color when it adopts its final color, and (2) two neighboring vertices with different colors at some time t during the execution of the greedy algorithm will remain with different colors at any time tt.

A central question in this paper is whether the semi-streaming tractability known for (Δ+1)- and Δ-proper coloring [2, 3] extends to these partial-coloring generalizations as well.

A simple Streaming Algorithm.

As a warm-up, a simple one-pass approach already yields a k-partial (k+o(k))-coloring.

A useful lens is to view partial coloring through a witness subgraph. Suppose we find a spanning subgraph GG such that every vertex v retains at least min{k,degG(v)} incident edges in G. Then any proper coloring of G with c colors is automatically a k-partial c-coloring of G: each vertex has enough neighbors inside G, and properness makes all witness edges bichromatic.

We run the filter from Section 5.2 to construct online a spanning subgraph Gf=(V,Ef): when an edge {u,v} arrives, we accept it into Ef iff the current degree of u in Gf is <k or the current degree of v in Gf is <k. Lemma 10 in Section 5.2.2 proves that Gf is a valid witness, and by Lemma 14, that it is k-degenerate. Hence we may apply the degeneracy-based semi-streaming coloring algorithm [6] to properly color Gf with k+o(k) many colors in semi-streaming.

Challenges in getting down to 𝒌+𝟏 colors.

The witness perspective also clarifies why achieving k+1 colors requires new ideas.

1. Selecting the right streamed edges.

In semi-streaming we must decide online which edges to keep in the witness G under O~(n) space. The greedy filter above yields only a k-degenerate witness. However, properly coloring an arbitrary k-degenerate graph with k+1 colors is not feasible in one-pass semi-streaming space (refer to [6]). Thus, the first challenge is to maintain a witness that is not merely sparse, but structured enough that (k+1)-coloring becomes tractable.

2. Even with a good witness, what coloring approach applies?

Assume we somehow manage to keep a “nice” witness G. It is still not immediate what algorithmic approach should be deployed to color it with k+1 colors in one pass. At first glance one might hope that the witness has Δ bounded by k and hence that one can adapt (Δ+1)-coloring ideas. However, this intuition can fail sharply: there exist graphs for which any k-partial (k+1)-coloring essentially forces a proper coloring, while the graph still contains vertices of degree strictly larger than k; see Fig. 1 for such examples. Therefore, one cannot rely on a maximum-degree bound, and the coloring algorithm must exploit a different structural handle than naive Δk reasoning.

𝒌-partial 𝒌-coloring.

A tight classical characterization of when a graph admits a proper Δ-coloring is given by Brooks’ theorem (and its many variants and proofs); in particular, for a connected graph with maximum degree Δ, a proper Δ-coloring exists unless the graph is a clique (or an odd cycle when Δ=2); see, e.g., the survey [8]. More recently, it was proven in [7] that for every fixed constant k3, deciding whether a graph admits a k-partial k-coloring is NP-complete; their reduction replaces each edge of the input graph by a constant-size “k-edge gadget” (see Section 6 and Fig. 1). At the same time, the problem of k-partial k-coloring for any constant k is trivially semi-streaming tractable; implement the simple streaming algorithm discussed in Section 1 and store the filtered graph Gf (which has degeneracy bounded by k which is a constant and therefore can be stored offline in O~(n) space) and find a coloring offline. This phenomenon is not unique: there are NP-hard problems that are nonetheless trivial in semi-streaming space, e.g. deciding whether a cubic graph is 3-edge-colorable is NP-complete [12], cubic graphs have only 3n/2 edges and hence can be stored exactly in semi-streaming space. Consequently, the question remains whether the one-pass semi-streaming tractability known for proper Δ-coloring [3] extends to k-partial k-coloring as well.

2 Related Work

Graph problems in streaming are commonly studied in the semi-streaming model introduced in [10], where the graph arrives as an edge stream and the algorithm uses O~(n) space. For background on techniques and representative results in graph streams, see survey [14].

A central tool behind modern sublinear graph-coloring algorithms is the palette sparsification theorem [2], which shows that sampling O(logn) colors per vertex from {1,,Δ+1} typically preserves the existence of a proper (Δ+1)-coloring, enabling single-pass semi-streaming algorithms in dynamic streams. Subsequent work studied palette sparsification in special classes of graphs, like in triangle free graphs with a smaller palette of colors as well as generalizing it to (deg+1)-coloring [1]. It was further generalized to (deg+1)-list coloring in [11]. Recently a substantially simpler (albeit slightly weaker) proof of palette sparsification has appeared in [4].

Proper Δ-coloring was also studied in the streaming framework and was proven to be semi-streaming tractable in [3]. Coloring was also studied w.r.t degeneracy of a graph. In [6], a semi-streaming algorithm was designed which colors a graph with degeneracy κ in κ+o(κ) many colors. They also proved that κ+1 coloring of a n-vertex graph requires Ω(n2) bits of space. We adapt their lower bound proof to the partial coloring setting in Section 6.

The notion of partial (or k-partially proper) coloring has appeared previously in distributed graph algorithms before [16, 5, 9, 7]. Specifically, [7] studied the problem of k-partial k-coloring and proved that the problem is NP-complete and proved that the problem is“global” for every constant k.

Our work complements these results by establishing an analogous one-color threshold phenomenon in the semi-streaming model.

3 Our Results

The results of this paper demonstrate a sharp one-color dichotomy in the semi-streaming setting: allowing k+1 colors makes k-partial coloring tractable in semi-streaming space, whereas restricting to exactly k colors can force super-linear memory.

Theorem 1.

There exists a one-pass randomized semi-streaming algorithm that, with high probability, produces a k-partial coloring of an input graph G using k+1 colors, where k is given as input prior to the stream and G is presented as an insertion-only stream.

Section 5 is dedicated to proving the theorem. In section 5.1, we begin by identifying a sparse spanning subgraph GG that serves as a witness for partial coloring: a proper (k+1)-coloring of G immediately induces a k-partial (k+1)-coloring of G. We then prove a palette sparsification theorem for proper (k+1)-coloring of the witness graph G and finally in Section 5.2, we adapt the sparsification lemma to obtain a one-pass semi-streaming algorithm for the coloring.

In Section 6, we augment this upper bound by a fine-grained super linear lower bound for k-partial k-coloring. More specifically, we prove the following theorem.

Theorem 2.

For every constant ε0, let G be an n-vertex graph presented as an adversarial insertion-only stream, and let the partial coloring parameter be k=Θ(n13+ε). Any one-pass randomized streaming algorithm 𝒜 that solves k-partial k-coloring on G with probability at least 2/3 requires Ω(n1+13+ε) bits of memory. In particular, for ε=0, the algorithm requires Ω(n4/3) bits.

Without loss of generality, we assume that k=ω(polylogn). Otherwise, the problem becomes trivially semi-streaming tractable; run the filter of the simple algorithm in Sec 1 and store the edges which pass the filter. The resultant graph will have degeneracy bounded by k and therefore, can be stored and colored offline in semi-streaming space.

Technical Overview

Semi-Streaming Algorithm.

Our approach is based on the observation that partial coloring can be viewed as a proper coloring problem on a suitable spanning subgraph. By definition, any k-partial coloring of a graph G implicitly induces a proper coloring on a subgraph GG, which acts as a witness for partial coloring: if a coloring is proper on G, then every vertex has at least min{k,degG(v)} neighbors colored differently in G.

We exploit this perspective by explicitly constructing such a witness subgraph. Starting from the input graph G, we repeatedly delete edges whose both endpoints currently have degree strictly larger than k. This process terminates with a subgraph G in which every edge has at least one endpoint of degree at most k. A key property of this construction is that any proper coloring of G is automatically a valid k-partial coloring of the original graph G.

Once the problem is reduced to properly coloring the witness graph G, we aim to apply palette sparsification, following the general strategy of [2]. However, unlike the standard (Δ+1)-coloring setting, palette sparsification does not immediately apply here: vertices sample colors from the fixed palette [k+1], rather than from degree-dependent palettes. Moreover, we might end up in situations where the graph G has to be properly colored but k<Δ(G) (refer to Fig. 1). This mismatch prevents a direct application of existing sparsification results.

To overcome this difficulty, we adapt palette sparsification to the structure of the witness graph. The key idea is to exploit the degree asymmetry enforced by the witness construction. We partition the vertices of G into high-degree and low-degree vertices. By construction, the set of high-degree vertices (those with degree greater than k) forms an independent set. This allows us to color all high-degree vertices first using a small subset of colors. In particular, we show that they can be colored with at most k/4 colors with high probability, using only their randomly sampled palettes.

After fixing the colors of the high-degree vertices, we proceed to color the low-degree vertices. Each low-degree vertex has at most k neighbors in total, and only a small number of colors are forbidden by already-colored neighbors. Although the palettes of these vertices were sampled from [k+1], we show that the effective palettes obtained after removing forbidden colors remain sufficiently large and retain the necessary randomness. This enables the application of a variant of palette sparsification theorem for (deg+1)-list coloring [11, Theorem 4] to complete the coloring.

To translate this existential argument into a streaming algorithm, we introduce a three-phase procedure. In Phase 1 (Filtering), edges are discarded once both endpoints have accumulated degree k, ensuring that the maintained graph remains a witness. In Phase 2 (Palette Sparsification), edges whose endpoints have disjoint sampled palettes are discarded, since they cannot induce color conflicts; only potentially constraining edges are stored. Finally, in Phase 3 (Offline Solving), the algorithm solves the resulting demand-partial list coloring instance offline. By the adapted palette sparsification argument, a solution exists with high probability, and any such solution corresponds to a proper coloring of G and hence to a valid k-partial coloring of G.

Lower Bound.

We base ourselves on the lower bound technique of [6] who prove that there exists a κ such that coloring an input n-vertex κ-degenerate graph G with κ+1 colors requires Ω(n2) bits in insertion-only stream. Their proof follows a standard reduction from the communication problem Index where Alice is given a vector X{0,1}N and Bob, an index i[N] and Bob outputs the value Xi. They follow a standard reduction procedure of shaping X as a square matrix A[n×n] and the index is mapped as (g,h). These are then encoded as a graph G where two sets of vertices U and W represent the rows and columns of A such that for vertices uiU and wjW, {ui,wj}E(G) if and only if A[i,j]=1. The graph G is encoded in such a way that for any κ+1 coloring γ, for vertices ugU and whW, γ(ug)γ(wh) if and only if A[g,h]=1.

We follow the same strategy and reshape the vector X into a rectengular matrix A[(k1)×] and the index i mapped as (t,q) and Alice and Bob construct a graph G encoding A and (t,q). Let R and C be the row and column vertices in G corresponding to A. Alice ensures that for each vertex vC : 1) degG(v)=k1 and 2) χ(NG[v])=[k] and for each vertex uR, |χ(NG[u])|=k1. Bob, based on the index (t,q) adds edges to the graph ensuring that χ(NG[rt])=[k1]. This is ensured via the special gadgets edge-gadgets and color repeaters which, when added between two vertices force the two vertices to take different and same colors respectively. These properties, along with the fact that any k-partial k-coloring χ will color all the incident edges of v properly w.r.t it ensures that G has to satisfy the property that for vertices rtR and cqC, χ(rt)χ(cq) if and only if A[t,q]=1.

Any streaming algorithm acts as a one-way communication protocol and in the end, the coloring of the vertices reveal the bit A[t,q]. The space bound follows from the fact that the |V(G)|=O(k+), setting k3+ε=O() and that Index requires Ω(k) bit one-way communication bandwidth.

4 Preliminaries

We write [k]:={1,2,,k}. All logarithms are base two unless stated otherwise. All graphs considered in this paper are simple, undirected, and have n vertices.

Throughout the paper, we sample colors independently and uniformly at random with replacement from a given palette. Formally, sampling with replacement from a finite set U means that each draw is an independent random variable distributed uniformly over U. Consequently, the same color may appear multiple times in a sampled list.

Lemma 3.

Let X be a color sampled uniformly at random from [k+1]. Let Uu[k+1] be any fixed subset. Conditioned on the event that XUu, the color X is uniformly distributed over Uu.

Proof.

For any cUu, Pr[X=cXUu]=Pr[X=c]Pr[XUu]=1/(k+1)|Uu|/(k+1)=1|Uu|.

We use standard Chernoff bounds for sums of independent Bernoulli random variables [15].

Let X=i=1mXi, where the Xi are independent and take values in {0,1}. Then, for any 0<δ<1,

Pr[X(1δ)𝔼[X]]exp(δ22𝔼[X]).
Degeneracy.

A graph G=(V,E) is d-degenerate if every non-empty subgraph HG contains a vertex of degree at most d.

Equivalently, G is d-degenerate if there exists an ordering of the vertices v1,,vn such that for every i, vertex vi has at most d neighbors among {vi+1,,vn}. We orient each edge {vi,vj} with i<j from vi to vj. The outdegree of vi is defined as

outdeg(vi)=|{vj:j>i and {vi,vj}E}|.

With this orientation, G is d-degenerate if and only if there exists an ordering such that outdeg(vi)d for all i[n].

Semi-Streaming Algorithms.

We work in the semi-streaming model for graph algorithms.

An input graph G=(V,E) is presented as an insertion-only stream of edges. The algorithm knows the vertex set V apriori and processes the stream of edges in one pass while maintaining a memory state of size at most O~(n) bits, where polylogarithmic factors in n are suppressed.

The algorithm may be randomized and succeeds with high probability (i.e. with probability at least (11/nc) for some constant c). At the end of the stream, the algorithm outputs a solution to the given graph problem.

Communication Complexity.

We use communication complexity to prove lower bounds for streaming algorithms.

In the one-way communication model, there are two players, Alice and Bob. Alice receives an input x, Bob receives an input y, and Alice sends a single message to Bob. Based on this message and his input, Bob must compute a function f(x,y).

The communication cost is the number of bits sent from Alice to Bob. Protocols may be randomized and are required to succeed with probability at least 2/3.

A standard connection between streaming algorithms and communication complexity is that any one-pass streaming algorithm using S bits of space yields a one-way communication protocol with communication cost S, where Alice simulates the algorithm on the first part of the stream and sends the memory state to Bob.

Index.

The Index problem is defined as follows: Alice holds a bit string X{0,1}N, Bob holds an index j[N], and Bob must output the bit Xj.

It is well known that any one-way randomized protocol for Index that succeeds with probability at least 2/3 requires Ω(N) bits of communication [13].

5 Semi-Streaming Algorithm for 𝒌-partial (𝒌+𝟏)-coloring

Figure 1: Example of a graph where 3-partial coloring implies a proper coloring. Observe that the vertices v and u2 have degree greater than 3 but are surrounded by degree 3 vertices which enforce a proper coloring on them.

This section is dedicated to design, correctness and analysis of a single pass insertion-only semi-streaming algorithm for partial coloring. Specifically, we prove the following theorem.

Theorem 4.

There exists a one-pass randomized semi-streaming algorithm that, with high probability, produces a k-partial coloring of an input graph G using k+1 colors, where k is given as input prior to the stream and G is presented as an insertion-only stream.

5.1 Palette Sparsification for Partial Coloring

Definition 5 (Witness for Partial Coloring).

Let G=(V,E) be a graph and k a positive integer. A witness for k-partial coloring is a subgraph GG obtained by the following procedure:

  1. 1.

    Initialize G=G.

  2. 2.

    While there exists an edge {u,v}E(G) such that degG(u)>k and degG(v)>k, remove {u,v} from E(G).

The resultant graph satisfies that for every edge {u,v}E(G), min{degG(u),degG(v)}k.

Lemma 6.

Let G be a witness for k-partial coloring of G. If χ is a proper coloring of G, then χ is a k-partial coloring of G.

Proof.

We first establish a lower bound on the degrees in G. We claim that for every vertex vV(G), degG(v)min{k,degG(v)}.

Consider the edge deletion procedure defining G. An edge incident to v is removed only if degcurrent(v)>k. Consequently, the degree of v can never be reduced to a value less than k, as the removal condition would fail before such a reduction could occur.

  • If degG(v)k, the condition deg(v)>k is never met, so no edges incident to v are ever removed. Thus, degG(v)=degG(v).

  • If degG(v)>k, edges incident to v may be removed, but the process must halt for v if its degree reaches k. Thus, degG(v)k.

Combining these cases, we have degG(v)min{k,degG(v)}.

Now, since χ is a proper coloring of G, v is assigned a color distinct from all its neighbors in G. The number of such neighbors is degG(v). Using our lower bound, the number of neighbors of v in G colored differently than v is at least min{k,degG(v)}. This satisfies the definition of a k-partial coloring.

Our aim now is to prove palette sparsification for the witness graph G. Before proceeding to prove the theorem, we rephrase the palette sparsification theorem for (deg+1)-list coloring [11, Theorem 4] which we will use as a blackbox in our proof.

Theorem 7 (Palette sparsification for (deg+1)-list coloring).

Let G be an n-vertex graph. Suppose each vertex vV(G) is assigned a list L(v) of deg(v)+1 colors. For each vertex v, independently sample a subset L(v)L(v) of size Θ(log2n) uniformly at random. Then, with high probability, there exists a proper coloring

𝒞:V(G)vV(G)L(v)

such that 𝒞(v)L(v) for every vertex vV(G).

Without loss of generality, for Theorem 7, we assume that for each vertex vV, |L(v)|=αlog2n for some fixed constant α and each color in L(v) is independently sampled uniformly at random with replacement from the palette of L(v).

Theorem 8.

Given an n-vertex graph G and a positive integer k, let G be the witness for k-partial coloring of G. Suppose that for every vertex vV(G), we sample a list L(v) of Θ(log2n) colors uniformly at random from the palette [k+1]. Then, with high probability, there exists a proper (k+1)-coloring 𝒞:V(G)[k+1] of G such that 𝒞(v)L(v) for all vV(G).

Proof.

We prove the existence of such a coloring using a two-phase randomized procedure. First, for every vertex vV(G), we split the sampled list L(v) into two disjoint sub-lists L1(v) and L2(v) such that |L1(v)|=C1logn and |L2(v)|=C2log2n for sufficiently large constants C1,C2.

We partition the vertex set V(G) into two sets: S={vV(G)degG(v)>k} and R=V(G)S. By the definition of a witness (specifically the constraint that for every edge {u,v}, min{degG(u),degG(v)}k), no two vertices with degree strictly greater than k can be adjacent. Consequently, S is an independent set in G.

The coloring proceeds in two phases:

  • Phase 1 (Coloring S): We assign colors to vertices in S using only the palettes L1(v).

  • Phase 2 (Coloring R): We extend the coloring to R using the palettes L2(v).

Phase 1: Coloring the Independent Set 𝑺.

We claim that with high probability, S can be properly colored using a subset of colors T[k+1] of size at most k/4, such that for every vS, the assigned color belongs to L1(v)T.

To show this, we construct a bipartite palette graph P=(S[k+1],EP), where an edge {v,c} exists if and only if cL1(v). A subset of colors T[k+1] is said to dominate S in P if every vertex vS has at least one neighbor in T. If such a set T exists, we can define a valid coloring χ1 for S by setting χ1(v)=min{cTL1(v)}. Since S is an independent set, no conflicts can arise between vertices in S regardless of the color choices.

We now show that there exists T[k+1] of size k/4 that dominates S with high probability. Let T be an arbitrarily chosen but fixed subset of [k+1] with |T|=k/4. For any fixed vertex vS, the probability that L1(v)T= is

[L1(v)T=](1|T|k+1)|L1(v)|(114)C1logne0.25C1logn=n0.25C1.

By choosing C1 sufficiently large (e.g., C112), we ensure this probability is at most n3. Taking a union bound over all vertices in S (where |S|n), the probability that there exists any vertex in S not dominated by T is at most nn3=n2. Thus, with high probability, there exists a dominating set T of size k/4, and consequently a valid coloring χ1 for S using only colors from T.

Phase 2: Extending the coloring to 𝑹=𝑽𝑺.

Let χ1 be the coloring of S obtained in Phase 1. Recall that Phase 1 ensures the set of colors used in S, denoted C(S), satisfies |C(S)|k/4.

We extend this coloring to R. For each vertex uR, let Cforb(u)={χ1(v)vNG(u)S} be the set of colors forbidden by neighbors in S. We define the target palette for u as Uu=[k+1]Cforb(u).

Since uR, we know degG(u)k. The number of forbidden colors from S is at most the number of neighbors u has in S, which is degG(u)degR(u). Therefore, it follows easily that |Uu|degR(u)+1 meaning that a valid extension exists if we had access to Uu and coloring R reduces to solving (deg+1)-list coloring.

At this point, we cannot directly apply Theorem 7 to R as it requires that for vertex u, the random list of size at least αlog2n be sampled uniformly from the available palette Uu for some constant α while L2(u) is sampled from [k+1]. Let Leff(u)=L2(u)Uu. We claim that Leff(u) satisfies the that

  1. 1.

    Each color in Leff(u) is uniformly distributed over Uu.

  2. 2.

    |Leff(u)|αlog2n with high probability .

The first item follows immediately from Lemma 3.

Now, we show the second item. Since Cforb(u)C(S) and |C(S)|k/4, we have |Uu|34(k+1). The size |Leff(u)| follows a Binomial distribution B(|L2(u)|,p) with p=|Uu|k+13/4. Fix C2=8α/3. Using a Chernoff bound, with |L2(u)|=(8/3)αlog2n and 𝔼[|Leff(u)|]2αlog2n, the effective list size |Leff(u)| is at least αlog2n with high probability. Applying union bound, this holds to every vertex in R with high probability.

Since for every vertex wR, |Leff(w)| is sufficiently large and conditionally uniform over available palette Uw, we can invoke the Palette Sparsification Theorem on the induced subgraph G[R] with palettes Uw. This guarantees that a valid coloring χ2 consistent with the lists exists with high probability.

We now combine the results of both phases to bound the total failure probability. Let E1 denote the event that Phase 1 successfully colors S with a subset of colors T such that |T|k/4. We established that [E1]1n2.

Conditioned on the occurrence of E1, the coloring χ1 and the forbidden sets Cforb(u) are well-defined. Let E21 denote the event that Phase 2 successfully extends this specific coloring to R using the lists L2. Our analysis in Phase 2 demonstrates that for any fixed successful outcome of Phase 1,

[E21]1nc for some positive integer c.

The event that a valid (k+1)-coloring exists for the entire graph G corresponds to the joint occurrence of both phases succeeding. By the chain rule of probability:

[Success]=[E1][E21](1n2)(1nc)1nO(1).

Thus, with high probability, there exists a proper (k+1)-coloring 𝒞 of G such that 𝒞(v)L(v) for all vV(G).

Algorithm 1 One-pass semi-streaming algorithm for k-partial (k+1)-coloring.

5.2 Algorithm

We now describe our one-pass semi-streaming algorithm for computing a k-partial (k+1)-coloring. Before describing the algorithm, we first define demand-partial list coloring.

Definition 9 (Demand-partial list coloring.).

Let H=(V,F) be a graph and let each vertex vV have a list L(v)[k+1]. Let 𝖽𝖾𝗆𝖺𝗇𝖽:V[k+1] be a demand function. A coloring χ:V[k+1] is a solution to the demand-partial list coloring instance (H,𝖽𝖾𝗆𝖺𝗇𝖽) if

  1. 1.

    χ(v)L(v) for every vV, and

  2. 2.

    for every vertex vV, |{xNH(v):χ(x)χ(v)}|𝖽𝖾𝗆𝖺𝗇𝖽(v).

In other words, 𝖽𝖾𝗆𝖺𝗇𝖽(v) specifies how many neighbors of v in H must end up with a color different from χ(v); we do not require χ to be a proper coloring of H.

5.2.1 Description of the Algorithm

The algorithm knows the parameter k apriori and the input is an insertion-only stream of edges of a n-vertex graph G=(V,E). Let s:=Clog2n for a sufficiently large constant C. Before the stream starts, each vertex vV independently samples a list L(v) of s colors from [k+1] uniformly with replacement. For each vertex vV, the algorithm maintains two counters deg(v) and 𝖿𝗋𝖾𝖾(v) both initialized at 0.

The algorithm has three phases. As an edge {u,v} streams in, the algorithm processes it in two phases. The third phase is post-processing where the final coloring of the graph is computed.

Phase 1: Filtering.

if deg(u)<k or deg(v)<k, the edge {u,v} proceeds to the next phase and the degrees are updated as follows:

deg(u)deg(u)+1,deg(v)deg(v)+1.

If deg(u)k and deg(v)k, the edge is ignored and no state changes.

Phase 2: Sparsification.

Conditioned on passing the filter, the algorithm checks whether the sampled lists are disjoint. If L(u)L(v)=, then regardless of the eventual choices χ(u)L(u) and χ(v)L(v), we necessarily have χ(u)χ(v). Hence this edge does not need to be stored; instead we increment

𝖿𝗋𝖾𝖾(u)𝖿𝗋𝖾𝖾(u)+1,𝖿𝗋𝖾𝖾(v)𝖿𝗋𝖾𝖾(v)+1.

Otherwise, if L(u)L(v), the edge may constrain the final solution and the algorithm stores {u,v}.

Phase 3: Post-Processing.

Let the graph stored after the end of the stream be H=(V,F). For each vertex vV, the algorithm defines the demand as

𝖽𝖾𝗆𝖺𝗇𝖽(v)max{0,min{k,deg(v)}𝖿𝗋𝖾𝖾(v)}.

The algorithm computes offline the coloring χ:V[k+1] for the demand-partial list coloring (H,𝖽𝖾𝗆𝖺𝗇𝖽) where for each vertex vV, χ(v)L(v).

 Remark.

The algorithm works only in the insertion-only framework. The key challenge in adapting it to dynamic setup is the implementation of the filter in Phase 1.

5.2.2 Correctness

Lemma 10.

Let G be the graph consisting of the edges that pass the filter of Algorithm 1. If χ is a k-partial coloring of G, then χ is a k-partial coloring of G.

Proof.

Fix an arbitrary vertex vV. There are two cases.

Case 1: degG(v)<k.

Each edge that arrives and is incident on it passes through the filter. Hence, NG(v)=NG(v) and χ colors both neighborhoods properly w.r.t v and trivially satisfies the condition of valid k-partial coloring on v.

Case 2: degG(v)k.

The first k incident edges in the stream pass through the filter. Hence, degG(v)k. Given that NG(v)NG(v) and χ is a k-partial coloring of G, at least k vertices in NG(v) are also colored differently than v in G satisfying the condition of k-partial coloring.

Lemma 11.

If χ is a k-partial coloring of G such that χ(x)L(x) for all xV(G), then for every vertex vV(G),

|{uNH(v):χ(u)χ(v)}|𝖽𝖾𝗆𝖺𝗇𝖽(v).
Proof.

By the description of the algorithm, at the end of the filtering phase, for each vertex vV(G), degG(v)=deg(v).

Fix a vertex v. Split its neighborhood in G into stored and discarded parts:

NG(v)=NH(v)(NG(v)NH(v)).

For every uNG(v)NH(v) we have L(u)L(v)= by definition of H, and hence χ(u)χ(v). Therefore,

|{uNG(v):χ(u)χ(v)}|=𝖿𝗋𝖾𝖾(v)+|{uNH(v):χ(u)χ(v)}|.

Since χ is k-partial on G, the left-hand side is at least min{k,degG(v)}. Rearranging yields

|{uNH(v):χ(u)χ(v)}| min{k,degG(v)}𝖿𝗋𝖾𝖾(v)
max{0,min{k,degG(v)}𝖿𝗋𝖾𝖾(v)}=𝖽𝖾𝗆𝖺𝗇𝖽(v).

Lemma 12.

With high probability over the sampled lists {L(v)}vV, there exists a coloring χ:V[k+1] such that

  • χ(v)L(v) for all vV, and

  • |{uNH(v):χ(u)χ(v)}|𝖽𝖾𝗆𝖺𝗇𝖽(v) for all vV.

Proof.

Let W be any witness for k-partial coloring of G. By Theorem 8 applied to W, with high probability there exists a proper (k+1)-coloring χ of W such that χ(v)L(v) for all vV.

By Lemma 10, χ is a k-partial coloring of G and is list respecting. Finally, Lemma 11 implies that χ satisfies the demand constraints on H.

Theorem 13.

Algorithm 1 outputs a k-partial (k+1)-coloring of G with high probability.

Proof.

By Lemma 12, with high probability there exists at least one list-respecting coloring χ that satisfies the demand constraints on H. The offline brute-force step finds such a coloring whenever it exists.

Assume the brute-force step outputs such a χ. Then, by construction, χ satisfies the demand constraints on H.

Fix an arbitrary vertex vV. Since every discarded edge of G in the sparsification step of the algorithm has disjoint lists, every neighbor of v which contributes to 𝖿𝗋𝖾𝖾(v) is colored differently than it by χ.
|{uNG(v):χ(u)χ(v)}| 𝖿𝗋𝖾𝖾(v)+𝖽𝖾𝗆𝖺𝗇𝖽(v) 𝖿𝗋𝖾𝖾(v)+max{0,min{k,degG(v)}𝖿𝗋𝖾𝖾(v)}min{k,degG(v)}

Therefore, the constraints of k-partial coloring is satisfied by χ on G and by Lemma 10, χ is a k-partial coloring of G.

5.2.3 Space Guarantee

Lemma 14.

Let G=(V,E) be the graph induced by the edges that pass the filter of Algorithm 1. Then G is k-degenerate.

Proof.

We use the equivalent characterization: a graph is k-degenerate if and only if every non-empty subgraph has a vertex of degree at most k.

Let SV be any non-empty set of vertices and consider the induced subgraph G[S]. Let t be the earliest time (in the stream) at which an edge with both endpoints in S is accepted after every vertex in S has already reached degree at least k in G[S]. We claim that such a time t cannot exist.

Indeed, fix any time during the stream and suppose (for contradiction) that at this time every vertex xS has current degree at least k within G[S]. Then, in particular, each endpoint of any arriving edge {u,v} with u,vS has current degree at least k in the full graph G as well (since degG(x)degG[S](x) for all xS at all times). Therefore the filter condition “degG(u)<k or degG(v)<k” fails, and no further edge with both endpoints in S can ever be accepted into G. This contradicts the definition of t.

Hence, at the end of the stream it cannot be the case that all vertices in S have degree at least k+1 in G[S]. Equivalently, G[S] contains a vertex of degree at most k. Since S was arbitrary, every non-empty induced subgraph of G has a vertex of degree at most k, and therefore G is k-degenerate.

Lemma 15.

Let s=Clog2n. With high probability, |E(H)|=O(nlog4n).

Proof.

Since the graph G is k-degenerate (by Lemma 14), fix a k-degenerate ordering of G and define acyclic orientation of the edges such that every vertex v satisfies outdegG(v)k.

Fix a vertex v. For each out-neighbor u of v in G, the edge {v,u} is stored in H iff L(v)L(u). Conditioned on L(v), these events are independent across different out-neighbors u, and Pr[L(v)L(u)]s2k+1.

Hence outdegH(v) is stochastically dominated by a binomial random variable with k trials and mean at most s2=O(log4n). A Chernoff bound implies that outdegH(v)=O(log4n) with high probability. A union bound over all vV shows that with high probability, every vertex v has outdegH(v)=O(log4n) in this fixed orientation. Therefore H is O(log4n)-degenerate and hence |E(H)|nO(log4n) with high probability.

6 Lower Bound: A Super-Linear Space Barrier

We establish that verifying a k-partial k-coloring requires super-linear space in the semi-streaming model. This stands in sharp contrast to (k+1)-coloring, which we have shown is tractable with O~(n) space. Specifically, we prove the following theorem.

Theorem 16.

For every constant ε0, let G be an n-vertex graph presented as an adversarial insertion-only stream, and let the partial coloring parameter be k=Θ(n13+ε). Any one-pass randomized streaming algorithm 𝒜 that solves k-partial k-coloring on G with probability at least 2/3 requires Ω(n1+13+ε) bits of memory. In particular, for ε=0, the algorithm requires Ω(n4/3) bits.

Our proof is a reduction from the one-way Index communication problem. Before proceeding with the proof, we construct two “gadgets” that force equality or inequality of colors between two vertices using the constraints of k-partial coloring and will be used in the construction of lower bound graphs for the reduction.

Gadgets

For a graph G and two distinct vertices x,yV(G),

  • Edge-gadget ex,y. Introduce a k-clique K={p1,,pk}; connect x to p1,,pk1 and connect y to pk.

  • Color-repeater cx,y. Introduce a (k1)-clique Q={q1,,qk1} and connect both x and y to all vertices of Q.

Lemma 17 (Edge-gadget forces inequality [7]).

In any k-partial k-coloring χ of Gex,y, we have χ(x)χ(y).

Proof.

Consider the clique K={p1,,pk} within the edge gadget. Every vertex pK has degree exactly k in Gex,y. Therefore, by the definition of k-partial coloring, χ is a proper coloring on ex,y. Since K induces a k-clique and the palette has size exactly k, the vertices of K must utilize all k distinct colors. Consequently, the set of colors assigned to the subset {p1,,pk1} consists of exactly k1 distinct colors.

As the vertex x is adjacent to every vertex in {p1,,pk1}, the coloring χ(x) must be the unique remaining color in the palette, which is precisely χ(pk). Since y is adjacent to pk, we must have χ(y)χ(pk) and therefore, χ(x)χ(y)

Lemma 18 (Color-repeater forces equality).

In any k-partial k-coloring χ of Gcx,y, we have χ(x)=χ(y).

Proof.

As the same arguments in lemma 17, the coloring χ is a proper on cx,y and the (k1)-clique Q utilizes k1 distinct colors and therefore, vertices x and y have only one possible color that can be assigned to them and hence, χ(x)=χ(y).

The Reduction from Index

Let Alice hold a boolean string X{0,1}N and Bob hold an index j[N]. We interpret X as a matrix A of dimensions (k1)×, where N=(k1). Bob’s index corresponds to a specific entry (g,h) in this matrix.

Alice and Bob create graph G=(V(G),EAEB) based on A and (g,h) respectively. We now describe the graph G as follows.

Vertex Set.

The vertex set V consists of four disjoint sets of vertices U={u1,,uk1}, V={v1,,vk1}, W={w1,,w} and X which is a set of auxiliary vertices of cardinality O(k3) which would be used to create edge-gadgets or repeater gadgets.

Alice’s stream.
  1. 1.

    For each distinct pair of vertices ui and ui with ii, insert the edge-gadget eui,ui.

  2. 2.

    For each distinct pair of vertices vi and vi with ii, insert the edge-gadget evi,vi.

  3. 3.

    For every i[k1] and h[]: If A[i,h]=1, insert the edge {ui,wh}, else insert the edge {vi,wh}.

Bob’s stream.

For every t[k1]{g}, insert the color-repeater cut,vt and insert the edge-gadget eug,vg.

Alice uses O((k2)) many edge-gadgets (for connecting each pair of vertices in U and V respectively) and Bob uses (k2) many color-repeaters and 1 edge-gadget for his stream. They require O(k3) vertices to build these gadgets and utilize the vertices of X to do so (which has sufficiently many vertices).

Lemma 19.

Let χ be any k-partial k-coloring of the graph G constructed above. Then the following properties hold:

  1. 1.

    The vertices u1,,uk1 receive pairwise distinct colors, and the vertices v1,,vk1 receive pairwise distinct colors.

  2. 2.

    For every t[k1]{g}, we have χ(ut)=χ(vt), while χ(ug)χ(vg).

  3. 3.

    Let α denote the unique color in the palette [k] that does not appear among {χ(u1),,χ(uk1)}. Then χ(vg)=α.

Proof.

The edge-gadgets inserted among the vertices of U={u1,,uk1} enforce χ(ui)χ(ui) for all ii by Lemma 17. The same argument applies to the vertices of V={v1,,vk1}, proving (1).

For every tg, the color-repeater cut,vt enforces χ(ut)=χ(vt) by Lemma 18, while the edge-gadget eug,vg enforces χ(ug)χ(vg). This proves (2).

Since u1,,uk1 receive pairwise distinct colors and the palette has size k, there is a unique color α not appearing among {χ(u1),,χ(uk1)}. For every tg, we have χ(vt)=χ(ut) by part (2), and hence the vertices {vt:tg} use exactly the colors {χ(ut):tg}. As the vertices of V must all receive distinct colors, the color χ(vg) must differ from χ(vt) for every tg, and therefore must differ from all colors in {χ(ut):tg}. Moreover, since χ(ug)χ(vg) by part (2), the color χ(vg) must also differ from χ(ug). It follows that χ(vg) differs from every color in {χ(u1),,χ(uk1)} and the only possible choice is the unique remaining color α, and hence χ(vg)=α proving (3).

Lemma 20 (Forced color at wh).

Let χ be any k-partial k-coloring of G, and let α be the unique color in [k] not appearing among {χ(u1),,χ(uk1)}. Then

A[g,h]=1χ(wh)=χ(vg)=α.
Proof.

By Lemma 19, the vertices u1,,uk1 receive pairwise distinct colors, and χ(vg)=α, where α is the unique color in [k] not appearing among {χ(u1),,χ(uk1)}. In particular, αχ(ug).

By construction, deg(wh)=k1k, hence χ is proper on all edges incident to wh. For each ig, the vertex wh is adjacent to exactly one of ui or vi, and Lemma 19(2) gives χ(ui)=χ(vi). Therefore the neighbors of wh contributed by rows ig realize exactly the k2 distinct colors {χ(ui):ig}.

If A[g,h]=1, then {ug,wh}E, so the neighbors of wh realize all colors in {χ(u1),,χ(uk1)}. Hence the unique color in [k] absent from the neighborhood of wh is α, and therefore χ(wh)=α=χ(vg).

If A[g,h]=0, then {vg,wh}E, so the neighbors of wh realize the set {χ(ui):ig}{α}. The unique missing color is then χ(ug), and hence χ(wh)=χ(ug)χ(vg).

Combining the two cases yields A[g,h]=1χ(wh)=χ(vg).

Proof of Theorem 16.

Assume there exists a one-pass randomized streaming algorithm 𝒜 that, under the promise that the input graph is k-partial k-colorable, outputs such a coloring using S bits of memory with probability at least 2/3.

Alice simulates 𝒜 on her portion of the stream and sends the memory state to Bob. Bob continues the simulation on his portion and obtains a coloring χ.

By Lemma 20, Bob can recover the bit A[g,h] by checking whether χ(wh)=χ(vg) or χ(wh)=χ(ug). Hence this yields a one-way randomized protocol for Index on N=(k1) bits using S bits of communication and success probability at least 2/3. Therefore S=Ω(N).

Let =Θ(k3+ε). Then

n=|U|+|V|+|W|+O(k3)=Θ(k3+ε),N=(k1)=Θ(k4+ε).

Thus k=Θ(n1/(3+ε)) and S=Ω(N)=Ω(n1+13+ε). For ε=0, this gives the bound Ω(n4/3).

References

  • [1] Noga Alon and Sepehr Assadi. Palette sparsification beyond (δ+1) vertex coloring. In Jaroslaw Byrka and Raghu Meka, editors, Approximation, Randomization, and Combinatorial Optimization. Algorithms and Techniques, APPROX/RANDOM 2020, Virtual Conference, August 17-19, 2020, volume 176 of LIPIcs, pages 6:1–6:22. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2020. doi:10.4230/LIPIcs.APPROX/RANDOM.2020.6.
  • [2] Sepehr Assadi, Yu Chen, and Sanjeev Khanna. Sublinear algorithms for (δ + 1) vertex coloring. In Timothy M. Chan, editor, Proceedings of the Thirtieth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2019, San Diego, California, USA, January 6-9, 2019, pages 767–786. SIAM, 2019. doi:10.1137/1.9781611975482.48.
  • [3] Sepehr Assadi, Pankaj Kumar, and Parth Mittal. Brooks’ theorem in graph streams: A single-pass semi-streaming algorithm for δ-coloring. TheoretiCS, 2, 2023. doi:10.46298/THEORETICS.23.9.
  • [4] Sepehr Assadi and Helia Yazdanyar. Simple sublinear algorithms for (δ+1) vertex coloring via asymmetric palette sparsification. In Ioana Oriana Bercea and Rasmus Pagh, editors, 2025 Symposium on Simplicity in Algorithms, SOSA 2025, New Orleans, LA, USA, January 13-15, 2025, pages 1–8. SIAM, 2025. doi:10.1137/1.9781611978315.1.
  • [5] Alkida Balliu, Juho Hirvonen, Christoph Lenzen, Dennis Olivetti, and Jukka Suomela. Locality of not-so-weak coloring. In Keren Censor-Hillel and Michele Flammini, editors, Structural Information and Communication Complexity - 26th International Colloquium, SIROCCO 2019, L’Aquila, Italy, July 1-4, 2019, Proceedings, volume 11639 of Lecture Notes in Computer Science, pages 37–51. Springer, 2019. doi:10.1007/978-3-030-24922-9_3.
  • [6] Suman K. Bera, Amit Chakrabarti, and Prantar Ghosh. Graph coloring via degeneracy in streaming and other space-conscious models. In Artur Czumaj, Anuj Dawar, and Emanuela Merelli, editors, 47th International Colloquium on Automata, Languages, and Programming, ICALP 2020, Saarbrücken, Germany (Virtual Conference), July 8-11, 2020, volume 168 of LIPIcs, pages 11:1–11:21. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2020. doi:10.4230/LIPIcs.ICALP.2020.11.
  • [7] Jan Bok, Avinandan Das, Anna Gujgiczer, and Nikola Jedlicková. Generalizing brooks’ theorem via partial coloring is hard classically and locally. CoRR, abs/2508.16308, 2025. doi:10.48550/arXiv.2508.16308.
  • [8] Daniel W. Cranston and Landon Rabern. Brooks’ theorem and beyond. J. Graph Theory, 80(3):199–225, 2015. doi:10.1002/JGT.21847.
  • [9] Avinandan Das, Pierre Fraigniaud, and Adi Rosén. Distributed partial coloring via gradual rounding. In Alysson Bessani, Xavier Défago, Junya Nakamura, Koichi Wada, and Yukiko Yamauchi, editors, 27th International Conference on Principles of Distributed Systems, OPODIS 2023, Tokyo, Japan, December 6-8, 2023, volume 286 of LIPIcs, pages 30:1–30:22. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2023. doi:10.4230/LIPIcs.OPODIS.2023.30.
  • [10] Joan Feigenbaum, Sampath Kannan, Andrew McGregor, Siddharth Suri, and Jian Zhang. On graph problems in a semi-streaming model. Theor. Comput. Sci., 348(2-3):207–216, 2005. doi:10.1016/J.TCS.2005.09.013.
  • [11] Magnús M. Halldórsson, Fabian Kuhn, Alexandre Nolin, and Tigran Tonoyan. Near-optimal distributed degree+1 coloring. In Stefano Leonardi and Anupam Gupta, editors, STOC ’22: 54th Annual ACM SIGACT Symposium on Theory of Computing, Rome, Italy, June 20 - 24, 2022, pages 450–463. ACM, 2022. doi:10.1145/3519935.3520023.
  • [12] Ian Holyer. The np-completeness of edge-coloring. SIAM J. Comput., 10(4):718–720, 1981. doi:10.1137/0210055.
  • [13] T. S. Jayram, Ravi Kumar, and D. Sivakumar. The one-way communication complexity of hamming distance. Theory Comput., 4(1):129–135, 2008. doi:10.4086/TOC.2008.V004A006.
  • [14] Andrew McGregor. Graph stream algorithms: a survey. SIGMOD Rec., 43(1):9–20, 2014. doi:10.1145/2627692.2627694.
  • [15] Michael Mitzenmacher and Eli Upfal. Probability and Computing: Randomized Algorithms and Probabilistic Analysis. Cambridge University Press, 2 edition, 2017.
  • [16] Moni Naor and Larry J. Stockmeyer. What can be computed locally? In S. Rao Kosaraju, David S. Johnson, and Alok Aggarwal, editors, Proceedings of the Twenty-Fifth Annual ACM Symposium on Theory of Computing, May 16-18, 1993, San Diego, CA, USA, pages 184–193. ACM, 1993. doi:10.1145/167088.167149.