The problem with constraints is that people violate them. They violate them, and either they get away with it or they pay the penalty: Don’t press the alarm signal button improperly. But if you do, then be prepared to pay a £50fine.
Logically it doesn’t make sense. Formulating a constraint as a conditional with conclusion false, is supposed to prevent the conditions of the constraint from becoming true. It doesn’t make sense to have additional constraints that apply only when the conclusion false has been derived.
This problem has been studied in philosophical logic in the form of Chisholm’s paradox (Chisholm,1963). The paradox is usually formulated in some form of deontic logic, but it can be also formulated in terms of constraints. Here is an informal statement of the paradox:
It ought to be that Jones goes to assist his neighbors.
It ought to be that if Jones goes, then he tells them he is coming. If Jones doesn’t go, then he ought not tell them he is coming. Jones doesn’t go.
In standard deontic logic, these statements imply the paradoxical conclusions: Jones ought to tell them he is coming.
Jones ought not to tell them he is coming.
Almost all deontic logics are modal logics, in which ought is a logical con- nective with the same logical status as and, or, if and not. But in abductive logic programming (ALP), which is the basis of the Computational Logic that we use in this book, obligations and prohibitions are represented by means of integrity constraints, which include maintenance goals and constraints. Here is a repre- sentation of the paradox in ALP terms:
Goals: jones goes.
if jones goes then jones tells.
if jones stays and jones tells then false. if jones stays and jones goes then false. Belief: jones stays.
Thefirst sentence is an achievement goal. In a more complete version of the story it might have been derived by means of a maintenance goal, such as if a person needs help and jones can help then jones goes.
The second sentence is neither a maintenance goal nor a conventional con- straint, but is nonetheless a typical integrity constraint. Viewed in database terms, it imposes the restriction that whenever the database contains a record that jones goes then it also contains a record that jones tells. Viewed in ALP/ planning terms, it imposes the restriction that any plan that includes the action jones goes also includes the action jones tells.
The third and fourth sentences are contraints. The fourth sentence expresses that staying is the contrary of going, and the third sentence constrains Jones from both staying (not going) and telling.
Thefifth sentence expresses that Jones doesn’t go as a positive atomic fact. Not only does the collection offive sentences together imply the conclusion false, but thefirst, fourth and fifth sentences alone imply false. In other words, Jones ought to go, but doesn’t. In the ALP representation the second and third sentences serve no function at all.
Constraints and violations of constraints are similar to rules and exceptions. The primary constraint is like a general rule, and remedial constraints that deal with violations are like exceptions. We have seen that, in the case of ordinary rules and exceptions, inconsistency can be avoided by adding an explicit condition to the general rule stating that no exception applies. We can try to solve the paradox of constraints and their violation similarly. In Jones’ case, for example, we can add to the primary constraint an extra condition, for example that jones is not irresponsible:
if a person needs help and jones can help and jones is not irresponsible then jones goes.
Several solutions of this kind have been developed and explored, both in the context of defeasible deontic logic (Nute,1997) and in repairing violations of integrity constraints in databases (Bertossi and Chomicki, 2003). They also arise more generally in computing, for example when a program malfunctions and corrective measures need to be applied. The existence of practical solutions to these problems in computing suggests that similar solutions exist in a more logical setting. However, the investigation of these solutions is yet another problem that is beyond the scope of this book.
Conclusions
The Prisoner’s Dilemma shows that it pays for an agent to value the interests of other agents, and to include those interests in its judgements of the utility of its actions. More generally, the Prisoner’s Dilemma and similar examples show that an agent’s decisions can be judged not only for their consequences for the agent alone, but for the good of society as a whole. Such concern for the general good of society seems to be the basis of human intuitions about morality.
In the Prisoner’s Dilemma, moral values can be catered for relatively simply by including the interests of other agents in judgements of utility. And according to consequentialism and utilitarianism, these judgements are sufficient to deter- mine the moral status of an agent’s decisions in general. However, according to
the proponents of the principle of double effect, they do not fully account for human moral intuitions, nor for the normative role of distinctions between ends, means and side-effects in thefield of law.
Psychological studies of moral intuitions about trolley problems show that people instinctively judge an agent’s actions both for their motivations and for their consequences. We have seen that Computational Logic provides a model of agency in which such moral intuitions can be explained. The model shows that, in situations where knowledge and time are limited, an agent may not be able to judge and compare the expected utilities of all the relevant consequences of its alternative candidate actions. In cases such as these, the agent can use constraints to avoid actions that are deemed to be morally unacceptable.
The application of Computational Logic to Computational Morality in gen- eral and to the trolley problem in particular has been investigated by Luis Pereira (Pereira and Saptawijaya, 2007, 2009). Although in this chapter we have used Computational Logic to justify moral intuitions concerning the principle of double effect, it does not follow that Computational Logic is restricted to modelling or justifying only one moral theory, or to modelling only one analysis of trolley problems. Its conceptual framework of goals, subgoals, constraints and consequences is morally neutral and can be used for many purposes, for better or for worse.