METATE M: The Story so Far Michael Fisher Department of Computer Science, University of Liverpool, United Kingdom http://www.csc.liv.ac.uk/michael 1 Introduction METATEM is a simple programming language based on the direct execution of tempo- ral logic statements. It was introduced through a number of papers [35,2,3] culminating in a book collecting together work on the basic temporal language [5]. However, since that time, there has been a programme of research, carried out over a number of years, extending, adapting and applying the basic approach. In particular, much of the research has concerned the development of descendents of METATEM for describing and imple- menting complex multi-agent systems. Thus, while there are a number of other approaches to executing temporal state- ments [32,18], we will concentrate on this one particular approach and will describe the developments over the last 15 years. The structure of this article mirrors the research developments in that the path through these developments is not linear. The diagram below gives a pictorial explanation of the sections that follow. 1. Introduction 2. Temporal Logic 3. Executing Temporal Logic ւ ց 4. Concurrent METATEM 5. Beyond Temporal Logic ց ւ 6. Groups and Organisations 7. METATEM at Work 8. Concluding Remarks Thus, we begin with a brief review of temporal logic itself. 2 Temporal Logic We will begin with a review of basic temporal logic. Rather than providing an in-depth account of temporal logic, we will just provide a simple description that can be used throughout this article. For a more thorough exposition of the formal properties of this R.H. Bordini et al. (Eds.): ProMAS 2005, LNAI 3862, pp. 3–22, 2006. c Springer-Verlag Berlin Heidelberg 2006