On Applications of Weighted Linear Parity

Yusuke Kobayashi1, Yutaro Yamaguchi2 1. University of Tsukuba, Japan 2. Osaka University, Japan

JH 2017 @Budapest May 22, 2017 Applications of Linear Matroid Parity

• Maximum Forests in 3-Uniform [Lovász 1980]

• Maximum Disjoint 풮-paths [Lovász 1980][Schrijver 2003] • Minimum Pinning-Down Points to Make Planar Structures Rigid [Lovász 1980] • Minimum Feedback Vertex Sets in (Sub)Cubic Graphs [Ueno–Kajitani–Gotoh 1988] • Maximum-Genus Embedding of Graphs [Furst–Gross–McGeoch 1988] etc. Analogy in Weighted Situations?

Some Problem Linear Matroid Parity

Unweighted Polytime Polytime via (Cardinality) [Lovász 1978] ver. Reduction

Weighted Polytime?? Polytime ??? ver. [Iwata–Kobayashi 2017] (Also Announced by [Pap 2013]) Outline • Preliminaries • Disjoint 풮-paths – Background – Extension Trick • Feedback Vertex Sets in (Sub)Cubic Graphs – Background – Extension Trick • Conclusion Outline • Preliminaries (What is Difficult?) • Disjoint 풮-paths – Background – Extension Trick • Feedback Vertex Sets in (Sub)Cubic Graphs – Background – Extension Trick • Conclusion Linear

Given 푍 ∈ 퐅푟×2푚: with Lines (Pairing of Columns)

Find Maximum Number of Linearly Independent Lines

1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 Column 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 2 Full Rank 0 0 0 0 1 0 0 2 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 Weighted Linear Matroid Parity Problem

Given 푍 ∈ 퐅푟×2푚: Matrix with Lines (Pairing of Columns) 푤: 푚 → 퐑 Weight on Lines Find Parity Base of Minimum Weight

Line Subset consistng of a Basis ⟺ 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 Non- 0 0 1 0 0 0 0 0

0 0 0 1 0 0 0 0 singular 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 2 0 0 0 0 1 0 0 2 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 4 < 6 ퟐ ퟑ 1 −ퟏ ퟐ ퟑ ퟏ −1 Reduction Sketch (Unweighted Case)

Reduce Some Problem Linear Matroid Parity

Original Instance Construct Solve Solve

Column

Solution Full Rank Reconstruct Reduction Sketch (Unweighted Case)

Reduce Some Problem Linear Matroid Parity

Original Instance Construct What We Optimal ⟸ Max. Cardinality Need Column

Solution Full Rank Reconstruct General Difficulty

• Solution Correspondence may NOT be One-to-One • Weights of Solutions may NOT be Preserved

Original L.M.P. Problem Opt. Max. Card. General Difficulty

• Solution Correspondence may NOT be One-to-One • Weights of Solutions may NOT be Preserved

Opt. Weight Original L.M.P. Problem Opt. Weight

푤Org ≠ 푤LMP Outline • Preliminaries • Disjoint 풮-paths – Background – Extension Trick • Feedback Vertex Sets in (Sub)Cubic Graphs – Background – Extension Trick • Conclusion Overview on Cardinality Maximization P

Disjoint 풮-paths Solved via L.M.P. [Lovász 1978, 1980] [Schrijver 2003]

푡 푠 Disjoint Non-bipartite 푠–푡 Paths Matching

Bipartite Matching Overview on Cost Minimization

Disjoint 풮-paths Open for a long time

P 푡 푠 Disjoint Non-bipartite 푠–푡 Paths Matching Min-Cost Flow Weighted Matching (Integral) Assignment Problem Bipartite Matching Overview on Cost Minimization P Solved via Disjoint 풮-paths Weighted L.M.P.

푡 푠 Disjoint Non-bipartite 푠–푡 Paths Matching Min-Cost Flow Weighted Matching (Integral) Assignment Problem Bipartite Matching 퐴-paths and 풮-paths

퐺 = 푉, 퐸 : Undirected Graph 퐴 ⊆ 푉: Terminal Set

퐴-paths ∈ 퐴 NOT 퐴-paths ∉ 퐴 퐴-paths and 풮-paths

퐺 = 푉, 퐸 : Undirected Graph 퐴 ⊆ 푉: Terminal Set

풮 = 퐴1, 퐴2, … , 퐴푘 : Partition of 퐴

풮-paths ∈ 퐴 NOT 풮-path ∉ 퐴 퐴2 퐴2

퐴1 퐴1

퐴3 퐴3 Disjoint 풮-paths Problem

Given 퐺 = 푉, 퐸 : Undirected Graph 퐴 ⊆ 푉: Terminal Set, 풮: Partition of 퐴

Find Maximum Number of Vertex-Disjoint 풮-paths including Terminals Shortest Disjoint 풮-paths Problem

Given 퐺 = 푉, 퐸 : Undirected Graph 퐴 ⊆ 푉: Terminal Set, 풮: Partition of 퐴

ℓ: 퐸 → 퐑≥0 Edge Length, 푘 ∈ 퐙>0 Find Totally Shortest 푘 Vertex-Disjoint 풮-paths

Ex. ℓ ≡ ퟏ 푘 = 2

2 + 2 = 4 < 5 = 2 + 3 Disjoint 풮-paths → Linear Matroid Parity [Lovász 1980][Schrijver 2003] Reduce Disjoint 풮-paths Linear Matroid Parity

Construct Solve Solve

Column

Full Rank Reconstruct Disjoint 풮-paths → Linear Matroid Parity [Lovász 1980][Schrijver 2003] Thm. ∀ 퐺 = 푉, 퐸 , 퐴, 풮 , ∃ L.M.P. Instance s.t. • The Line set is the Edge set 퐸 • 퐹 ⊆ 퐸 is Feasible if and only if – the Subgraph 퐺 퐹 is a Forest, and – each has at most one 퐴-path, which is an 풮-path

Column

⟺ Full Rank Disjoint 풮-paths → Linear Matroid Parity [Lovász 1980][Schrijver 2003] Thm. ∀ 퐺 = 푉, 퐸 , 퐴, 풮 , ∃ L.M.P. Instance s.t. • The Line set is the Edge set 퐸 • 퐹 ⊆ 퐸 is Feasible if and only if – the Subgraph 퐺 퐹 is a Forest, and – each tree has at most one 퐴-path, which is an 풮-path

Max. #(This Type) ⟸ Max. Card.

Column

⟺ Full Rank Disjoint 풮-paths → Linear Matroid Parity [Lovász 1980][Schrijver 2003] Thm. ∀ 퐺 = 푉, 퐸 , 퐴, 풮 , ∃ L.M.P. Instance s.t. • The Line set is the Edge set 퐸 • 퐹 ⊆ 퐸 is Feasible if and only if – the Subgraph 퐺 퐹 is a Forest, and – each tree has at most one 퐴-path, which is an 풮-path Total Length of 풮-paths & Dotted Edges = Weight

Column

⟺ Full Rank Outline • Preliminaries • Disjoint 풮-paths – Background – Extension Trick (Constructing Auxiliary Instance) • Feedback Vertex Sets in (Sub)Cubic Graphs – Background – Extension Trick • Conclusion Construction of Auxiliary Graph • 퐴 − 2푘 Extra Terminals to Rescue Unused Terminals (Because we want to Find 푘 Vertex-Disjoint 풮-paths) • An Extra 풮-path to Rescue Unused Non-terminals (ALL Extra Edges are of Length 0) 퐴 푉 ∖ 퐴 Construction of Auxiliary Graph • 퐴 − 2푘 Extra Terminals to Rescue Unused Terminals (Because we want to Find 푘 Vertex-Disjoint 풮-paths) • An Extra 풮-path to Rescue Unused Non-terminals (ALL Extra Edges are of Length 0) 퐴 푉 ∖ 퐴 Construction of Auxiliary Graph • 퐴 − 2푘 Extra Terminals to Rescue Unused Terminals (Because we want to Find 푘 Vertex-Disjoint 풮-paths) • An Extra 풮-path to Rescue Unused Non-terminals (ALL Extra Edges are of Length 0) 퐴 푉 ∖ 퐴 Construction of Auxiliary Graph • 퐴 − 2푘 Extra Terminals to Rescue Unused Terminals (Because we want to Find 푘 Vertex-Disjoint 풮-paths) • An Extra 풮-path to Rescue Unused Non-terminals (ALL Extra Edges are of Length 0) 퐴 푉 ∖ 퐴

Non- ⟸ singular

Min. Weight Construction of Auxiliary Graph • 퐴 − 2푘 Extra Terminals to Rescue Unused Terminals (Because we want to Find 푘 Vertex-Disjoint 풮-paths) • An Extra 풮-path to Rescue Unused Non-terminals (ALL Extra Edges are of Length 0) 퐴 푉 ∖ 퐴

Non- ⟸ singular

Min. Total Length = Min. Weight of 풮-paths Summary on Disjoint 풮-paths

Constructing Auxiliary Instance (by Adding Weight-0 Elements)

• Shortest Disjoint 풮-paths Problem is solved in Polytime via Weighted L.M.P. • This result can be extended to Packing Non-zero 퐴-paths in Group-Labeled Graphs under some Group Representability Condition [Y. 2016] Outline • Preliminaries • Disjoint 풮-paths – Background – Extension Trick • Feedback Vertex Sets in (Sub)Cubic Graphs – Background – Extension Trick • Conclusion Problem

Given 퐺 = 푉, 퐸 : Undirected Graph

Find Feedback Vertex Set of Minimum Cardinality 푋 ⊆ 푉 s.t. 퐺 − 푋 is a Forest Minimum-Weight F.V.S. Problem

Given 퐺 = 푉, 퐸 : Undirected Graph

푤: 푉 → 퐑≥0 Weight on Vertices Find Feedback Vertex Set of Minimum Weight

Ex. 푤 ≡ 푑퐺 ( of Vertices)

3 + 3 + 4 = 10 < 11 = 7 + 4 Minimum-Weight F.V.S. Problem

Given 퐺 = 푉, 퐸 : Undirected Graph, 푤: 푉 → 퐑≥0 Find Feedback Vertex Set of Minimum Weight

• NP-Hard even when 푤 ≡ ퟏ ‒ (Unweighted), and [Garey–Johnson 1977] ‒ 퐺 is Planar with 푑퐺 ≤ ퟒ

• Polytime via L.M.P. when 푤 ≡ ퟏ and 푑퐺 ≤ ퟑ (Subcubic) [Ueno–Kajitani–Gotoh 1988] • Polytime 2-Approximation in General [Bafna‒Berman‒Fujito 1999] F.V.S. in (Sub)Cubic Graphs → L.M.P. [Ueno–Kajitani–Gotoh 1988] 푑퐺 ≡ ퟑ Reduce F.V.S. in Cubic Graphs Linear Matroid Parity

Construct Solve Solve

Column

Full Rank Reconstruct F.V.S. in (Sub)Cubic Graphs → L.M.P. [Ueno–Kajitani–Gotoh 1988] Thm. ∀퐺 = 푉, 퐸 : Cubic, ∃ L.M.P. Instance s.t. • The Line set is the Vertex set 푉 • If 푌 ⊆ 푉 is Optimal, then – each 2-(edge)-conn. comp. of 퐺 − 푌 is a , – min 푋 ∣ 푋: F.V.S. in 퐺 = 푌 + # Cycles in 퐺 − 푌

Max. Card.

Column

⟸ Full Rank F.V.S. in (Sub)Cubic Graphs → L.M.P. [Ueno–Kajitani–Gotoh 1988] Thm. ∀퐺 = 푉, 퐸 : Cubic, ∃ L.M.P. Instance s.t. • The Line set is the Vertex set 푉 • If 푌 ⊆ 푉 is Optimal, then – each 2-(edge)-conn. comp. of 퐺 − 푌 is a Cycle, – min 푋 ∣ 푋: F.V.S. in 퐺 = 푌 + # Cycles in 퐺 − 푌

Min.-Card. F.V.S. Max. Card. Reconstruct Column

⟸ Full Rank Outline • Preliminaries • Disjoint 풮-paths – Background – Extension Trick • Feedback Vertex Sets in (Sub)Cubic Graphs – Background – Extension Trick (Using Alternative Formulations) • Conclusion Alternative Characterization [Ueno–Kajitani–Gotoh 1988] Thm. ∀퐺 = 푉, 퐸 : Cubic, ∃ L.M.P. Instance s.t. • The Line set is the Vertex set 푉 • If 푌 ⊆ 푉 is Optimal, then – each 2-(edge)-conn. comp. of 퐺 − 푌 is a Cycle, – min 푋 ∣ 푋: F.V.S. in 퐺 = 푌 + # Cycles in 퐺 − 푌

Max. Card.

Column

⟸ Full Rank Alternative Characterization [Ueno–Kajitani–Gotoh 1988] Obs. ∀퐺 = 푉, 퐸 : Cubic, ∃ L.M.P. Instance s.t. • The Line set is the Vertex set 푉 • 푋 ⊆ 푉 is a F.V.S. in 퐺 ⟺ 푋 is a Spanning Line Subset

Contains a Base (NOT necessarily Parity Base)

Row

⟺ Full Rank Alternative Characterization [Ueno–Kajitani–Gotoh 1988] Obs. ∀퐺 = 푉, 퐸 : Cubic, ∃ L.M.P. Instance s.t. • The Line set is the Vertex set 푉 • 푋 ⊆ 푉 is a F.V.S. in 퐺 ⟺ 푋 is a Spanning Line Subset

Contains a Base (NOT necessarily Parity Base) ⟺ 푉 − 푋 is Independent in the Dual Matroid

Row

⟺ Full Rank Alternative Characterization

Obs. ∀퐺 = 푉, 퐸 : Cubic, ∃ L.M.P. Instance s.t. • The Line set is the Vertex set 푉 • 푋 ⊆ 푉 is a F.V.S. in 퐺 ⟺ 푉 − 푋 is Feasible

Fact. Dual of 퐅-representable Matroid is 퐅-representable

Min.-Weight. F.V.S. ⟸ Max. Weight

Column

⟺ Full Rank Equivalent Formulations of Weighted L.M.P.

Given 푍 ∈ 퐅푟×2푚: Matrix with Lines (Pairing of Columns) 푤: 푚 → 퐑 Weight on Lines

Min.-Weight Negating Parity Base & Lifting up Duplicating by Suff. Large Const.

Max.-Weight Dual Min.-Weight Indep. Lines Spanning Lines Equivalent Formulations of Weighted L.M.P.

Given 푍 ∈ 퐅푟×2푚: Matrix with Lines (Pairing of Columns) 푤: 푚 → 퐑 Weight on Lines

Min.-Weight Negating Parity Base & Lifting up Duplicating

Max.-Weight Dual Matroids Min.-Weight Indep. Lines Spanning Lines Summary on F.V.S. in (Sub)Cubic Graphs

Using Alternative Formulations of Weighted Linear Matroid Parity

• Minimum-Weight F.V.S. Problem in Subcubic Graphs is solved in Polytime via Weighted L.M.P. • In fact, our reduction can be regarded as Finding Maximum Forests in 3-Uniform Hypergraphs, which reduces to L.M.P. in Unweighted case [Lovász 1980] Outline • Preliminaries • Disjoint 풮-paths – Background – Extension Trick • Feedback Vertex Sets in (Sub)Cubic Graphs – Background – Extension Trick • Conclusion Conclusion

• Weighted L.M.P. is Very Powerful to show Tractability

• Two General Strategies to Extend Applications of L.M.P. to Weighted Situations – Construct Auxiliary Instance (with Weight-0 Elements) – Use Alternative Formulations of Weighted L.M.P.

• Some Tricky or Other-type Applications?? – Like, e.g., Shortest Path & 푇-join → Weighted Matching? – Derive Min-Max Duality or Polyhedral Property? Appendix Duplicating of L.M.P. Instance

푧1 푧2 ퟎ ퟎ 푧1 ퟎ 푧2 ퟎ

푧1 푧2

ퟎ ퟎ 푧1 푧2 ퟎ 푧1 ퟎ 푧2 푤 푤 0 or 2푤 Original Duplicated Instance Feasible × 2 ⟸ Restriction of Parity Base Spanning × 2 ⟸ Parity Base