Skip to main content

Modelling Moral Reasoning and Ethical Responsibility with Logic Programming

  • Conference paper
  • First Online:
Logic for Programming, Artificial Intelligence, and Reasoning (LPAR 2015)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9450))

Included in the following conference series:

Abstract

In this paper, we investigate the use of high-level action languages for representing and reasoning about ethical responsibility in goal specification domains. First, we present a simplified Event Calculus formulated as a logic program under the stable model semantics in order to represent situations within Answer Set Programming. Second, we introduce a model of causality that allows us to use an answer set solver to perform reasoning over the agent’s ethical responsibility. We then extend and test this framework against the Trolley Problem and the Doctrine of Double Effect. The overarching aim of the paper is to propose a general and adaptable formal language that may be employed over a variety of ethical scenarios in which the agent’s responsibility must be examined and their choices determined. Our fundamental ambition is to displace the burden of moral reasoning from the programmer to the program itself, moving away from current computational ethics that too easily embed moral reasoning within computational engines, thereby feeding atomic answers that fail to truly represent underlying dynamics.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Anderson, M., Anderson, S.: Machine Ethics. Cambridge University Press, Cambridge (2011)

    Book  Google Scholar 

  2. Beauchamp, T., Childress, J.: Principles of Biomedical Ethics. Oxford University Press, New York (2001)

    Google Scholar 

  3. Beebee, H., Hitchcock, C., Menzies, P.: The Oxford Handbook of Causation. Oxford University Press, New York (2009)

    Book  Google Scholar 

  4. Feinberg, J.: Doing & Deserving Essays in The Theory of Responsibility. Princeton University Press, Princeton (1970)

    Google Scholar 

  5. Foot, P.: The problem of abortion and the doctrine of the double effect. In: Applied Ethics: Critical Concepts in Philosophy, vol. 2, p. 187 (2002)

    Google Scholar 

  6. Gelfond, M.: Answer sets. Found. Artif. Intell. 3, 285–316 (2008)

    Article  Google Scholar 

  7. Gelfond, M., Lifschitz, V.: Classical negation in logic programs and disjunctive databases. New Gener. Comput. 9, 365–385 (1991)

    Article  Google Scholar 

  8. Halpern, J., Hitchcock, C.: Actual causation and the art of modelling. In: Dechter, R., Geffner, H., Halpern, J. (eds.) Heuristics, Probability, and Causality (2010)

    Google Scholar 

  9. Halpern, J., Pearl, J.: Causes and explanations: a structural-model approach. Part I: causes. Br. J. Philos. Sci. 56(4), 843–887 (2005)

    Article  MATH  MathSciNet  Google Scholar 

  10. Hopkins, M., Pearl, J.: Causality and counterfactuals in the situation calculus. J. Logic Comput. 17(5), 939–953 (2007)

    Article  MATH  MathSciNet  Google Scholar 

  11. Horty, J.: Defeasible deontic logic. In: Nute, D. (ed.) Nonmonotonic Foundations for Deontic Logic. Springer, The Netherlands (1997)

    Chapter  Google Scholar 

  12. Hume, D.: A Treatise of Human Nature. Courier Corporation, Mineola (2012)

    Google Scholar 

  13. Kamm, F.M.: The doctrine of triple effect and why a rational agent need not intend the means to his end: Frances M. Kamm. Aristotelian Soc. Suppl. 74, 21–39 (2000)

    Article  Google Scholar 

  14. Kment, B.: Modality and Explanatory Reasoning. Oxford University Press, Oxford (2014)

    Book  Google Scholar 

  15. Kowalski, R.: Computational Logic and Human Thinking: How To Be Artificially Intelligent. Cambridge University Press, Cambridge (2011)

    Book  Google Scholar 

  16. Kowalski, R., Sergot, M.: A logic-based calculus of events. In: Schmidt, J.W., Thanos, C. (eds.) Foundations of Knowledge Base Management, pp. 23–55. Springer, Heidelberg (1989)

    Chapter  Google Scholar 

  17. Lee, J., Palla, R.: Reformulating the situation calculus and the event calculus in the general theory of stable models and in answer set programming. J. Artif. Intell. Res. 43(1), 571–620 (2012)

    MATH  MathSciNet  Google Scholar 

  18. Lévy, F., Quantz, J.: Representing beliefs in a situated event calculus. In: Proceedings of the 13th European Conference on Artificial Intelligence. Citeseer (1997)

    Google Scholar 

  19. Liao, S.M.: The loop case and Kamm’s doctrine of triple effect. Philos. Stud. 146(2), 223–231 (2009)

    Article  Google Scholar 

  20. Locke, J.: Two Treatises of Government. C. and J. Rivington, London (1824)

    Google Scholar 

  21. Mikhail, J.: Universal moral grammar: theory, evidence and the future. Trends Cogn. Sci. 11(4), 143–152 (2007)

    Article  Google Scholar 

  22. Miller, R., Shanahan, M.: Some alternative formulations of the event calculus. In: Kakas, A.C., Sadri, F. (eds.) computational logic: logic programming and beyond. LNCS (LNAI), vol. 2408, p. 452. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  23. Mueller, E.T.: Commonsense Reasoning: An Event Calculus Based Approach. Elsevier Science, Amsterdam (2014)

    Google Scholar 

  24. Pearl, J.: Causal diagrams for empirical research. Biometrika 82(4), 669–688 (1995)

    Article  MATH  MathSciNet  Google Scholar 

  25. Pearl, J.: Causality: models, reasoning, and inference. Econometric Theo. 19, 675–685 (2003)

    Google Scholar 

  26. Pereira, L.M., Saptawijaya, A.: Modelling morality with prospective logic. In: Neves, J., Santos, M.F., Machado, J.M. (eds.) EPIA 2007. LNCS (LNAI), vol. 4874, pp. 99–111. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  27. Pereira, L.M., Saptawijaya, A.: Moral decision making with ACORDA. In: Short Paper LPAR, vol. 7 (2007)

    Google Scholar 

  28. Ridley, A.: Beginning Bioethics: A Text with Integrated Readings. Bedford, New York (1998)

    Google Scholar 

  29. Singer, P.: Ethics and intuitions. J. Ethics 9(3–4), 331–352 (2005)

    Article  Google Scholar 

  30. Sosa, E., Tooley, M.: Causation, vol. 27. Oxford University Press, Oxford (1993)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Fiona Berreby .

Editor information

Editors and Affiliations

A Appendix

A Appendix

The rules ‘1{occurs(push(group3, main(2)), T), occurs(switch, T)}1:- T=0.’ and ‘:- occurs(A, T), impermissible(A, T).’ generate one stable model that corresponds to the permissible switch action.

initiates(switch, on(train, side(0)), 0).

initiates(run(train, main(0)), on(train, main(1)), 0).

initiates(run(train, side(0)), on(train, side(1)), 1).

initiates(run(train, side(1)), on(train, side(2)), 2).

initiates(run(train, side(2)), on(train, side(3)), 3).

occurs(switch, 0).

occurs(run(train, main(0)), 0).

occurs(run(train, side(0)), 1).

occurs(run(train, side(1)), 2).

occurs(run(train, side(2)), 3).

occurs(crash(group2, side(3)), 4).

overtaken(run(train, main(1)), 1).

overtaken(run(train, side(3)), 4).

prevents(switch, crash(group1, main(4))).

terminates(switch, on(train, main(0)), 0).

terminates(crash(group2, side(3)), alive(group2), 4).

terminates(crash(group2, side(3)), on(train, side(3)), 4).

permissible(switch, 0).

Disabling the second rule (‘:- occurs(A, T), impermissible(A, T).’) allows us to look at the stable model for the impermissible push action:

initiates(push(group3, main(2)), on(group3, main(2)), 0).

initiates(run(train, main(0)), on(train, main(1)), 0).

initiates(run(train, main(1)), on(train, main(2)), 1).

occurs(run(train, main(0)), 0).

occurs(push(group3, main(2)), 0).

occurs(run(train, main(1)), 1).

occurs(crash(group3, main(2)), 2).

overtaken(run(train, main(2)), 2).

prevents(crash(group3, main(2)), crash(group1, main(4))).

terminates(crash(group3, main(2)), alive(group3), 2).

terminates(crash(group3, main(2)), on(train, main(2)), 2).

impermissible(push(group3, main(2)), 0).

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Berreby, F., Bourgne, G., Ganascia, JG. (2015). Modelling Moral Reasoning and Ethical Responsibility with Logic Programming. In: Davis, M., Fehnker, A., McIver, A., Voronkov, A. (eds) Logic for Programming, Artificial Intelligence, and Reasoning. LPAR 2015. Lecture Notes in Computer Science(), vol 9450. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-48899-7_37

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-48899-7_37

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-662-48898-0

  • Online ISBN: 978-3-662-48899-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics