We study the enumeration of answers to Unions of Conjunctive Queries (UCQs) with optimal time guarantees. More precisely, we wish to identify the queries that can be solved with linear preprocessing time and constant delay. Despite the basic nature of this problem, it was shown only recently that UCQs can be solved within these time bounds if they admit free-connex union extensions, even if all individual CQs in the union are intractable with respect to the same complexity measure. Our goal is to understand whether there exist additional tractable UCQs, not covered by the currently known algorithms. As a first step, we show that some previously unclassified UCQs are hard using the classic 3SUM hypothesis, via a known reduction from 3SUM to triangle listing in graphs. As a second step, we identify a question about a variant of this graph task which is unavoidable if we want to classify all self-join free UCQs: is it possible to decide the existence of a triangle in a vertex-unbalanced tripartite graph in linear time? We prove that this task is equivalent in hardness to some family of UCQs. Finally, we show a dichotomy for unions of two self-join-free CQs if we assume the answer to this question is negative. Our conclusion is that, to reason about a class of enumeration problems defined by UCQs, it is enough to study the single decision problem of detecting triangles in unbalanced graphs. Without a breakthrough for triangle detection, we have no hope to find an efficient algorithm for additional unions of two self-join free CQs. On the other hand, if we will one day have such a triangle detection algorithm, we will immediately obtain an efficient algorithm for a family of UCQs that are currently not known to be tractable.
翻译:我们用最佳时间保证来研究对Congnective Queries(UCQs)联盟的解答。 更准确地说, 我们希望找出可以通过线性预处理时间和持续延迟来解决的解答。 尽管这个问题的基本性质, 但直到最近才显示, 如果允许自由connex 联盟扩展, 即便联盟中的所有单个 CQs 都难以与同一复杂度相适应 。 我们的目标是了解是否存在额外的可移植的 CUQ, 而目前已知的算法没有覆盖。 作为第一步, 我们发现一些先前未分类的 3SUM 假设很难用经典的 3SUM 假设解决 。 尽管这个问题的基本性质, 但直到最近才显示, CQQQ 可以在这些时间里找到一个可调控的三角, 而我们也可以在直线性时间里程里找到一个可调的错位。 我们之所以能够决定如何在另一个直线性三角曲线上找到一个可调的三角形, 我们证明这个任务在直径直径直径直的 Q 上,, 如果这个任务与我们的直径直径直径直的 C- c- c- 是一个直径直系问题, 直系, 直系是我们的一个问题。