by Richard Bergmair
Introduction
In this article, we will address the question “How can computer science methods help us to better
understand ethics?”
Ethics, and especially normative ethics, are concerned with finding “criteria for what
is morally right and wrong. Ethics includes the formulation of moral rules” [ 1].
Logic programming is concerned with identifying base facts that are logically true
or false. It includes the formulation of inference rules.
The polymorphy described above sits at the core of this discussion. To
show this more clearly, a type of logic will be established, but instead
of reasoning, and determining whether something is true or false, it will
make moral judgments, telling whether something is good or bad. Some
core thoughts of positivistic and teleological ethics will be formalized
in this logic to give a computational model of telling right from wrong.
A fictional artificial intelligence is discussed, using insights provided by
metamathematics, and the bargaining problem, a philosophical question with wide-ranging implications, will be approached with game theory. But before going into too much detail about how to approach these
subjects from a computer scientist’s point of view, it might be helpful
to briefly review these ethical topics from a classical point of view.
Three Questions, Six Answers
Kenneth Laudon [ 6] uses three “critical distinctions” for organizing the
literature on ethics, which can be viewed as the three big questions of
ethics. The different answers to these questions define a spectrum of
ethical thought.
Question One: What is “goodness?”
Phenomenologist’s answer: It is a higher order, and it is given. One must
understand the abstract concepts of right and wrong, and act accordingly.
Positivist’s answer: It is whatever we make of it. We have to derive ethical principles for ourselves according to our observations of the real world.
Question Two: Does acting ethically correct mean acting according
to certain rules, or acting in a way leading to desired consequences?
Deontologist’s answer: Acting ethically correct, means respecting
one’s duties and obligations. Each single act is itself good or bad, regardless of its consequences.
Teleologist’s answer: An action can be judged only by its consequences. Acting right means acting in such a way that the outcome
is good. There is no act that is a priori good.
Question Three: What is the scope of morality? Is morality subject
to everyone’s individual freedom?
Collectivist’s answer: Ethical standards make sense only if they
equally apply to everyone. A rule like “thou shalt not kill,” that was
subject to the individual’s approval, would be the equivalent of a
rule like “thou shalt not kill, unless it benefits you.”
Individualist’s answer: Nobody should be committed to accepting
ethical standards just out of pure principle or we will end up with
a morality that people ultimately suffer from.
Given this basic, yet vague understanding of ethical principles, one
can develop a more rigorous representation suitable for computation.
Such an attempt quickly presents the problem of undecidability, an
interesting principle with wide-ranging implications.
Explaining Gödel’s incompleteness theorems in detail is beyond the
scope of this article. The interested reader is referred to Kurt Gödel’s
original publication [ 2]. Alternately, Hofstadter’s Pulitzer-Prize-win-ning classic Gödel, Escher, Bach: An Eternal Golden Braid [ 5] and
Smullyan [ 8] make the complex ideas behind this topic accessible.
An Infinitely Long Time Ago...
Consider a thought experiment: A computer program, called GURU,
shall be designed, sent back through time, and started at a point in time
that is infinitely long ago. That program should be capable of telling
right from wrong. Such a program would need a set of ground facts,
axioms, premises, or whatever term fits one’s philosophy of systematic
reasoning. These could be statements telling the machine that something is definitely good or bad. This is not enough, because not every
situation the machine will ever be confronted with can be expected to
appear in the set of ground facts. Therefore some inference rules or
proof techniques would have to be established. The machine would
need them to determine whether “compound-situations,” situations
described in terms of other situations, are good or bad.
GURU would also need an inference engine that systematically combines simple situations, achieving “compound-situations” based on the
inference-rules. Whenever GURU discovers such a situation, it could
store it to an infinite memory, called the scroll of all wisdom. If all of
the ground facts can safely be assumed, all of the inference rules work,
and the inference engine produces correct outputs, then, applying the