Contents
DLV-Complex: The Project
DLV-Complex is an Answer Set Programming System extending DLV by means of functions. It is a very powerful ASP system supporting (recursive) functions, sets, and lists, along with libraries for their manipulations.
DLV-Complex is based on the DLV system and on the DLV-EX framework, from which it inherits the possibility of defining external predicates. You will find everything you need in order to create your own external predicates collected in libraries on the DLV-EX page.
The Team
Downloads
DLV-Complex is actively developed. To receive notifications about new releases and other important events regarding DLV-Complex, just have a look at this page, or drop us a note here.
Please always use the most current version of DLV-Complex (cf. version history).
Latest Version
Standard Version
We currently provide a command-line version in binary form for Linux, Windows 95/98/NT/2000/XP/Vista and Mac OS.
Download latest linux version (requires libstdc++6.0.10 or greater)
Download latest windows version
Download latest macOS version
Static Version
We offer also a statically linked executable (currently only linux and windows versions), that includes list and set manipulation libraries. This version do not need any pre-installed dynamic library on your system; in addition, it is self-contained, meaning that you do not need to download any library (such as those below) in order to enjoy full lists and set support. It is ready-to-use. Nevertheless, this version do not support external predicates/libraries (see DLV-EX page).
Download latest linux STATIC version
Download latest windows STATIC version
Latest Libraries
List-And-Set library is needed in order to exploit built-in manipulation functions/predicates for list and set terms, unless you use a static version of DLV-Complex.
Download latest linux version (.so)
Download latest windows version (.dll)
Download latest macOS version (.so)
Other external predicate libraries can be found on the DLV-EX page.
Developing New External Predicates and Libraries
If will find everything you need in order to create your own external predicates (collected in dynamic libraries) on the DLV-EX page.
Documentation & Examples
We provide here a quick reference guide, a short tutorial and some examples.
Documentation and examples will be updated accordingly to the evolution of the system, so check them out periodically. For a full documentation on DLV please visit the official web page. You might also find useful to check the official web page of DLV-EX out for docs and info.
Reference Guide and Tutorial
Examples
Tutorial-examples.zip Examples from the tutorial (text files in a .zip archive)
ListPath.dl Compute all simple paths and cycles in a graph
Descendants.dl Compute the set of all descendants for some given ancestors
Hanoi.dl (txt version here: Hanoi.txt) - A DLV-Complex program solving the well-known Tower of Hanoi Puzzle -
TuringMachine.dl (txt version here: TuringMachine.txt) - A DLV-Complex program simulating a Turing Machine - You can dowload also a more detailed description: TuringMachine.pdf (pdf document)
History
- March 08, 2010
Release MacOS version of March 03, 2010.
- March 03, 2010
Fix instantiation bug while dealing with rules featuring both assignment aggregates and external built-in. Improve stability. MacOS version to be released soon.
- July 27th, 2009
Start moving towards new functional built-in approach, in order to meet official DLV future standards. Fix some nasty bugs involving the interaction between built-ins and aggregates. Further improve stability.
- May 19th, 2009
Improve stability. Remove some useless #MAXINT restrictions. Release a static version.
- July 27th, 2008
Minor bugfixes (some in finite-domain checker).
- June 13th, 2008
Improve finite-domain checker. Nicefy help messages. Several bugfixes.
- Early 2008
First beta version.
- Previous versions
...did not carry a real version identification.
Reports
F. Calimeri, S. Cozza, G. Ianni, N. Leone, "Finitely Recursive Programs: Decidability and Bottom-up Computation", Technical Report, Department of Mathematics, University of Calabria, 2009 - Submitted for publication to Fundamenta Informaticae. (PDF version)
F. Calimeri, S. Cozza, G. Ianni, N. Leone, "Computable Functions in ASP: Theory and Implementation", Proceedings of the 24th International Conference on Logic Programming (ICLP 2008), Vol. 5366 of Lecture Notes in Computer Science (LNCS), pp. 407-424, Udine, Italy, December 2008, Springer Verlag, GmbH Tiergartenstrasse 17, 69121, Heidelberg Germany, ISBN 978-3-540-89981-5.DOI
F. Calimeri, S. Cozza, G. Ianni, "External Sources of Knowledge and Value Invention in Logic Programming", Annals of Mathematics and Artificial Intelligence (AMAI), Volume 50, N. 3-4, pp. 333-361, August 2007 -- Link to Springer Page (find there a PDF version)
Drop us a note at calimeri{at}mat.unical.it