PyILP is a novel, user-friendly Python interface for an Inductive Logic Programming (ILP) system designed specifically for teaching relational machine learning and facilitating comparisons between different algorithms. This innovative interface allows users to easily engage with ILP concepts and methodologies in an interactive environment. Within this package, we have incorporated two distinct ILP algorithms: Aleph and Metagol .
PyGol is a novel Inductive Logic Programming(ILP) system based on Meta Inverse Entailment(MIE) using Python programming language. MIE is similar to Mode-Directed Inverse Entailment (MDIE) but does not require mode declarations. MIE can be applied to tabular and relational datasets with minimal user intervention or parameter settings. In MIE, each hypothesis clause is derived from a meta theory generated automatically from background knowledge. Meta theory can also be viewed as a higher-order language bias that defines the hypothesis space.
Reference paper
Efficient Abductive Learning of Microbial Interactions Using Meta Inverse Entailment In Proc. of the 31th Int. Conf. on Inductive Logic Programming, 127-141, Springer, 2023 (Best Application Paper Award).
NumLog is an Inductive Logic Programming (ILP) system designed for feature range discovery. NumLog generates quantitative rules with clear confidence bounds to discover feature-range values from examples.
Prolog2 is an implementation of second-order SLD-Resolution, The basis of Meta-Interpretive learning. Gaining efficiency from the compiled nature of the Rust programming language and the lack of meta-interpretation used in other MIL approahces.