|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ABSTRACT
The mainstream approach to design of BDI-inspired agent programming languages is to choose a set of agent-oriented features with a particular semantics and their subsequent implementation in the programming language interpreter. The language designer's choices thus impose strong constraints on the architecture of the implemented agents as well as only a limited toolbox of high-level language constructs for encoding the agent program. As an alternative, we propose a purely syntactic approach to designing an agent programming language. On the substrate of Behavioural State Machines (BSM ), a generic modular programming language for hybrid agents, we show how an agent designer can implement high-level agent-oriented constructs in the form of code patterns (macros). To express the semantics of agent programs in the logic-agnostic programming language of BSM, we propose LTL program annotations and subsequently introduce DCTL*, an extension of the CTL* logic with features of dynamic logic, for reasoning about traces of BSM program executions. We show how DCTL* specifications can be used to prove relevant properties of code patterns. Moreover, DCTL* allows for natural verification of BSM agent programs. REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
INDEX TERMS
Primary Classification:
Additional Classification:
Keywords:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||