Review: "Macro E-Nets..." (1973)

NN73 presents the macro facility for E-nets, the Macro E-nets, as well as forward the original E-net ideas, with easy, little exemplars:

"Macro E-nets for Representation of Parallel Systems"
by Jerre D. Noe and Gary J. Nutt
in IEEE Transactions on Computers, Vol.C-22, No.8, August 1973, pp.718-727.

For Intuitive Models

NN73 first presents an overview of E-nets, as an extension of Petri nets, with explicit resource-management (data), and time. Next, the macro-motives, are referred to:

Representational convenience and clarity is greatly enhanced by the use of macro nets, i.e., more complex structures built up of the primitives with their formal definitions expressible in terms of those of the primitives. These macro nets may then be used to represent many intuitively appealing structures while retaining the form necessary to allow a standard E-net interpreter to accept these definitions.
(NN73, p.721)

Macros are replaceable by the subnets they represent, for any E-net interpreter to understand the net, without any need for that E-net interpreter to know about the Macro E-net formalism. The modeler, on his/her own preference, may define new formal-notations (shorthand macros), or informal presentations, as far as, they are replaced, when needed.

The NN73 examples of new abstractions-with-macros, include:


Even without macros, an E-net was a versatile tool, for modeling, with its

The machine-interpretable predicates, provide resolution for the E-net interpreter run. This is apart from any associated real-world hardware/software behavior that the transition stands for, but relevant to it, as far as that behavior is expressed in the data/environment variables available to the E-net model). These provide the precision, to the extent, the modeler/designer prefers.

Abstraction/Refinement with (Macro) E-nets

The macros are for modeling convenience.

Macro nets allow the user to formalize frequently used structures and to condense their representation so that visual clarity is maintained.
(NN73, p.725)

Macros may help optimize page-space (on paper, or on a monitor), but irrelevant to the run-time complexity of the interpreter.

E-nets are employed for deterministic models, any way. Therefore, a subnet reduction is unimportant - except to cut a little, compiler-versus-interpreter re-compilation time. It is with a non-deterministic (exhaustive) reachability-test, such as popular with Petri nets, where a subnet reduction may improve the run-time feasibility of a verifier, enormosly.

A Formal Specification

To make a net machine-processable, it needs a(n unambiguous) formal existence - in terms of variables, and lists. NN73 example, the CDC 6400 example, is with a few fine points to notice:

The purpose of this Appendix is to illustrate the specifications of a net that can be interpreted by a machine. Note that it is applied at an overall level of description of the CDC 6400; similar specifications may be applied to successively more detailed levels as required.
(NN73, p.725)

As it is, that is a valid, interpretable E-net. The further-refineability is an extra. The macro-capability is employed as an intuitive improvement, within this specification. It is not taken as a license to leave the presented net ambiguous to the interpreter. To do that, simply replace a transition with a subnet (or, macro), when that finer level of specification is available. i.e: This is an alternative in representation. (see, NN73, p.724, and also VD78 to do that with Petri nets.)

Tokens, representing job, are entered into the net of location b1. Each of these tokens has 12 attributes.
  1. Job priority.
  2. Scratch location used by the net procedures
  3. Accumulated disk time
  4. Central processor time required
  5. ...
    (NN73, p.725)

NN73 lists those 12 attributes for that location. Any token to exist at that location, is with that type. This interprets an array as a record, as we know from the regular computer-programming. (Da80 employs that record as a variant-record (or, a union, when in C), tipped by the context.)

That array-interpreted-as-a-record is realizable with the procedures of E-net. These let abstract the interpreter-run-time-response:

The CDC 6400 net is formally given as (E, M0, (xi,Psi)) where E = (L, P, R, A).
(NN73, p.725)

Note 1:The (xi, Psi) go together (as noticeable with the emphasis of the ellipses). That is the original emphasis of what go together. The data-variables, and the (resolution) procedures that map their values to standardized indices into the array of inbound/outbound tokens, go together. Next, the interpreter/verifier will use that resolution-token (index) to refer to a location, for an in/out token.

Note 2: The multi-level presentation of the structure of an E-nets system, is noticeable, i.e., instead of presenting the whole system as a single seven-tuple (or, eight- or nine-tuple), the visible, and non-visible elements of the E-net (and the macros, elsewhere) are presented in their own places.

Further Reading

Historical Bits

The E-net work, was the Ph.D. of Nutt, in 1972. Macro E-nets, preserve E-nets, while extending the intuitivity, and versatility, even further. The NN73 examples are fine. But they would necessarily stop at a bottom limit. It appears, though, that may not suffice to warn some of the ignorant, or the extra-neglectful people, about the possible consequences - when out to build models, or to "add" yet other capabilities.

We probably never expect to find worse than trivial examples, or warnings, in a published research paper, any way. Unfortunately, though, in 1982, a "newer" text was published by others, which also lead to a Ph.D. degree. That copycat82, the Un-Credible Ph.D. commits plagiarism and it is a subset of Macro E-nets, too. Its sheer ignorance, and/or immense neglect, provides a lot of un-exemplar examples, to avoid, when working with net-formalisms.

Forum: . . (Fair Menu . . . . . Fault Report? . . . . . Remedy for your case . . . . . Noticed Plagiarism?)

Referring#: 0.0.1
Last-Revised (text) on Nov. 7, 2004 . . . published as
Written by: Ahmed Ferzan/Ferzen R Midyat-Zila (or, Earth)
Copyright (c) [2002,] 2004, 2009 Ferzan Midyat. All rights reserved.