Answer Set Programming (ASP) emerged in the late 1990ies as a paradigm for Knowledge Representation and Reasoning. The attractiveness of ASP builds on an expressive high-level modeling language along with the availability of powerful off-the-shelf solving systems. While the utility of incorporating aggregate expressions in the modeling language has been realized almost simultaneously with the inception of the first ASP solving systems, a general semantics of aggregates and its efficient implementation have been long-standing challenges. Aggregates have been proposed and widely used in database systems, and also in the deductive database language Datalog, which is one of the main precursors of ASP. The use of aggregates was, however, still restricted in Datalog (by either disallowing recursion or only allowing monotone aggregates), while several ways to integrate unrestricted aggregates evolved in the context of ASP. In this survey, we pick up at this point of development by presenting and comparing the main aggregate semantics that have been proposed for propositional ASP programs. We highlight crucial properties such as computational complexity and expressive power, and outline the capabilities and limitations of different approaches by illustrative examples.
翻译:在1990年代后期,作为知识代表性和合理性范例的问答程序(ASP)出现于1990年代后期。ASP的吸引力以显性高层次的建模语言为基础,加上强大的现成解答系统的可用性。虽然在第一个ASP解答系统的启动时几乎同时实现了将综合表达形式纳入建模语言的效用,但总体的语义及其有效实施一直是长期存在的挑战。在数据库系统以及作为ASP主要前身之一的扣减数据库语言数据中,已经提出并广泛使用综合内容。然而,在Datalog中,综合内容的使用仍然受到限制(要么不允许重复,要么只允许单调汇总),而将非限制的总量纳入在ASP范围内演进的几种方法。在本次调查中,我们通过介绍和比较为Patial ASP方案提议的主要总体语义,从这一发展阶段开始。我们强调计算复杂性和明确能力等关键特性,并以示例概述不同方法的能力和局限性。