STATE NETS: AN EXPRESSIVELY EFFICIENT BEHAVIORAL MODEL Christophe Giraud-Carrier, Scott N. Woodfield and David W. Embley Department of Computer Science Brigham Young University, Provo, Utah 84601 ABSTRACT Behavioral models of interest in software engineering all have equivalent computational power because they are all Turing-equivalent. They do not, however, all have equivalent modeling power. Modeling power is a matter of expressive efficiency, which is difficult to measure because of its subjectivity. One non-subjective measure of modeling power compares models by investigating their representational succinctness. This paper investigates the modeling power of a newly proposed behavioral model, called state nets. The paper presents state nets, shows how the succinctness concept of modeling power can be useful in comparing new models with existing ones, and, as an example, proves that state nets have more modeling power than Petri nets. A model M1 is considered to have more modeling power than a model M2 if M1 uniformly represents the same information as M2 in a more succinct form. Although succinctness must be balanced by readability and understandability (e.g., Gödel numbering is not an ideal approach in practice), Peterson's measure of expressive power does provide insight in comparing behavioral models. Several behavioral models are commonly used in software engineering, including decision tables [Mor 82], finite-state machines, PAISLey [Zav 82], Petri nets [Pet 81], statecharts [Har 87], and others [Dav 90]. From among these, we choose Petri nets as a representative comparison model. We do so because Petri nets are widely used, formally defined, and basically address the same problems and issues as state nets. Like state nets, Petri nets are used to model concurrent systems in software engineering, (see for example its sample use to solve the Dining-Philosophers problem [Pet 81]). Keywords: behavioral models, modeling power, succinctness measures, object-oriented behavioral models, state nets, Petri nets. Our purpose, in this paper, is threefold: 1) introduce state nets as a new and promising object-oriented behavioral model, 2) show how Peterson's notion of modeling power can be used to make comparisons between behavioral models, and 3) prove that basic state nets have more modeling power than extended Petri nets. I. INTRODUCTION An important goal of analysis is to capture and communicate, not only the static aspects of a system under study, but also its behavior. Furthermore, an increasing interest in parallel computations and concurrent programming has created a need for even more sophisticated analysis models that more effectively capture and communicate system behavior. In Section II, we present informal definitions for Petri nets, state nets, and the notion of modeling power. We have chosen what we call a minimal-set approach for state nets, that is, we have restricted them to their simplest form. For Petri nets, we have chosen extended Petri nets because of their widespread use in this form. Section III formalizes the definitions of extended Petri nets and basic state nets. It also presents the idea of class inclusion used to formally define modeling power and the proof that basic state nets have more modeling power than extended Petri nets. Section IV concludes the paper. State nets constitute the behavioral model developed for a newly proposed Object-oriented Systems Analysis (OSA) model [EKW 92]. State nets give an analyst a way of effectively specifying both sequential and parallel systems in an object-oriented context. Both intra-object concurrency and inter-object concurrency are embedded in the state-net model. A natural question to ask, however, is whether state nets are any better, and in what ways, than other behavioral models already in use. Although one model could be better than another in terms of its computational power, this is not an issue because all behavioral models commonly used in software development have the same computational power. The question of interest in comparing computationally equivalent models is expressive power. Expressive power, however, is elusive because it is largely subjective. One objective measure of expressive power has been suggested by Peterson, who calls expressive power, "modeling power,'' and defines it in terms of representational succinctness [Pet 81]. II. INFORMAL DEFINITIONS 1. Petri Nets Figure 1a is an example of an extended Petri net [Pet 81]. The circles labeled p1 through p4 are called places. The vertical line segments labeled t1 through t4 are called transitions. The lines labeled a1 through a12 are called arcs. Arcs are directed. Arcs ending with a small circle are called inhibitor arcs. All other arcs are called normal arcs. The places of a Petri net may contain 0 or more tokens, represented as dots inside of places. Once tokens are assigned to places, the resulting Petri net is said to be marked. Informally, a marking of a Petri net is the number