How to express and reason about preferences in formal systems has been studied in many disciplines, among them also computer science and artifical intelligence. One formal tool to deal with preferences are choice logics. These are logics that extend classical propositional logic by additional, non-classical, binary connectives. With the help of these choice connectives we can express preferences.
Let us consider a concrete example, namely Qualitative Choice Logic (QCL). The choice connective of QCL is called ordered disjunction, and is written as . Intuitively, F G expresses that is preferable to satisfy F. If this is not possible, then at least G should be satisfied.
More specifically, in choice logics, interpretations do not evaluate formulas to true or false. Instead, interpretations ascribe a natural number, called satisfaction degree, to formulas. This satisfaction degree helps us to rank interpretations: The lower the degree for a given formula, the more preferable the interpretation.
To learn more about QCL, take a look at the original paper:
Also consider the following paper, which discusses alternative semantics for QCL:
Another example for a choice logic is Conjunctive Choice Logic (CCL). In CCL, the choice connective is called ordered conjunction, written as . The intuition behind F G is that, if possible, both F and G should be satisfied. If this is not possible, at least F should be satisfied. Again, CCL uses satisfaction degrees to rank interpretations.
To learn more about CCL, take a look at the original paper:
We have already discussed two examples of choice logics. In fact, QCL and CCL were the first two choice logics to be described in the literature. But there is no reason to limit ourselves to only these two logics.
There are many more choice connectives one can think of. For example, what if we want to express exclusive disjunctive preference: If possible, satisfy the first option. If not, satisfy the second. But in contrast to QCL, satisfying the first and second option is not allowed. Or we could combine two choice logics into a new choice logic. Using both the choice connectives of QCL and CCL could make specifications easier in some cases.
For this reason, we are aiming to provide a framework for choice logics, i.e. a formal system that describes exactly what a choice logic is or is not. This system should definitely encapsulate both QCL and CCL, and will therefore also use the notion of satisfaction degrees.
Under the following link, you can see how choice logics can be encoded in Answer Set Programming (ASP), and how problems, such as finding preferred models, can be solved: