Let G = (V,E) be a simple graph with n vertices and m edges and let its maximum vertex degree be ∆. The edge coloring problem for G is to assign colors to the edges of G such that all edges sharing a common vertex have different colors. The objective is to use as few colors as possible to color G. This paper presents a fast NC algorithm for edge coloring G with ∆ + q/k + 1 colors, where q is the number of subgraphs containing odd cycles in Π, k is a fixed integer with k ≥ 1, q ≤ d∆/2e, and Π = {G1, G2, . . . , Gd∆/2e} is a partition of G(V,E) such that ∪ d∆/2e i=1 Gi = G and the maximum vertex degree of each Gi is at most 2. The algorithm runs in O((2k) log n+ log n log∆) time using O(m+n) processors on a CREW PRAM. In particular, when G contains C odd cycles and C is a constant, it follows that edge coloring G with at most ∆+ q/2+1 colors is in NC, and q ≤ C/2. By generalizing the above algorithm, we obtain a parallel algorithm for edge coloring G with ∆+b∆/2c+3 colors. The proposed algorithm requires O(T (n, 2∆) + log n log∆) time using O(∆P (n, 2∆)) processors on a PRAM, where T (n,∆) is the time complexity of the fastest known parallel algorithm to edge-color a graph of n vertices with ∆ + 1 colors using P (n,∆) processors on a PRAM, where 0 < α < 1. Compared with an earlier result, our algorithm runs as fast as that algorithm with the same number of processors in the big O sense, but reduces the number of colors by an additive term 3∆/2− 3. The parallel computational models used are the CREW PRAM in which concurrent read is allowed but concurrent write is forbidden, and the CRCW PRAM in which both concurrent read and concurrent write are allowed.

@inproceedings{LiangParallelAE,
title={Parallel Approximate Edge Coloring Revisited},
author={Weifa Liang and George Havas and A. Street}
}