Weighted counting of k-matchings is #W[1]-hard Markus Bläser, Radu Curticapean Saarland University, Computational Complexity Group
counting (perfect) matchings since 1976 and counting. biadjacency matrix 𝐴 of bipartite 𝐺 𝑝𝑒𝑟𝑚 𝐴 =#𝑃𝑒𝑟𝑓𝑀𝑎𝑡𝑐ℎ(𝐺) 𝒅𝒆𝒕 𝑨 = 𝜎∈ 𝑆 𝑛 𝑠𝑔𝑛 𝜎 1≤𝑖≤𝑛 𝑎 𝑖,𝜎 𝑖 𝒑𝒆𝒓𝒎 𝑨 = 𝜎∈ 𝑆 𝑛 1≤𝑖≤𝑛 𝑎 𝑖,𝜎 𝑖 considered intractable poly-time computable 1967 #Planar-PerfMatch ≤ 𝑃 𝑑𝑒𝑡 (Fisher, Kasteleyn) 1976 definition of #𝑷, hardness of 𝑝𝑒𝑟𝑚 (Valiant) 1989 FPRAS for permanent (Jerrum, Sinclair) 2004 parameterized counting complexity (Flum, Grohe) 2007 #Match on planar G of Δ=3 is #P-hard. (Xia et al.)
parameterized counting parameterized problems input (𝑥,𝑘) with parameter 𝑘 typically solvable in time 𝒏 𝑶(𝒌) or time 𝒇(𝒌)𝒏 𝑶(𝟏) count 𝑘-vertex covers: 𝑂(𝑛 𝑘 )→ 𝑂(2 𝑘 𝑛) →… count 𝑘-cliques: 𝑂 𝑛 𝑘 →𝑂( 𝑛 𝜔 3 𝑘 ) →𝑭𝑷𝑻? define class #W[1] as closure of 𝑘−#𝐶𝑙𝑖𝑞𝑢𝑒𝑠 under… fpt-turing reduction 𝑨 ≤ 𝒇𝒑𝒕 𝑻 𝑩: solves 𝐴(𝑥,𝑘) in time 𝑓 𝑘 𝑛 𝑂(1) with oracle for 𝐵 queries B(𝑥′,𝑘′) have 𝑘 ′ ≤𝑔(𝑘) 𝐗𝐏 𝐅𝐏𝐓
„simple“ substructure known results „simple“ graph „simple“ substructure in: graph 𝐺, 𝒌∈ℕ par: 𝒌 out: #VertexCover s 𝒌 𝐺 for MSOL formula 𝜑(𝑆) in: graph 𝐺 par: treewidth 𝑮 , out: #sets 𝑆 with (𝐺,𝑆)⊨𝜑 𝑘−Clique 𝑘−#Clique 𝑘−Cycle 𝑘−#Cycle 𝑘−Path 𝑘−#Path in: graph 𝐺 par: genus(𝑮) out: #𝑃𝑀(𝐺) 𝑘−Match 𝑘−#Match
our result status of 𝑘−#𝑀𝑎𝑡𝑐ℎ? 𝑘−#𝒘𝑀𝑎𝑡𝑐ℎ is #𝑊 1 -hard. „hardness of permanent“ in fpt-world also: 𝑘−𝑀𝑎𝑡𝑐ℎ∈𝑃 in: edge-weighted bipartite G, 𝑘∈ℕ out: 𝑀∈𝑀𝑎𝑡𝑐 ℎ 𝑘 [𝐺] 𝑒∈𝑀 𝑤(𝑒) 𝑘−#𝒘𝑀𝑎𝑡𝑐ℎ is #𝑊 1 -hard. proof by series of reductions
partial path-cycle covers k-partial cycle cover { C 1 ,…, C t } of cycles vertex-disjoint k edges in total k-partial path-cycle cover { C 1 ,…, C t } of paths and cycles … 𝒞 𝑘 [𝐺] 𝒫𝒞 𝑘 [𝐺]
𝟏 𝟐 reduction chain 𝑘−#𝑤𝑀𝑎𝑡𝑐ℎ 𝑘−#𝑤𝑃𝐶𝐶 𝑘−#𝐶𝐶 in: weighted bipartite G, 𝑘∈ℕ out: 𝑀∈ ℳ 𝑘 [𝐺] 𝑒∈𝑀 𝑤(𝑒) 𝑘−#𝑤𝑃𝐶𝐶 in: weighted digraph G, 𝑘∈ℕ out: 𝐶∈ 𝒫𝒞 𝑘 [𝐺] 𝑒∈𝐶 𝑤(𝑒) 𝑘−#𝐶𝐶 in: digraph G, 𝑘∈ℕ out: #𝑘−partial cycle covers of 𝐺
matchings ≥ 𝒇𝒑𝒕 𝑻 path-cycle covers standard reduction G S(G) split in out (𝑢,𝑣) { 𝑢 𝑜𝑢𝑡 , 𝑣 𝑖𝑛 } 𝓟 𝓒 𝒌 𝑮 ≅ 𝓜 𝒌 𝑺 𝑮 implies 𝐶∈𝒫𝒞 𝐺 𝑒∈𝐶 𝑤(𝑒) = 𝑀∈ℳ 𝐺 𝑒∈𝑀 𝑤(𝑒)
𝟏 𝟐 reduction chain 𝑘−#𝑤𝑀𝑎𝑡𝑐ℎ 𝑘−#𝑤𝑃𝐶𝐶 𝑘−#𝐶𝐶 in: weighted bipartite G, 𝑘∈ℕ out: 𝑀∈ ℳ 𝑘 [𝐺] 𝑒∈𝑀 𝑤(𝑒) 𝑘−#𝑤𝑃𝐶𝐶 in: weighted digraph G, 𝑘∈ℕ out: 𝐶∈ 𝒫𝒞 𝑘 [𝐺] 𝑒∈𝐶 𝑤(𝑒) 𝑘−#𝐶𝐶 in: digraph G, 𝑘∈ℕ out: #𝑘−partial cycle covers of 𝐺
path-cycle covers ≥ 𝒇𝒑𝒕 𝑻 cycle covers analysis via path-cycle polynomial 𝛾 𝐺;𝑥 ≔ 𝐶∈𝒫𝒞 𝐺 𝑥 𝐶 𝑤 𝐶 transform 𝐺↦ 𝐺 𝑏 by gadgets b -b b -b b -b b -b -b b recipe for path-cycle covers in 𝐺 𝑏 path-cycle cover 𝑪 in 𝐺 as core at path ends: add nothing or at isolated vts: add nothing or or b -b b -b 𝛾 𝐺 𝑏 ;𝑥 = 𝐶∈𝒫𝒞 𝐺 𝑥 𝐶 (1+𝑏𝑥) #𝑝𝑎𝑡ℎ 𝐶 (1+𝑏𝑥−𝑏𝑥) #𝑖𝑠𝑜𝑙 𝐶 interpolation along 𝑏 allows to track out paths
𝟏 𝟐 reduction chain 𝑘−#𝐶𝐶 𝑘−#𝑡𝑦𝑝𝑈𝐶𝑊 𝑘−#𝐶𝑙𝑖𝑞𝑢𝑒𝑠 in: digraph G, 𝑘∈ℕ out: #𝑘−partial cycle covers of 𝐺 𝑘−#𝑡𝑦𝑝𝑈𝐶𝑊 in: digraph G, type 𝜃, 𝑘∈ℕ out: #k−UCWs of G with type 𝜃 𝑘−#𝐶𝑙𝑖𝑞𝑢𝑒𝑠 in: graph G, 𝑘∈ℕ out: #𝑘−cliques of 𝐺
cycle-like structures for tuple 𝑊, let 𝒮 𝑊 ≔{cyclic shifts of W} CW 𝑊=𝒮(𝑇) cycle 𝐶=𝒮(𝑇) no repeating vts. UCW 𝑊 1 ,…, 𝑊 𝑡 closed walk 𝑣 1 , …, 𝑣 𝑘−1 , 𝑣 1
types of UCWs 𝑓 𝑈 𝑣 ≔ #visits of 𝑈 at 𝑣 similar to types of cyclic walks defined by Flum, Grohe 𝑓 𝑈 𝑣 ≔ #visits of 𝑈 at 𝑣 2 3 1 type 𝜃 𝑈 = 𝑓 𝑈 𝑣 1 ,…, 𝑓 𝑈 ( 𝑣 𝑛 ) 1 size 𝑘=8 𝜃= 0,1,1,1,2,3 (omitting 0s is fine) 1 size 𝑘=4 𝜃= 0,0,1,1,1,1 size 𝑘=9000 𝜃= 9000
typed UCWs ≥ 𝒇𝒑𝒕 𝑻 cliques proof adapted from Flum, Grohe In G, replace all edges by , and add . Want to count induced subgraphs isomorphic to 𝐾≔ 𝐾 𝑘 . Consider set 𝒰 of UCWs of type 𝜃 𝑘,𝑙 := 𝑙,…,𝑙 in G. k Partition 𝒰 according to visited vertices 𝑆∈ 𝑉 𝑘 . Note: If 𝐺 𝑆 ≃𝐺 𝑆 ′ , then „same“ UCWs in 𝑆 and 𝑆′. Partition 𝒰 according to isomorphism type of 𝐺 𝑆 , which is some graph 𝐻 on 𝑘 vertices.
typed UCWs ≥ 𝒇𝒑𝒕 𝑻 cliques graph H of order k in host graph G 𝛽 (𝑙) ≔#UCWs of type 𝜃 𝑘,𝑙 in 𝐺 𝛽 𝐻 (𝑙) ≔#UCWs of type 𝜃 𝑘,𝑙 in 𝐻 𝑥 𝐻 ⋅ 𝛽 𝐻 (𝑙) G 𝑥 𝐻 ≔#copies of 𝐻 in 𝐺 H 𝛽 (𝑙) = 𝐻∈ 𝐺𝑟𝑎𝑝ℎ𝑠 𝑘 𝑥 𝐻 ⋅ 𝛽 𝐻 (𝑙)
typed UCWs ≥ 𝒇𝒑𝒕 𝑻 cliques 𝛽 (𝑙) ≔#UCWs of type 𝜃 𝑘,𝑙 in 𝐺 oracle call 𝛽 𝐻 (𝑙) ≔#UCWs of type 𝜃 𝑘,𝑙 in 𝐻 oracle call 𝑥 𝐻 ≔#isomorphic copies of 𝐻 in 𝐺 𝒙 𝑲 wanted 𝛽 𝐻 1 (1) ⋯ 𝛽 𝐾 (1) ⋮ ⋱ ⋮ 𝛽 𝐻 1 (𝑙) ⋯ 𝛽 𝐾 (𝑙) 𝑥 𝐻 1 ⋮ 𝒙 𝑲 = 𝛽 1 ⋮ 𝛽 𝑙 𝛽 (𝑙) = 𝐻∈ 𝐺𝑟𝑎𝑝ℎ𝑠 𝑘 𝑥 𝐻 ⋅ 𝛽 𝐻 (𝑙) prove that this column is lin. indep. for some 𝑙=𝑓(𝑘)
reduction chain in: graph G, 𝑘∈ℕ in: weighted bipartite G, 𝑘∈ℕ out: #𝑘−cliques of 𝐺 in: weighted bipartite G, 𝑘∈ℕ out: 𝑀∈ ℳ 𝑘 [𝐺] 𝑒∈𝑀 𝑤(𝑒) in: digraph G, type 𝜃, 𝑘∈ℕ out: #k−UCWs of G with type 𝜃 in: weighted digraph G, 𝑘∈ℕ out: 𝐶∈ 𝒫𝒞 𝑘 [𝐺] 𝑒∈𝐶 𝑤(𝑒) in: digraph G, 𝑘∈ℕ out: #𝑘−partial cycle covers of 𝐺
future work in: graph G, 𝑘∈ℕ in: weighted bipartite G, 𝑘∈ℕ out: #𝑘−cliques of 𝐺 in: weighted bipartite G, 𝑘∈ℕ out: 𝑀∈ ℳ 𝑘 [𝐺] 𝑒∈𝑀 𝑤(𝑒) in: digraph G, type 𝜃, 𝑘∈ℕ out: #k−UCWs of G with type 𝜃 in: weighted digraph G, 𝑘∈ℕ out: 𝐶∈ 𝒫𝒞 𝑘 [𝐺] 𝑒∈𝐶 𝑤(𝑒) in: digraph G, 𝑘∈ℕ out: #𝑘−partial cycle covers of 𝐺