Most programming languages only support tests that refer exclusively to the current state. This applies even to high-level programming languages based on the situation calculus such as Golog. The result is that additional variables/fluents/data structures must be introduced to track conditions that the pro- gram uses in tests to make decisions. In this paper, drawing inspiration from McCarthy’s Elephant 2000, we propose an extended version of Golog, called ElGolog, that supports rich tests about the execution history, where tests are expressed in a first-order variant of two-way linear dynamic logic that uses ElGolog programs with converse. We show that in spite of rich tests, ElGolog shares key features with Golog, including a sematics based on macroexpansion into situation calculus formulas, upon which regression can still be applied. We also show that like Golog, our extended language can easily be implemented in Prolog.

ElGolog: A High-Level Programming Language with Memory of the Execution History / De Giacomo, Giuseppe; Lespérance, Yves; Ternovska, Eugenia. - 34:03(2020), pp. 2806-2813. (Intervento presentato al convegno National Conference of the American Association for Artificial Intelligence tenutosi a New York, NY, USA) [10.1609/aaai.v34i03.5669].

ElGolog: A High-Level Programming Language with Memory of the Execution History

De Giacomo, Giuseppe
Primo
;
2020

Abstract

Most programming languages only support tests that refer exclusively to the current state. This applies even to high-level programming languages based on the situation calculus such as Golog. The result is that additional variables/fluents/data structures must be introduced to track conditions that the pro- gram uses in tests to make decisions. In this paper, drawing inspiration from McCarthy’s Elephant 2000, we propose an extended version of Golog, called ElGolog, that supports rich tests about the execution history, where tests are expressed in a first-order variant of two-way linear dynamic logic that uses ElGolog programs with converse. We show that in spite of rich tests, ElGolog shares key features with Golog, including a sematics based on macroexpansion into situation calculus formulas, upon which regression can still be applied. We also show that like Golog, our extended language can easily be implemented in Prolog.
2020
National Conference of the American Association for Artificial Intelligence
Artificial Intelligence; Knowledge Representation; Reasoning about Actions
04 Pubblicazione in atti di convegno::04b Atto di convegno in volume
ElGolog: A High-Level Programming Language with Memory of the Execution History / De Giacomo, Giuseppe; Lespérance, Yves; Ternovska, Eugenia. - 34:03(2020), pp. 2806-2813. (Intervento presentato al convegno National Conference of the American Association for Artificial Intelligence tenutosi a New York, NY, USA) [10.1609/aaai.v34i03.5669].
File allegati a questo prodotto
File Dimensione Formato  
DeGiacomo_ElGolog_2020.pdf

accesso aperto

Note: DOI: https://doi.org/10.1609/aaai.v34i03.5669
Tipologia: Versione editoriale (versione pubblicata con il layout dell'editore)
Licenza: Tutti i diritti riservati (All rights reserved)
Dimensione 543.51 kB
Formato Adobe PDF
543.51 kB Adobe PDF

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11573/1506138
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 0
  • ???jsp.display-item.citation.isi??? 0
social impact