Natlog: a Lightweight Logic Programming Language with a Neuro-symbolic Touch

09/17/2021
by   Paul Tarau, et al.
0

We introduce Natlog, a lightweight Logic Programming language, sharing Prolog's unification-driven execution model, but with a simplified syntax and semantics. Our proof-of-concept Natlog implementation is tightly embedded in the Python-based deep-learning ecosystem with focus on content-driven indexing of ground term datasets. As an overriding of our symbolic indexing algorithm, the same function can be delegated to a neural network, serving ground facts to Natlog's resolution engine. Our open-source implementation is available as a Python package at https://pypi.org/project/natlog/ .

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/30/2023

Natlog: Embedding Logic Programming into the Python Deep-Learning Ecosystem

Driven by expressiveness commonalities of Python and our Python-based em...
research
12/06/2018

Yaps: Python Frontend to Stan

Stan is a popular probabilistic programming language with a self-contain...
research
05/24/2020

miniKanren as a Tool for Symbolic Computation in Python

In this article, we give a brief overview of the current state and futur...
research
01/20/2019

A tensorized logic programming language for large-scale data

We introduce a new logic programming language T-PRISM based on tensor em...
research
01/15/2017

DyNet: The Dynamic Neural Network Toolkit

We describe DyNet, a toolkit for implementing neural network models base...
research
11/03/2015

Lowering the learning curve for declarative programming: a Python API for the IDP system

Programmers may be hesitant to use declarative systems, because of the a...
research
03/26/2019

SUSI: Supervised Self-Organizing Maps for Regression and Classification in Python

In many research fields, the sizes of the existing datasets vary widely....

Please sign up or login with your details

Forgot password? Click here to reset