There is a newer version of this record available.

Software Open Access

rio: Reasoner for Input/Output Logic

Alexander Steen

Input/Output (I/O) logics have been devised by D. Makinson and L. van der Torre as a class of formal systems for norm-based deontic reasoning. Intuitively, they formalize the detachment process of obligations (referred to as the output) from a given set of conditional norms and a specific situation (called the input). It differs from other deontic logics (e.g., based on modal logics or extensions of it) in the sense that the norms themselves are not part of the object logic and hence do not carry truth values. Constrained I/O logic extend plain I/O logics by restricting the output set to be consistent with respect to a given set of formulas, addressing deontic paradoxes such as contrary-to-duty situations and other dilemmas.

In the standard formulation, there are four different (unconstrained) output operators called out1, out2, out3 and out4. out1 allows for basic detachment, out2 adds reasoning-by-cases principles, and out3 and out4 augment out1 and out2, respectively, with (cumulative) transitivity.

The Tool

rio provides a TPTP-aligned automated reasoning system for unconstrained and constrained I/O logics basid on the outi operators, 1 ≤ i ≤ 4. It is implemented as a Scala application and based on the scala-tptp-parser.

In short, the system allows you to specify a set of conditional norms and a number of inputs (each of which describing aspects of the current situational context), and provides automated means for inferring whether given obligations (also encoded as formulas) can be derived. rio can also be used to infer the set of detached obligations instead of checking detachment of given ones.

See the README for details.


rio is distributed under the BSD 3-Clause license (see LICENSE file), and uses third party libraries that are distributed under their own terms (see LICENSE-3RD-PARTIES file).

Files (85.2 kB)
Name Size
85.2 kB Download
All versions This version
Views 8733
Downloads 52
Data volume 430.3 kB170.4 kB
Unique views 6523
Unique downloads 52


Cite as