An automated reasoner for generating and adjudicating arguments amongst AI agents. The agents are equipped with a novel reasoning framework, termed the Inductive Deontic Cognitive Event Calculus (IDCEC).
See Appendix A of this paper for an introduction to cognitive calculi in general, and Appendix B for a description of the Deontic Cognitive Event Calculus (DCEC). For some early work on IDCEC, see this paper.
ShadowAdjudicator uses a nascent framework for ascribing qualitative uncertainty to agents' beliefs called Cognitive Likelihood. The syntax and semantics of IDCEC are fully fleshed out in a forthcoming doctoral dissertation (May 2023). ShadowAdjudicator implements the syntax and semantics, enabling the automatic generation of arguments in IDCEC. It is supported by the use of ShadowProver as a backend reasoner for the purely deductive components of the logic.
ShadowProver is integrated in this project as a Git submodule. Hence, to make sure you get everything (the code in this repo + the submodule), clone the project using the following command:
git clone --recurse-submodules https://github.com/RAIRLab/ShadowAdjudicator
(For more information about Git submodules, see here.)
The ShadowProver Python API runs inside of a Docker container, so you'll need to install Docker. Any recent version should be fine. Version 3.6.0 is confirmed to work.
To run the demos:
cd prover
cp -r ../adjudicator files/
docker-compose up
Open the last link generated by docker. Then, within JupyterLab, open a Terminal, and run the following. Note that, as is shown below, any scripts in the demos
or diss_examples
directories must be called from the base directory.
bash
python demos/sp_demo.py # Runs a simple proof request using ShadowProver Python API
python demos/demo.py # Runs a simple proof request using ShadowAdjudicator