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

Paul Tarau
(University of North Texas)

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/ .

In Andrea Formisano, Yanhong Annie Liu, Bart Bogaerts, Alex Brik, Veronica Dahl, Carmine Dodaro, Paul Fodor, Gian Luca Pozzato, Joost Vennekens and Neng-Fa Zhou: Proceedings 37th International Conference on Logic Programming (Technical Communications) (ICLP 2021), Porto (virtual event), 20-27th September 2021, Electronic Proceedings in Theoretical Computer Science 345, pp. 141–154.
Published: 17th September 2021.

ArXived at: https://dx.doi.org/10.4204/EPTCS.345.27 bibtex PDF
References in reconstructed bibtex, XML and HTML format (approximated).
Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org