Skip to main content
Log in

Blocking Trails for f-factors of Multigraphs

  • Published:
Algorithmica Aims and scope Submit manuscript

Abstract

Blocking flows were introduced by Dinic (Soviet Math Doklady 11: 1277–1280, 1970) to speed up the computation of maximum network flows. They have been used in algorithms for problems such as maximum cardinality matching of bipartite graphs Hopcroft and Karp (SIAM J Comput 2(4), 225–231, 1973) and general graphs Micali and Vazirani (in: Proceedings of the 21st Annual Symposium on Foundations of Computer Science, 17–27, 1980), maximum weight matching of general graphs Gabow and Tarjan (J ACM 38(4), 815–853, 1991), and many others. The blocking algorithm of Gabow and Tarjan (1991) for matching is based on depth-first search. We extend the depth-first search approach to find f-factors of general multigraphs. Here f is an arbitrary integral-valued function on vertices, an f-matching is a subgraph where every vertex x has degree \(\le f(x)\), an f-factor has equality in every degree bound. A set of blocking trails for an f-matching M is a maximal collection \(\mathcal{A}\) of edge-disjoint augmenting trails such that \(M\bigoplus _{A\in {\mathcal{A}}} A \) is a valid f-matching. Blocking trails are needed in efficient algorithms for maximum cardinality f-matching Huang and Pettie (Algorithmica 84(7): 1952–1992, 2022), maximum weight f-factors/matchings by scaling Duan et al. (In: Proceedings of the 47th International Colloquium on Automata, Languages, and Programming (ICALP 2020), Vol. 168 of LIPIcs, 41:1-41:17, 2020; Gabow (A weight-scaling algorithm for f-factors of multigraphs.arXiv:2010.01102, 2020), and approximate maximum weight f-factors and f-edge covers Huang and Pettie (2022). Since these algorithms find many sets of blocking trails, the time to find blocking trails is a dominant factor in the running time. Our blocking trail algorithm runs in linear time O(m). In independent work and using a different approach, Huang and Pettie (2022) present a blocking trails algorithm using time \(O(m\alpha (m,n))\). As examples of the time bounds for the above applications, an approximate maximum weight f-factor is found in time \(O(m\,\alpha (m,n))\) using Huang and Pettie (2022), and our algorithm eliminates the factor \(\alpha (m,n)\). Similarly a maximum weight f-factor is found in time \(O(\sqrt{\Phi \log \Phi }\, m\,\alpha (m,n)\, \log (\Phi W))\,\) using Huang and Pettie (2022) , (\(\Phi =\sum _{v\in V} f(v)\), W the maximum edge weight) and our algorithm eliminates the \(\alpha (m,n)\) factor, making the time within a factor \(\sqrt{\log {\Phi }}\) of the bound for bipartite multigraphs. The technical difficulty for this work stems from the fact that a fixed vertex can occur many times in a given search. This does not occur in ordinary matching or in algorithms for maximum cardinality or maximum weight f-matching. These multiple occurrences can create a new variant of blossom, the “skew blossom”. Also they can make blossoms become “incomplete”, i.e., partially processed yet still relevant in future searches.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16

Similar content being viewed by others

Notes

  1. An f-matching is not to be confused with a b-matching [19]. This paper never discusses b-matchings since they are a special case of f-matchings.

  2. The base edge of B is not included in E(B).

References

  1. Chen, L., Kyng, R., Liu, Y., Peng, R., Gutenberg, M. P., Sachdeva, S.: Maximum flow and minimum-cost flow in almost-linear time. arXiv:2203.00671 (2022)

  2. Dinic, E.A.: Algorithm for solution of a problem of maximum flow in a network with power estimation. Soviet Math. Doklady 11, 1277–1280 (1970). (In Russian.)

  3. Duan, R., He, H., Zhang, T.: A scaling algorithm for weighted f-factors in general graphs. In: Proceedings of the 47th International Colloquium on Automata, Languages, and Programming (ICALP 2020), Vol. 168 of LIPIcs, 41:1-41:17 (2020)

  4. Edmonds, J.: Paths, trees, and flowers. Canad. J. Math. 17, 449–467 (1965)

    Article  MathSciNet  MATH  Google Scholar 

  5. Even, S., Tarjan, R.E.: Network flow and testing graph connectivity. SIAM J. Comput. 4, 507–518 (1975)

    Article  MathSciNet  MATH  Google Scholar 

  6. Gabow, H.N.: The weighted matching approach to maximum cardinality matching. Fund. Inform. 154(1–4), 109–130 (2017)

    MathSciNet  MATH  Google Scholar 

  7. Gabow, H. N.: A weight-scaling algorithm for \(f\)-factors of multigraphs. arXiv:2010.01102 (2020)

  8. Gabow, H.N.: A data structure for nearest common ancestors with linking. ACM Trans. Algorithms 13(4), 28 (2017)

    Article  MathSciNet  MATH  Google Scholar 

  9. Gabow, H.N.: Data structures for weighted matching and extensions to \(b\)-matching and \(f\)-factors. ACM Trans. Algorithms 14(3), 80 (2018)

    Article  MathSciNet  MATH  Google Scholar 

  10. Gabow, H.N., Tarjan, R.E.: A linear-time algorithm for a special case of disjoint set union. J. Comput. Syst. Sci. 30(2), 209–221 (1985)

    Article  MathSciNet  MATH  Google Scholar 

  11. Gabow, H.N., Tarjan, R.E.: Faster scaling algorithms for network problems. SIAM J. Comput. 18(5), 1013–1036 (1989)

    Article  MathSciNet  MATH  Google Scholar 

  12. Gabow, H.N., Tarjan, R.E.: Faster scaling algorithms for general graph matching problems. J. ACM 38(4), 815–853 (1991)

    Article  MathSciNet  MATH  Google Scholar 

  13. Hopcroft, J., Karp, R.: An \(n^{5 / 2}\) algorithm for maximum matchings in bipartite graphs. SIAM J. Comput. 2(4), 225–231 (1973)

    Article  MathSciNet  MATH  Google Scholar 

  14. Huang, D., Pettie, S.: Approximate generalized matching: \(f\)-matchings and \(f\)-edge covers. Algorithmica 84(7), 1952–1992 (2022)

    Article  MathSciNet  MATH  Google Scholar 

  15. Karzanov, A.V.: On finding maximum flows in network with special structure and some applications. Matematicheskie Voprosy Upravleniya Proizvodstvom 5, 81–94 (1973). (In Russian.)

  16. Lawler, E.L.: Combinatorial Optimization: Networks and Matroids. Holt, Rinehart and Winston, New York (1976)

    MATH  Google Scholar 

  17. Lovász, L., Plummer, M.D.: Matching Theory, North-Holland Mathematic Studies 121. North-Holland, New York (1986)

    Google Scholar 

  18. Micali, S., Vazirani, V. V.: An \(O(\sqrt{|V|} \cdot |E|)\) algorithm for finding maximum matching in general graphs. In: Proceedings of the 21st Annual Symposium on Foundations of Computer Science, 17–27 (1980)

  19. Schrijver, A.: Combinatorial Optimization: Polyhedra and Efficiency. Springer, New York (2003)

    MATH  Google Scholar 

  20. Vazirani, V. V.: A proof of the MV matching algorithm. arXiv:2012.03582v1 (2020)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Harold N. Gabow.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

A Blocking 1-matchings

A Blocking 1-matchings

Figure 17 is a verbatim statement of the blocking algorithm for 1-matching of [6, 12]. It is the jumping off point for our f-factor algorithm.

Fig. 17
figure 17

Depth-first search blocking algorithm for ordinary matching

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Gabow, H.N. Blocking Trails for f-factors of Multigraphs. Algorithmica 85, 3168–3213 (2023). https://doi.org/10.1007/s00453-023-01126-y

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00453-023-01126-y

Keywords

Navigation