The CSNePS knowledge representation and reasoning (KRR) system is an implementation of the SNePS 3 knowledge representation specification, and the latest in the line of SNePS KRR systems created by Stuart C. Shapiro. My PhD work involved the implementation of CSNePS, and the design and implementation if its primary reasoning mechanism – Inference Graphs.

CSNePS is released open source under the UB Public License, and is available for download on GitHub.

### Inference Graphs

Inference graphs are a new hybrid natural deduction and subsumption inference mechanism capable of forward, backward, bi-directional, and focused reasoning using concurrent processing techniques. Inference graphs extend a knowledge representation formalism known as propositional graphs, in which nodes represent, among other things, propositions and logical formulas, while edges serve to indicate the roles played by components of the propositions and formulas. Inference graphs add a message passing architecture atop propositional graphs. Channels are added from each term to each unifiable term, through which messages communicating the result of inference or controlling inference are passed. Nodes themselves perform inference operations – combining messages as appropriate and determining when message combinations satisfy the conditions of a rule.

Efficient concurrent processing is achieved by treating message-node pairs as separate tasks which may be scheduled. Scheduling is done using several heuristics combined with a priority scheme. No-longer-necessary tasks can be canceled. Together, these ensure that time spent on inference is used efficiently.

In implementing these types of inference in an efficient way, it is our hope that Inference Graphs (and CSNePS) become a useful tool for both researchers in AI and people who simply need some reasoning for whatever their task may be. One place we think CSNePS might be very useful is in performing more interesting inferences with ontologies than are possible with OWL DL alone. Toward this end we’ve created an OWL->CSNePS converter.

### Read More about CSNePS and Inference Graphs

- Schlegel, D.R. and Shapiro, S.C., Inference Graphs: Combining Natural Deduction and Subsumption Inference in a Concurrent Reasoner.
*Proceedings of the 29th Conference on Artificial Intelligence (AAAI-15)*, AAAI Press/The MIT Press, Menlo Park, CA, 2015, pp. 579–585. - Daniel R. Schlegel, Concurrent Inference Graphs, PhD Dissertation, Department of Computer Science and Engineering, State University of New York at Buffalo, September 3, 2014.
- Schlegel, D.R. and Shapiro, S.C., Inference Graphs: A New Kind of Hybrid Reasoning System.
*Proceedings of the Cognitive Computing for Augmented Human Intelligence Workshop at AAAI-14 (CGAHI@AAAI-14)*, 2014, pp. 38–41. - Schlegel, D.R. and Shapiro, S.C., The ‘Ah Ha!’ Moment: When Possible, Answering the Currently Unanswerable using Focused Reasoning.
*Proceedings of the 36th Annual Conference of the Cognitive Science Society*, July 2014, pp. 1371–1376. - Schlegel, D.R. and Shapiro, S.C., Inference Graphs: A Roadmap.
*Poster Collection of the Second Annual Conference on Advances in Cognitive Systems*, December 2013, pp. 217–234. - Schlegel, D.R. and Shapiro, S.C., Concurrent Reasoning with Inference Graphs. In M. Croitoru, C. Gonzales, S. Rudolph, and S. Woltran, Eds.,
*Graph Structures for Knowledge Representation and Reasoning, Lecture Notes in Artificial Intelligence 8323*, Springer-Verlag, Berlin, 2013, pp. 138-164.