On Bridging Prolog and Python to Enhance an Inductive Logic Programming System
Abstract
Prolog is a programming language that provides a high-level approach to software development. Python is a versatile programming language that has a vast range of libraries including support for data analysis and machine learning tasks. We present a Prolog-Python interface that aims at exploiting Prolog deduction capabilities and Python’s extensive libraries. Our novel interface was built using a divide and conquer methodology. In a first step, we implemented a set of C++ classes that can be matched to Python classes; next, we used an interface generator to export the relevant classes. Finally, we use C code to actually convert between the two realms. In order to demonstrate the usefulness of the interface, we enhance an Inductive Logic Programming System with a visualization capabilities and show how to interface with a standard classifier.
Bibtex
@InProceedings{santoscosta-padl25, author = {V. Santos Costa and M. Areias}, title = {{On Bridging Prolog and Python to Enhance an Inductive Logic Programming System}}, booktitle = {Proceedings of the 27th International Symposium on Practical Aspects of Declarative Languages (PADL 2025)}, pages = {1--17}, number = {15537}, series = {LNCS}, publisher = {Springer}, editor = {Esra Erdem and German Vidal}, month = {January}, year = {2025}, address = {Denver, Colorado, USA}, }
Download Paper
PDF fileSpringer