Large-girth roots of graphs Anna Adamaszek, Michal Adamaszek DIMAP, University of Warwick, UK STACS 6.03.2010 Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Powers and roots of graphs Definition If H is a graph, its r -th power G = H r is the graph on the same vertex set such that two distinct vertices are adjacent in G if their distance in H is at most r . We call H the r -th root of G . 1 1 2 6 2 6 3 5 3 5 4 H Anna Adamaszek, Michal Adamaszek 4 H2 Large-girth roots of graphs Powers and roots of graphs Definition If H is a graph, its r -th power G = H r is the graph on the same vertex set such that two distinct vertices are adjacent in G if their distance in H is at most r . We call H the r -th root of G . 1 1 2 6 2 6 3 5 3 5 4 H Anna Adamaszek, Michal Adamaszek 4 H2 Large-girth roots of graphs Problems related to graph roots Given a graph G , we can ask: Does G have an r -th root? Is the r -th root of G unique? How to compute the r -th root? Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Problems related to graph roots Given a graph G , we can ask: Does G have an r -th root? Is the r -th root of G unique? How to compute the r -th root? Theorem (R. Motwani, M. Sudan ’94) It is NP-complete to decide if G has a square root. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Problems related to graph roots Given a graph G , we can ask: Does G have an r -th root? Is the r -th root of G unique? How to compute the r -th root? Theorem (R. Motwani, M. Sudan ’94) It is NP-complete to decide if G has a square root. Also: r -th root (Van Bang Le, Ngoc Tuy Nguyen, 2009) But: there is a linear time algorithm to find some r -th tree root of a graph (non-unique). Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Roots with large girth The square root of (C6 )2 is not unique. 1 1 2 6 3 5 1 2 6 3 5 6 , −→ 4 2 3 4 5 4 The same result holds for the r -th root of (C2r +2 )r . Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Roots with large girth The square root of (C6 )2 is not unique. 1 1 2 6 3 5 1 2 6 3 5 2 6 , −→ 4 3 5 4 4 The same result holds for the r -th root of (C2r +2 )r . The square root of (C7 )2 is unique. 1 1 2 2 7 3 6 4 5 −→ 7 3 6 4 5 The same result holds for the r -th root of (C2r +3 )r . Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Roots with large girth and Levenshtein’s conjecture Definition The girth of a graph is the length of its shortest cycle. Conjecture (Levenshtein ’08) A graph has at most one r -th root with girth at least 2r + 3 and no leaves. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Roots with large girth and Levenshtein’s conjecture Definition The girth of a graph is the length of its shortest cycle. Conjecture (Levenshtein ’08) A graph has at most one r -th root with girth at least 2r + 3 and no leaves. “no leaves” restriction necessary value 2r + 3 best possible proved for girth at least 2r + 2d(r − 1)/4e + 1 proof yields an exponential time reconstruction algorithm Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Large girth and r =2 [Farzad et al., STACS ’09] Deciding if G has a square root H of girth at least 4 — NP-complete, of girth at least 6 — constructive polynomial, of girth at least 5 — ???. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Large girth and r =2 [Farzad et al., STACS ’09] Deciding if G has a square root H of girth at least 4 — NP-complete, of girth at least 6 — constructive polynomial, of girth at least 5 — ???. Remark. 2 · 2 + 3 = 7 Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Large girth and r =2 [Farzad et al., STACS ’09] Deciding if G has a square root H of girth at least 4 — NP-complete, of girth at least 6 — constructive polynomial, of girth at least 5 — ???. Remark. 2 · 2 + 3 = 7 Conjecture (Farzad et al., STACS ’09) Deciding if a graph G has an r -th root H with girth ≥ 3r − 1 is polynomial. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Our results, arbitrary r Polynomial time reconstruction of all r -th roots of G with girth ≥ 2r + 3 and no leaves. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Our results, arbitrary r Polynomial time reconstruction of all r -th roots of G with girth ≥ 2r + 3 and no leaves. Deciding if G has any r -th root with girth ≥ 2r + 3 in polynomial time, constructively. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Our results, arbitrary r Polynomial time reconstruction of all r -th roots of G with girth ≥ 2r + 3 and no leaves. Deciding if G has any r -th root with girth ≥ 2r + 3 in polynomial time, constructively. Deciding if G has an r -th root with girth ≥ r + 2 is NP-complete. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Roots with no leaves Task: We know Bx = Br (x) for for each vertex x ∈ H. What can we say about H? Assumption: H has girth ≥ 2r + 3 and no leaves. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Roots with no leaves Task: We know Bx = Br (x) for for each vertex x ∈ H. What can we say about H? Assumption: H has girth ≥ 2r + 3 and no leaves. Bx is a tree, x all leaves at level r . Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Roots with no leaves Task: We know Bx = Br (x) for for each vertex x ∈ H. What can we say about H? Assumption: H has girth ≥ 2r + 3 and no leaves. Bx is a tree, x all leaves at level r . Technique: start locally assume xy is an edge in H, in one step compute all the neighbours for one vertex using information from Bv . Test all initial edges. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Roots with no leaves Task: We know Bx = Br (x) for for each vertex x ∈ H. What can we say about H? Assumption: H has girth ≥ 2r + 3 and no leaves. Bx is a tree, x all leaves at level r . Technique: start locally assume xy is an edge in H, in one step compute all the neighbours for one vertex using information from Bv . Test all initial edges. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Roots with no leaves Task: We know Bx = Br (x) for for each vertex x ∈ H. What can we say about H? Assumption: H has girth ≥ 2r + 3 and no leaves. Bx is a tree, x all leaves at level r . Technique: start locally assume xy is an edge in H, in one step compute all the neighbours for one vertex using information from Bv . Test all initial edges. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Roots with no leaves Task: We know Bx = Br (x) for for each vertex x ∈ H. What can we say about H? Assumption: H has girth ≥ 2r + 3 and no leaves. Bx is a tree, x all leaves at level r . Technique: start locally assume xy is an edge in H, in one step compute all the neighbours for one vertex using information from Bv . Test all initial edges. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs One step — expanding neighbourhoods y x Nx r Bx ∩ By r−1 Bx \ By By \ Bx Bx ∪ By is a tree the leaves are Bx \ By and By \ Bx goal: find Nx Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs One step — expanding neighbourhoods x r y Bx ∩ By r−1 By \ Bx The set R = S v ∈By \Bx Bv is marked in red Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs One step — expanding neighbourhoods x r y Bx ∩ By r−1 By \ Bx R= S v ∈By \Bx Bv G = Bx ∩ By \ R \ {x} Nx ⊆G Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs One step — expanding neighbourhoods x r y Bx ∩ By r−1 By \ Bx S R = v ∈By \Bx Bv G = Bx ∩ By \ R \ {x} S B = Bx ∩ By ∩ v ∈G Bv Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs One step — expanding neighbourhoods x r y Bx ∩ By r−1 By \ Bx S R = v ∈By \Bx Bv G = Bx ∩ By \ R \ {x} S B = Bx ∩ By ∩ v ∈G Bv T Nx = Bx ∩ By ∩ v ∈B Bv \ {x} — neighbours of x Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs General recognition problem Task: We know Bx = Br (x) for for each vertex x ∈ H. What can we say about H? Assumption: H has girth ≥ 2r + 3. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs General recognition problem Task: We know Bx = Br (x) for for each vertex x ∈ H. What can we say about H? Assumption: H has girth ≥ 2r + 3. H looks like: core(H) trees Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Recognizing core and tree vertices Idea: If v is ”close to the bottom” of the tree then Bv ⊆ Bparent(v ) . If v is in the core, Bv is not contained in any Bw . w v Bv ⊆ Bw ∀w Bv * Bw v We can find all tree vertices. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Reconstructing the graph Task: We know Bx = Br (x) for for each vertex x ∈ H. What can we say about H? Assumption: H has girth ≥ 2r + 3 and no leaves. Split the vertices into “core” and “tree” vertices. Find all r -th roots of the core (if Levenshtein’s conjecture holds — only one!) Attach trees to each core: Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Reconstructing the graph Task: We know Bx = Br (x) for for each vertex x ∈ H. What can we say about H? Assumption: H has girth ≥ 2r + 3 and no leaves. Split the vertices into “core” and “tree” vertices. Find all r -th roots of the core (if Levenshtein’s conjecture holds — only one!) Attach trees to each core: core(H) r x determine the partition of “tree vertices” into trees, determine the depths of tree vertices, for each tree solve a tree r -th root problem with additional depth restrictions. Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs Open problems Levenshtein’s conjecture close the gap for polynomial time reconstruction Anna Adamaszek, Michal Adamaszek Large-girth roots of graphs