# A Formalization of Kant's Second Formulation of the Categorical Imperative

arXiv: https://arxiv.org/abs/1801.03160 · HTML: https://mlsanity.com/paper/1801.03160/

## Key facts

- Cited by 5 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 9 Jan 2018.

## Built on by (most cited first, 5 of 5)

- [Addressing Moral Uncertainty using Large Language Models for Ethical Decision-Making](https://mlsanity.com/paper/2503.05724/) (2025)
- [Action Languages Based Actual Causality for Computational Ethics: a Sound and Complete Implementation in ASP](https://mlsanity.com/paper/2205.02919/) (2022)
- [Technology and Consciousness](https://mlsanity.com/paper/2209.03956/) (2022)
- [Automated Kantian Ethics: A Faithful Implementation](https://mlsanity.com/paper/2207.10152/) (2022)
- [Formalizing Kantian Ethics: Formula of the Universal Law Logic (FULL)](https://mlsanity.com/paper/2604.14254/) (2026)

## Abstract (arXiv)

We present a formalization and computational implementation of the second formulation of Kant's categorical imperative. This ethical principle requires an agent to never treat someone merely as a means but always also as an end. Here we interpret this principle in terms of how persons are causally affected by actions. We introduce Kantian causal agency models in which moral patients, actions, goals, and causal influence are represented, and we show how to formalize several readings of Kant's categorical imperative that correspond to Kant's concept of strict and wide duties towards oneself and others. Stricter versions handle cases where an action directly causally affects oneself or others, whereas the wide version maximizes the number of persons being treated as an end. We discuss limitations of our formalization by pointing to one of Kant's cases that the machinery cannot handle in a satisfying way.
