Forgetting – or variable elimination – is an operation that allows the removal, from a knowledgebase, of middle variables no longer deemed relevant. In recent years, many different approachesfor forgetting in Answer Set Programming have been proposed, in the form of specificoperators, or classes of such operators, commonly following different principles and obeyingdifferent properties. Each such approach was developed to address some particular view onforgetting, aimed at obeying a specific set of properties deemed desirable in such view, but acomprehensive and uniform overview of all the existing operators and properties is missing. Inthis article, we thoroughly examine existing properties and (classes of) operators for forgettingin Answer Set Programming, drawing a complete picture of the landscape of these classes offorgetting operators, which includes many novel results on relations between properties andoperators, including considerations on concrete operators to compute results of forgettingand computational complexity. Our goal is to provide guidance to help users in choosing theoperator most adequate for their application requirements.
展开▼