Conjunctive queries with self-joins, towards a fine-grained complexity analysis
The complexity of evaluating conjunctive queries without self-joins is well understood: Acyclicity is the boundary for being able to test whether there is a solution in linear time, and free-connexity is the boundary for being able to compute the set of solutions in linear input + output time. Moreover, free-connex acyclic queries can be enumerated with constant delay. In the presence of self-joins, the situation is not that clear. All the upper-bounds mentioned above remain, but not the lower bounds. We provide preliminary results for the fine-grained complexity analysis of the evaluation of conjunctive queries with self-joins. We settle the case of queries with arity two or less and for queries with cyclic cores. We also provide a toolbox that can be used to show hardness or easiness of queries with self-joins. We illustrate the toolbox by identifying tractable cases that were not known to be efficiently solvable and identifying sufficient conditions for hardness.
READ FULL TEXT