10.4230/LIPICS.ICLP.2010.24
Basol, Selen
Selen
Basol
Erdem, Ozan
Ozan
Erdem
Fink, Michael
Michael
Fink
Ianni, Giovambattista
Giovambattista
Ianni
HEX Programs with Action Atoms
Schloss Dagstuhl – Leibniz-Zentrum für Informatik
2010
Article
Answer Set Programming
Logic programming interoperability
Action languages
Hermenegildo, Manuel
Manuel
Hermenegildo
Schaub, Torsten
Torsten
Schaub
2010
2010-06-25
2010-06-25
2010-06-25
en
urn:nbn:de:0030-drops-25803
10.4230/LIPIcs.ICLP.2010
978-3-939897-17-0
1868-8969
10.4230/LIPIcs.ICLP.2010
LIPIcs, Volume 7, ICLP 2010
Technical Communications of the 26th International Conference on Logic Programming
2013
7
6
24
33
Schloss Dagstuhl – Leibniz-Zentrum für Informatik
Hermenegildo, Manuel
Manuel
Hermenegildo
Schaub, Torsten
Torsten
Schaub
1868-8969
Leibniz International Proceedings in Informatics (LIPIcs)
2010
7
Schloss Dagstuhl – Leibniz-Zentrum für Informatik
10 pages
378214 bytes
application/pdf
Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported license
info:eu-repo/semantics/openAccess
HEX programs were originally introduced as a general framework for extending declarative logic programming, under the stable model semantics, with the possibility of bidirectionally accessing external sources of knowledge and/or computation. The original framework, however, does not deal satisfactorily with stateful external environments: the possibility of predictably influencing external environments has thus not yet been considered explicitly. This paper lifts HEX programs to ACTHEX programs: ACTHEX programs introduce the notion of action atoms, which are associated to corresponding functions capable of actually changing the state of external environments. The execution of specific sequences of action atoms can be declaratively programmed. Furthermore, ACTHEX programs allow for selecting preferred actions, building on weights and corresponding cost functions. We introduce syntax and semantics of acthex programs; ACTHEX programs can successfully be exploited as a general purpose language for the declarative implementation of executable specifications, which we illustrate by encodings of knowledge bases updates, action languages, and an agent programming language. A system capable of executing ACTHEX programs has been implemented and is publicly available.
LIPIcs, Vol. 7, Technical Communications of the 26th International Conference on Logic Programming, pages 24-33