[论文解读] The Complexity of Causality and Responsibility for Query Answers and non-Answers
本文利用Halpern和Pearl的框架,形式化了查询结果与非结果的因果关系与责任度,表明合取查询的因果关系可通过带否定的元组演算在PTIME内计算,而责任度则要么在PTIME内(通过最大流归约),要么为NP完全;在PTIME情况下,其复杂度为L空间完全,表明其无法用元组演算表达。主要贡献在于为责任度建立了复杂度二分法,并为因果关系及PTIME责任度情况提供了高效的计算方法。
An answer to a query has a well-defined lineage expression (alternatively called how-provenance) that explains how the answer was derived. Recent work has also shown how to compute the lineage of a non-answer to a query. However, the cause of an answer or non-answer is a more subtle notion and consists, in general, of only a fragment of the lineage. In this paper, we adapt Halpern, Pearl, and Chockler's recent definitions of causality and responsibility to define the causes of answers and non-answers to queries, and their degree of responsibility. Responsibility captures the notion of degree of causality and serves to rank potentially many causes by their relative contributions to the effect. Then, we study the complexity of computing causes and responsibilities for conjunctive queries. It is known that computing causes is NP-complete in general. Our first main result shows that all causes to conjunctive queries can be computed by a relational query which may involve negation. Thus, causality can be computed in PTIME, and very efficiently so. Next, we study computing responsibility. Here, we prove that the complexity depends on the conjunctive query and demonstrate a dichotomy between PTIME and NP-complete cases. For the PTIME cases, we give a non-trivial algorithm, consisting of a reduction to the max-flow computation problem. Finally, we prove that, even when it is in PTIME, responsibility is complete for LOGSPACE, implying that, unlike causality, it cannot be computed by a relational query.
研究动机与目标
- 在数据库背景下,定义并形式化查询结果与非结果的因果关系与责任度。
- 研究合取查询的因果关系与责任度的计算复杂度。
- 确定因果关系与责任度是否可用元组演算表达,或是否需要更强大的形式化语言。
- 建立责任度复杂度的二分法:根据查询结构,其复杂度为PTIME或NP完全。
- 为因果关系及PTIME责任度情况提供高效算法,包括最大流归约。
提出的方法
- 将Halpern和Pearl的因果框架适配至数据库查询,区分内生元组与外生元组。
- 将因果关系定义为一组最小的内生元组,其变化将改变查询结果。
- 引入责任度作为因果关系程度的度量,按其贡献对因果关系进行排序。
- 将因果关系计算归约为带否定的元组查询,从而实现PTIME评估。
- 对于责任度,将PTIME情况归约为最大流计算,通过四部图构造实现。
- 证明即使在PTIME情况下,责任度仍为L空间完全,从而排除其可用元组演算表达的可能性。
实验结果
研究问题
- RQ1合取查询的因果关系计算复杂度为何?是否可用元组演算表达?
- RQ2责任度如何随查询结构变化?其复杂度为何为PTIME或NP完全?
- RQ3因果关系是否可高效计算?是否可用带否定的元组演算表达?
- RQ4合取查询的责任度是否可用元组演算表达?在PTIME情况下其精确复杂度类为何?
- RQ5在查询因果关系背景下,责任度与最大流计算之间有何关系?
主要发现
- 合取查询的因果关系可通过带否定的元组查询在PTIME内计算,因此可高效计算。
- 合取查询的责任度复杂度为PTIME或NP完全,取决于查询结构,从而确立了复杂度二分法。
- 对于PTIME责任度情况,问题可归约为最大流计算,从而支持高效的算法解决方案。
- 即使责任度在PTIME内,其复杂度为L空间完全,表明其无法用元组演算表达。
- 对于非结果,偶然集大小受查询大小的限制,因此在数据复杂度下责任度为平凡。
- 本文提供了从顶点覆盖到责任度的归约,证明了某些合取查询的责任度为NP难。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。