Hostname: page-component-848d4c4894-nr4z6 Total loading time: 0 Render date: 2024-05-13T14:02:50.737Z Has data issue: false hasContentIssue false

A framework for compiling preferences in logic programs

Published online by Cambridge University Press:  10 March 2003

JAMES P. DELGRANDE
Affiliation:
School of Computing Science, Simon Fraser University, Burnaby, B.C., Canada V5A 1S6 (e-mail: jim@cs.sfu.ca)
TORSTEN SCHAUB
Affiliation:
Institut für Informatik, Universität Potsdam, Postfach 90 03 27, D–14439 Potsdam, Germany (e-mail: torsten@cs.uni-potsdam.de)
HANS TOMPITS
Affiliation:
Institut für Informationssysteme 184/3, Technische Universität Wien, Favoritenstraße 9–11, A–1040 Vienna, Austria (e-mail: tompits@kr.tuwien.ac.at)

Abstract

We introduce a methodology and framework for expressing general preference information in logic programming under the answer set semantics. An ordered logic program is an extended logic program in which rules are named by unique terms, and in which preferences among rules are given by a set of atoms of form s [pr ] t where s and t are names. An ordered logic program is transformed into a second, regular, extended logic program wherein the preferences are respected, in that the answer sets obtained in the transformed program correspond with the preferred answer sets of the original program. Our approach allows the specification of dynamic orderings, in which preferences can appear arbitrarily within a program. Static orderings (in which preferences are external to a logic program) are a trivial restriction of the general dynamic case. First, we develop a specific approach to reasoning with preferences, wherein the preference ordering specifies the order in which rules are to be applied. We then demonstrate the wide range of applicability of our framework by showing how other approaches, among them that of Brewka and Eiter, can be captured within our framework. Since the result of each of these transformations is an extended logic program, we can make use of existing implementations, such as dlv and smodels. To this end, we have developed a publicly available compiler as a front-end for these programming systems.

Type
Research Article
Copyright
© 2003 Cambridge University Press

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)