Petri net theory has developed considerably from its beginnings with Dr. Petri's 1962 Ph.D. dissertation. However, much of the work on Petri nets is hard to obtain, being available only as reports and dissertations scattered among many sources. Despite the difficulty in learning about Petri nets, however, their use is constantly increasing. It is becoming expected that every computer scientist know some basic Petri net theory.
This monograph brings together the major parts of Petri net theory, presenting them in a coherent and consistent manner. The presentation and organization is suitable both for individual study by the practicing professional and for organized graduate study in computer science. Petri net theory can be applied to a vast number of areas (as shown in Chapter 3); a knowledge of the fundamentals of Petri net theory is becoming mandatory for the computer science, system analysis and engineering professions.
For the student or professional who desires immediately applicable information on Petri nets, Chapters 1 through 4 and Chapter 7 are invaluable. These chapters are suitable for self-study, and provide a sufficient foundation in Petri net theory to allow immediate use in a wide range of areas.
This book can also be used as a text for a graduate seminar in Petri nets, for while the definitions and applications of the first four chapters can be easily learned, the remaining chapters take the student to the edge of current research. Each chapter includes exercises to provide practice with the concepts and reinforce the basics of the theory. In addition, the ``Topics for Further Study'' point the way for new research and study. Many of these topics could easily develop into theses and dissertations at both the Master's and Ph.D. level.
The basic concepts of Petri net theory can be understood with a minimal of background. However, Petri nets, even more than most research topics, touch on many different aspects of computer science and mathematics. Full appreciation and understanding of current Petri net theory requires a good background in the study of formal languages and automata, operating systems, computer architecture, and linear algebra. An individual with an undergraduate degree in computer science or a year of graduate work in computer science should have the background necessary for research in Petri nets.
Obviously, more research has been done on Petri nets than can be presented here. We encourage further reading. The bibliography has been extensively researched in an effort to make it as complete as possible.
Specifically, we note that Dr. Petri has
continued his research. What we refer to here as
Petri net theory is, in his terminology, known as
Special Net Theory. This is only a part of his
General Net Theory [Petri 1973; Petri 1975;
Petri 1976; Petri 1979a].
The creation of this volume benefited from the assistance of a number of people. Tilak Agerwala, Michel Hack, Tai-Yuan Hou, C. Matthias Laucht, Dino Mandrioli, Jerre Noe, Gary Nutt, and William Riddle helped with the technical content, while J. C. Browne, K. Mani Chandy, Jim Daniel, Nancy Eatman, and R. T. Yeh, along with the Department of Computer Sciences and the Department of Mathematics of the University of Texas at Austin and the Laboratory for Computer Science of the Massachusetts Institute of Technology provided the logistic support which allowed me the time and facilities to put together the manuscript.
Throughout the writing, editing and revising process, my wife Jeanne has been a source of love and support.
The use of computer-based editing and typesetting procedures created new and unique problems in the production of this volume. I am grateful for the support, patience, and resolve of Prentice-Hall in this respect, and especially for the wisdom and professionalism of my editor, Karen Clemments.