Neurosymbolic Programming with Scallop
Install Tutorial

Language

Scallop is a declarative language designed to support rich symbolic reasoning in AI applications. It is based on Datalog, a logic rule-based query language for relational databases.

Solver

Scallop is a scalable Datalog solver equipped with support for discrete, probabilistic, and differentiable modes of reasoning. These modes are configurable to suit the needs of different AI applications.

Framework

Scallop provides bindings to support logic reasoning modules within Python programs. As a result, Scallop can be deeply integrated with existing PyTorch machine learning pipelines.

Wide Range of Applications

Scallop can be used to develop a wide variety of applications in vision and NLP that involve symbolic reasoning. The reasoning component is specified via logic rules which can then be deeply integrated with machine learning models, such as convolutional neural networks and transformers.