#acl FrancescoCalimeri:read,write,revert SusannaCozza:read,write,revert All:read ---- <> <> ---- <> = DLV-EX: The Project = DLV-EX is an Answer Set Programming System extending [[http://www.dlvsystem.com|DLV]] by External Predicates, which features a framework aimed at enabling ASP to deal with external sources of computation. This feature is realized by the introduction of “parametric” external predicates, whose extension is not specified by means of a logic program but implicitly computed through external code. It is explicitly addressed the issue of invention of new information coming from external predicates, in form of new, and possibly infinite, constant symbols. DLV-EX is based on the [[http://www.dlvsystem.com|DLV]] system. If you designed a nice external predicate, tell [[mailto:dlv-ex@mat.unical.it|us]]. {{attachment:new.gif}} ''Important advice:'' {{attachment:new.gif}} '''The DLV-EX project is now moving to [[http://www.mat.unical.it/dlv-complex|DLV-Complex]]. DLV-Complex is a very powerful ASP system, which, besides external predicates, explicitly supports (recursive) functions, sets, and lists, along with libraries for their manipulations. This page is still the main reference for the external-predicate framework and utilities: you will find all necessary tools for developing your own predicates in the [[#download|download]] section. Nevertheless, we strongly recommend to refer to the [[http://www.mat.unical.it/dlv-complex|DLV-Complex]] page for binaries, news and updates.''' If you want, you can still download the last versions of DLV-EX binaries available, in the [[#download|download]] section. To receive notifications about new releases and other important events regarding DLV-EX, just have a look at this page and the [[http://www.mat.unical.it/dlv-complex|DLV-Complex]] page, or drop us a note [[mailto:dlv-ex@mat.unical.it|here]]. [[#TOC|Top of Page]] ---- <> = The Team = == Core == [[http://www.mat.unical.it/calimeri|Francesco Calimeri]], [[http://www.gibbi.com|Giovambattista Ianni]], [[mailto:cozza@mat.unical.it|Susanna Cozza]] == Former team members == Adriana Pietramala (student), Maria Carmela Santoro (student) == Prompters and helpers == [[http://www.wfaber.com|Wolfgang Faber]], [[http://www.pfeifer.com/gerald/|Gerald Pfeifer]], [[http://www.mat.unical.it/~leone/|Nicola Leone]] [[#TOC|Top of Page]] ---- <> = Download = <> == Scripts and Headers == You can find below everything is necessary in order to develop and build your own external dynamic libraries. * [[attachment:for-linux-developers.tar.gz|Linux version]] (.tar.gz archive) * [[attachment:for-windows-developers.zip|Windows version]] (.zip archive) * [[attachment:for-macos-developers.tar.gz|Mac OS version]] (.tar.gz archive) '''Notes''' * Please note that the archives consist of two folders: * ''"LIB"'', containing headers and scripts needed in order to create new External Builtins libraries. * ''"doc"'', containing a manual and a tutorial for helping the user creating new external predicates. For further information, have a look at the [[#docs|documentation]]. * In order to '''compile''' your own libraries, you will need [[http://www.gnu.org/software/libtool/|libtool]]. Take care of use the correct version of libtool for your system, or you may experience problems in creating dynamic libraries. * '''HINT''' for windows developers: you might find very useful the [[http://www.mingw.org/|MinGW]]/[[http://www.mingw.org/wiki/msys|MSYS]] environment. <> == Libraries == Some ready-made (compiled) dynamic libraries can be downloaded here. They have to be considered as "betas", since they are currently developed and tested. Feedbacks are useful and welcome, so please download them freely. For further information on how to exploit libraries have a look at the [[#docs|documentation]]. Please note that updates will be available later on, so come back to this page. * String Library, versions for: [[attachment:string_lib.so.tar.gz|linux]] - [[attachment:string_lib.zip|windows]] and [[attachment:string_lib.htm|related documentation]]. * Integers Library, versions for: [[attachment:math_N.so.tar.gz|linux]] - [[attachment:math_N.zip|windows]] and [[attachment:math_N.htm|related documentation]]. * Reals Library, versions for: [[attachment:math_R.so.tar.gz|linux]] - [[attachment:math_R.zip|windows]] and [[attachment:math_R.htm|related documentation]]. <> == Utilities == ''DEBT'' - We have developed an integrated command-line environment aimed at helping in testing external built-ins predicates. This may be very useful for users who define their own built-ins. DEBT can be downloaded [[attachment:debt.tar.gz|here]], and it is gathered with its related [[attachment:BuiltinTestToolUSERMANUAL.pdf|documentation]]. <> == Latest Version == We offer a command-line version in binary form for * [[attachment:dl-ex.20080729.linux|Linux i386, 32bit]] (Latest version [[#history|July 28th, 2008]]). * [[attachment:dl-ex.20080729.win.exe|windows 32bit]] (Latest version [[#history|July 28th, 2008]]). Please have a look at the [[#history|notes]] below. You may also want to have a look at [[attachment:benchmarks.html|some benchmarks]]. [[#TOC|Top of Page]] ---- <> = Documentation & Examples = We provide an [[attachment:usermanual.html|online manual]] and an [[attachment:tutorial.html|online tutorial]]; they are updated accordingly to the evolution of the system, so check them periodically. For a full documentation on DLV please check the official [[http://www.dlvsystem.com|web page]]. [[#TOC|Top of Page]] ---- <> = Related Works = It is worth noting that our work shares many aspects with the work carried out by Thomas Eiter, Giovambattista Ianni, Roman Schindlauer, and Hans Tompits. They introduce HEX programs, which are nonmonotonic logic programs admitting higher-order atoms as well as external atoms, and extend the answer-set semantics accordingly. A web page with a prototype and some references is available [[http://con.fusion.at/dlvhex/|here]]. * [[http://www.mat.unical.it/dlv-complex|DLV-Complex]] is a very powerful ASP system, which, besides external predicates, explicitly supports (recursive) functions, sets, and lists, along with libraries for their manipulations. '''The DLV-EX project is actually moving to DLV-Complex'''. * [[http://www.dlvsystem.com|DLV]] is the system into which DLV-EX is implemented. * [[http://dlt.gibbi.com/|DLT]] is an extension to the DLV system providing reusable template predicate definitions. It is maintained by members of the DLV team from Università della Calabria. * [[http://www.kr.tuwien.ac.at/staff/roman/dlvhex|DLV-HEX]] features "second order" external predicates taking relational input an returning relational output, as well as higher order atoms. It allows DLT as a pre-parser. [[#TOC|Top of Page]] ---- <> = History = * July 29th, 2008 {{attachment:new.gif}} Release a full version for Windows. Bugfixes. This is supposed to be the last release. The project is moving to [[http://www.mat.unical.it/dlv-complex|DLV-Complex]]. * April 26th, 2006 Bugfixes and speedups. Support for VI-restricted programs implemented. * September 28th, 2005 "Beta" version, much improved. Carries many bugfixes and improvements. * March 28th, 2005 First stable version, even if still a "beta". * October 17th, 2004 First working version, experimental. * Previous versions ...did not carry a real version identification. [[#TOC|Top of Page]] ---- <> = Selected Publications = [1] F. Calimeri, S. Cozza, G. Ianni, "External Sources of Knowledge and Value Invention in Logic Programming", Annals of Mathematics and Artificial Intelligence, 2007, to appear. [[attachment:cali-etal-AMAI-2007.pdf|PDF]] [2] F. Calimeri, S. Cozza, G. Ianni, "Decidable fragments of Logic Programming with Value Invention", Proceedings of the 10th European Conference on Logics in Artificial Intelligence (JELIA'06) in Logics in Artificial Intelligence, Lecture Notes in Computer Science (LNCS), v. 4160, pp. 95-110, September 2006, Liverpool, UK, Springer Verlag, GmbH Tiergartenstrasse 17, 69121, Heidelberg Germany, ISBN 3-540-39625-X. [[attachment:jelia06.pdf|PDF]] [3] F. Calimeri, G. Ianni, "External sources of computation for Answer Set Solvers", Proceedings of the 8th International Conference on Logic Programming and Nonmonotonic Reasoning (LPNMR'05), Diamante, Italy, 5-8 September 2005, Springer Verlag. [[attachment:lpnmr05.pdf|PDF]] [[#TOC|Top of Page]] ---- __''[[mailto:dlv-ex@mat.unical.it|dlv-ex@mat.unical.it]]''__