Recently, independent groups of researchers have presented algorithms to compute a maximum matching in Õ(f (k) • (n + m)) time, for some computable function f , within the graphs where some clique-width upper bound is at most k (e.g., tree-width, modular-width and P4-sparseness). However, to the best of our knowledge, the existence of such algorithm within the graphs of bounded clique-width has remained open until this paper. Indeed, we cannot even apply Courcelle's theorem to this problem directly, because a matching cannot be expressed in M SO1 logic.Our first contribution is an almost linear-time algorithm to compute a maximum matching in any bounded clique-width graph, being given a corresponding clique-width expression. It can be used to also compute the Edmonds-Gallai decomposition. For that, we do apply Courcelle's theorem, but in order to compute the cardinality of a maximum matching rather than the matching itself, via the classic Tutte-Berge formula. To obtain with this approach a maximum matching, we need to combine it with a recursive dissection scheme for bounded clique-width graphs based on the existence of balanced edge-cuts with bounded neighbourhood diversity, and with a distributed version of Courcelle's theorem (Courcelle and Vanicat, DAM 2016) -of which we present here a slightly stronger version than the standard one in the literature -in order to evaluate the Tutte-Berge formula on various subgraphs of the input.Finally, for the bipartite graphs of clique-width at most k, we present an alternative Õ(k 2 •(n+m))time algorithm for the problem. The algorithm is randomized and it is based on a completely different approach than above: combining various reductions to matching and flow problems on bounded tree-width graphs with a very recent result on the parameterized complexity of linear programming (Dong et. al., STOC'21). Our results for bounded clique-width graphs extend many prior works on the complexity of Maximum Matching within cographs, distance-hereditary graphs, series-parallel graphs and other subclasses.
ACM Subject ClassificationTheory of computation → Design and analysis of algorithms; Theory of computation → Graph algorithms analysis