A framework for the integration (embedding) of Logic Programming in external systems for generic applications. It helps developers at designing and implementing complex reasoning tasks by means of solvers on different platforms.
The framework can be implemented in a object-oriented programming language of choice, easing and guiding the generation of suitable libraries for the use of specific solvers on selected platforms. We currently provide 3 implementations (in Narrative , in Theoretic and in Programmatic ) and ready-made libraries for the embedding several logic programming languages (mainly on the Desktop platform). In particular, we provide support for:
ASP (Answer Set Programming) solvers
PDDL (Planning Domain Definition Language)
Cloud solver Solver.Planning.Domains (also for the Android platform, for the Narrative language).
However, the framework has been designed to be easily extensible and adaptable to different solvers and platforms. It is worth to notice that solvers are invoked in different modes; for instance, SPD is invoked via a remote connection, while for the other, binaries are effectively embedded and natively executed.