×

Modeling time in computing. (English) Zbl 1260.68004

Monographs in Theoretical Computer Science. An EATCS Series. Berlin: Springer (ISBN 978-3-642-32331-7/hbk; 978-3-642-32332-4/ebook). xvi, 423 p. (2012).
Different models including the notion of time are present in almost all sciences; however, the abstractions proposed in these sciences cannot be canonically applied in computer science. Therefore, there were many new ways of modelling time that were proposed in the computer science research, in the search for an adequate model. This book is a systematic thorough presentation of the results of several decades of research on developing, analyzing, and applying time models to computing and engineering. It is organized in 12 chapters that are split into two parts. The first chapter is an introductory one that reviews the topics, structure and the goals of this book as well as its motivation. Chapter 2 provides basic notions regarding the formalism used by the authors. Chapter 3 establishes some essential issues that arise in modeling time, independent of the type of the system used to do it, making, hence, the first important steps towards the goals of the book. Chapters 4–6 form the first part of the book, which is a summary of models of time that were traditionally used in computer science and engineering: dynamical systems and control theory (Chapter 4), hardware design (Chapter 5), models of computation and complexity theory (Chapter 6). The authors point out that this part is supposed to provide the various readers a common background. The second part goes deeper into the topic and covers various advanced formalisms that deal with specific issues of time modeling. In the first three chapters of this part, three main and complementary families of such formalisms are presented. In Chapter 7 various models based on finite state machines are given, in Chapter 8 different types of Petri nets are discussed, while in Chapter 9 models extending mathematical logic are overviewed. The final two chapters of this part deal with process algebra and dual-languages approaches. Finally, Chapter 12 provides a series of concluding remarks and development directions.
The book is well written, the details are given in a rigorous manner, the bibliography seems to be adequate and well explained. The chapters of the book are accompanied by a series of exercises of varying difficulty and scope. As stated by the authors, the expected audience of the book is formed mainly of graduate students and researchers in computer science, but it can also include researchers and practitioners in other scientific and engineering disciplines interested in time modeling with a computational flavor.
In conclusion, I consider the book to be a nice presentation of a large range of results regarding time modeling in computer science, complemented by a considerable number of pointers towards further readings. In fewer words: a good starting point both for students and researchers interested in this topic.

MSC:

68-02 Research exposition (monographs, survey articles) pertaining to computer science
68Q85 Models and methods for concurrent and distributed computing (process algebras, bisimulation, transition nets, etc.)
68Q05 Models of computation (Turing machines, etc.) (MSC2010)
68Q25 Analysis of algorithms and problem complexity
68W40 Analysis of algorithms
68Q60 Specification and verification (program logics, model checking, etc.)
37N99 Applications of dynamical systems
PDFBibTeX XMLCite
Full Text: DOI