226
This dissertation has been microfilmed exactly as received DONOVAN, John Joseph, 1942- INVESTIGATIONS IN SIMULATION AND SIMULATION LANGUAGES. Yale University, Ph.D., 1967 Engineering, electrical University Microfilms, Inc., Ann Arbor, Michigan Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.

Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

  • Upload
    lecong

  • View
    213

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

This dissertation has been microfilmed exactly as received

DONOVAN, John Joseph, 1942- INVESTIGATIONS IN SIMULATION AND SIMULATION LANGUAGES.

Yale University, Ph.D., 1967 Engineering, electrical

U niversity M icrofilms, Inc., A nn Arbor, M ichigan

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 2: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

© Copyright, byJOHN JOSEPH DONOVAN 1968

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 3: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

INVESTIGATIONS IN SIMULATION AND SIMULATIONLANGUAGES

B. S. Tufts U niversity 1963 M .Eng. Yale University 1964

M. S. Yale U niversity 1965

A D isserta tion P resen ted to the Faculty of The Graduate School of Yale U niversity

John J ? Donovan

inThe Degree

Candidacy for of Doctor of Philosophy

New Haven, Connecticut

January, 1967

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 4: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

IX

ACKNOWLEDGEMENT

Recognition and my gratitude I give to my adv isor, P ro fe sso r Conrad

A. Wogrin, whose scientific c ritic ism s , questions, and engineering insight

have aided in the form ation and expression of every idea presented in this

d issertation . The penetrating lec tu res on m athem atical logic by

P ro fesso r T renchard More have been especially helpful. A pplication of

P ro fesso r M ore 's m athem atical background and my program m ing back­

ground has resu lted in an effort to extend the work presented in these le c ­

tu res to program m ing languages. This joint effort is the basis of Chapter III.

I gratefully acknowledge the work of R. M. Smullyan and E .L . Post which

has a lso been the basis of Chapter III. I w ish to extend my thanks to my

fellow student Jam es Gray for our ea rly discussions of th is w ork and to

Donald McKay and D r. David Seligson for th e ir help with the c lin ica l lab ­

orato ry work. I am grateful to P ro fe sso r M orton Kenefsky fo r his friendly

encouragem ent.

I thank my fellow student Thomas K abaservice and his wife for the ir

carefu l proofreading of the final m anuscrip t. L ikew ise, to M iss LaVerne

F u rs for her patience in typing th is m anuscrip t. To both Yale U niversity

and the National Institute of Health I extend thankful acknowledgement of

their financial support, com puter fac ilitie s , and staff.

I should like to a lso express my gratitude to my wife who has proofread

every draft and uncovered many e r ro r s . H er unselfish a ttitude, encourage­

ment, and softenihg of the disappointm ents have aided in the com pletion

of th is work.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 5: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

CONTENTS

ACKNOWLEDGEMENT

FIGURES AND TABLES

SUMMARY

CHAPTER I INTRODUCTION

I. I P re lim in ary Rem arks

I. 2 P re lim in a ry Definitions

I. 3 D igital Sim ulation

I. 4 Developments in Sim ulation

1.5 Needs and Deficiencies

I. 6 Purpose of D isserta tion

I. 7 Contributions

CHAPTER II SYNTAX SPECIFICATION - A SURVEY

II. 1 Introduction

II. 2 Survey

II. 3 Phase S tructure G ram m ars

II. 4 Shortcom ings and D ifficulties of P ast Specifications

II. 4 B ases of Specification P resen ted

CHAPTER III A RECURSIVE SPECIFICATION FOR COM

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

i i

v i i i

ix

1

1

2

3

3

5

7

11

12

14

16

18

LANGUAGES

III. 1 Canonic System s 20

Page 6: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

III. 2 Lim ited FORTRAN 21

III. 3 Conventions 22

III. 4 Development of Canonic System s for ComputerLanguages 23

III. 5 P red ica te , V ariable, T erm , R em ark, Canon 24

III. 6 R ecursion 25

III. 7 Edicts 26

III. 8 Development of Canonic System for Lim ited FORTRAN 28

III. 9 Canonic System of Lim ited FORTRAN 34

III. 10 Canonic System of the Canonic System of Lim itedFORTRAN 36

III. 11 Example of D erivation 37

III. 12 Syntax of GPSS III 40

III. 13 Exam ples of a Use of the Specification 44

III. 14 Development and M otivation of a Complete SyntacticalSpecification of GPSS III 47

a . Symbols, Spaces, N um bers, L ette rs 48

b. Labels 4 9

c. Standard Num erical A ttribu tes 5 1

d. A rgum ents 5 1

e. F ie lds 5 3

f. Statem ents 5 5

g. Control Cards 61

h. P rogram 62

I

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 7: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

V

i. Pseudo Operations 63j. Comments 64k. Function Definition 651. Variable Definition 67

3•| m. Storage Definition, Table Definition 68"I1 n. Program 68if o. GPSS Programm with Card Input 69afS12 CHAPTER IV TECHNIQUES FOR MODELING COMPLEX SYSTEMS%| IV.1 Introduction 73

> .

| IV.1 Modeling Technique 75i

.4 a. Underlying Systems 75| b. Abstraction Model 761| Set of n-tuples 76I Scalars 761

Subset of n-tuples 76Translation 78Substitution Rule 78

c. Digital Simulation Model 79d. Procedure for Construction of a Digital Simulation 80e. Application of a Model 81

IV.2 Model for a Clinical Laboratory 82a. Isolation of Laboratory Functions 82b. Parameters of Model 84c. Simulation Output 85

IV.3 Digital Simulation of Laboratory 86IV.4 Implementation 92

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 8: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

IV.5 .Other Examplesa. Example of Different Controling Elementsb. Aspect of System Not Directly Expressible in GPSS

IV.6 Validity of a Simulation ModelIV.7 Simulation of Medical Information System

CHAPTER V CONCLDSIONS AND PROPOSALS FOR CONTINUED RESEARCHV.l ResultsV.2 Proposals For Continued Research.

APPENDIX A ALPHABETIC LISTING OF THE SYNTACTICAL SPECIFICATION OF GPSS III

APPENDIX B EXPERIMENTAL VERIFICATION OF THE SYNTAX OF GPSS III

B.1 SummaryB.2 Experimental Verification of Ambiguously or Incorrectly

Stated. Constructions in the GPSS manualsa. Syntactically Legal Programb. Symbol Table of Legal Program .c. Assembled Legal Programd. Syntactically Illegal Program

APPENDIX C TABLE, DEMONSTRATING CONFIDENCE OF MODEL

APPENDIX D GPSS MODEL OF CLINICAL LABORATORY *

LIST OF PRINCIPAL SYMBOLS AND ABBREVIATIONS

BIBLIOGRAPHY

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 9: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

V l l l

FIGURES AND TABLES

Figure

1-1 A view of p rocess involved in com puter applications. 5

IV-1 A view of digital sim ulation. 73

IV-2 Underlying system s of complex system s. 75

IV-3 Underlying system s of a c lin ical chem istry laboratory . 83IV-4 Simulation output 85o-IV-5 O verall view of the clin ical chem istry labo ra to ry (for

handling blood sam ples). 91

IV-6 Utilization of com puter tim e v e rses tim e of day. 108

D -l Flow chart of a sim ulation of the c lin ical chem istrylabora to ry . 163

Table

Iv-1 C om parison of ac tu a l labo ra to ry events and tim es ofoccurances w ith those sim ulated. 103

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 10: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

SUMMARY **One view of the process involved in m ost scientific com puter applications

is: starting with a problem , se t up an abstrac tion of this problem , and im ple­ment this abstrac tion on a digital computer using a com puter language. This d isserta tion is concerned with the application of this procedure to the digital sim ulation of complex system s such as a hospital, bank, or factory .

Chapters II and III a re concerned with a m ajor problem associa ted with the syntax of the com puter languages used in th is procedure, and m ore generally with the syntax of any com puter language. As is evidenced by the works cited in Chapter II there has not been available p rio r to th is w riting a specification that has been used to ch arac te rize com pletely the syntax of com puter languages. Syntax requ irem ents, such as the correspondence between refe rence labels and statem ent labels, allowable column form at, declaration of subscrip ted variables and the requirem ent that a ll statem ent labels of the sam e program be different, are exam plesof constructions that have not been defined in existing specifica­tions. This investigation has applied known methods of recu rsive definition to the development of a com plete syntactical specification of com puter language;.

A specification of the syntax of a lim ited portion of FORTRAN is presented. The re s tric tio n s that a ll sta tem ent labels m ust be different and a ll reference labels m ust correspond to statem ent labels in the sam e program is defined using this specification.

A complete syntactical specification of a com puter sim ulation language,GPSS III, is presented in C hapter III and Appendix A. No other complete or accurate charac teriza tion of any form ex ists for the syntax of GPSS III. All syntactical constructions of GPSS III that w ere found by experim ent to be incorrectly or am biguously sta ted in the m anuals a re co rrec tly defined by the GPSS specification presented in this d isse rta tion . Some of the re su lts of these experim ents a re d iscussed in Sections III. 12-III. 14 and Appendix B. In Appendix B experim ental verification and exam ples of these constructions a re also given.

In Chapter IV a way of viewing complex system s is presented . This view­point is composed of a se t of fundam entals which a re basic to complex system s and may be used to facilitate the understanding o r sim ulation of these system s. These fundamentals form the ab strac tio n in the view of the process involved in computer applications m entioned above.

Techniques have been p resen ted in Chapter IV which may be used to implement this se t of fundam entals on a digital com puter.

A non-triv ial, r e a l and im portan t example, of the use of digital sim ulation is presented in Chapter IV. R esults of a d ig ita l sim ulation of the C linical Chem istry L aboratory of Yale-New Haven H ospital a re d iscussed and the method used to obtain these re su lts is d iscussed . Insight into the many prob­lems of introducing data p rocessing equipment into the laboratory has been obtained from the model.

A complete well documented m odel of the C lin ical C hem istry L aboratoryYale-New Haven H ospital is presented in Appendix D. The m odel may be

used to study fu rther sim ulation techniques or to understand the operation and procedures of the laborato ry , o r as an example of m ore conventional form s of the syntax of GPSS III then the exam ples given in Appendix B.

A Bibliography is p resen ted in a m anner that fac ilita tes its use independently of the text of the d isse rta tio n . July, 1966

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 11: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

-3*-} CHAPTER I

INTRODUCTION

I. 1 P re lim inary R em arks

In recent years there has been a rapid growth in the use of digital

com puters for sim ulation work. The need for such sim ulation work has

been generated by the ev er-in creasin g com plexity of system s that a re

being analysed and designed. The speed and capacity of m odern digital

com puters have provided a means by which to expand sim ulation efforts.

I. 2 P re lim inary Definitions

Some term s which a re used throughout this d isse rta tion a re defined

as follows:

component: an entity (of a system ) that may be independently

identified and whose behavior is well_under stood. Queues, equipment,

or personnel may be components of system s.

system ; an in terac ting or interdependent group of components fo rm ­

ing a unified whole. The boundary of a system is that region in which

the relationship between inputs and outputs of the system is considered

to be dependent only on the system .

model; a rep resen ta tion of a system .

complex system : a system that contains la rge num bers of different

components, va riab les , p a ram ete rs , re la tionsh ips, and events to which

the system is responsive. A hospital, bank, o r factory is a complex

system .

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

I

Page 12: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

*3 ^•1

1 object r i tem : the system to be m odeled, the system under study.

I simo. a process of constructing a dynamic rep resen ta tion

of an object system . A sim ulation model is itse lf a system whose

behavior may be in te rp re ted according to a ru le . The model together

with the in te rp re ta tion rule ren d ers a descrip tion appropriate to the

behavior of the object system .

digital sim ulation: a process of constructing a dynamic re p re se n ­

tation of an object system on a digital com puter. A tool used in digital

sim ulation is a com puter language. A com puter language has a syntax

which is concerned with its form or g ram m ar and a sem antics which

is concerned with its meaning.

complete syntactical specification of a com puter language; a

characteriza tion that effectively defines a ll legal form ations of strings

of a com puter language.

This usage of system and sim ulation term inology follows closely

that o fM .R . Lackner Cl]. As noted by Jacobson [2 ] the te rm "com puter

sim ulation" under these definitions would m ean a sim ulation of a

computer. Other w rite rs C33 have used "com puter sim ulation" in the

s same sense that "digital sim ulation" is used above; however, th is

I author ag rees with Jacabson in that c la r ity suffers as a re su lt.%% I. 3 Digital Simulation

The process of constructing any rep resen ta tio n o r m odel of a system

may be considered a sim ulation. With complex system s, how ever,

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 13: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

3

I form al analytical o r m athem atical models often, become difficult or

even im possible to construct in te rm s of c u rren t m athem atical knowledge.

Digital sim ulation provides another method of constructing a model.

Digital sim ulation m ay be used as an a lternative to other sim ulation

methods, a s is the case when form al m athem atical methods a re difficult

or im possible to apply. Or digital sim ulation may a lso be used in p re f­

erence to o ther m ethods because of the ease by which a digital sim ulation

model may be constructed , modified, or studied.

I. 4 Developments in Sim ulation

One of the m ost significant developments in sim ulation has been

the construction of sim ulation languages fo r com puters. 'M any-such

languages have been constructed: DYNAMO, F o r re s te r ; GPSS, Gordon;

SIMSCRIPT, M arkowitz, Housner, and K a rr; Control and Sim ulation

Language, Laske and Buxton; G eneral Sim ulation P ro g ram , Tocher

and Owen; SIMPAC, Lackner; BLOODI, K elly, Lochbaum, V yssotsky.

A h istory of some 0 1 these languages is found in C4 3. All of these

languages a ttem pt to fac ilita te the accu ra te construction of system

m odels.

I. 5 Needs and D eficiencies

Because a language is a m eans of expressing thoughts o r concepts,

| *ke effective use of a language for the construction of a model req u ire s• . ' . 'V

| understanding and development of general concepts about system s to be

sim ulated, If such thoughts o r concepts a re dependent on a p articu la r

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 14: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

4

language many im portan t aspec ts of a system may be m issed because

they a re not d irectly expressib le in the language.

As pointed out by Lackner [5 ] "A model is a ca rica tu re . C erta in

phenomena a re exaggerated in a sim ulation, while o thers a re ignored.

The m odeler attem pts to charac terize phenomena, including those things

he judges im portant, while excluding those he judges insignificant. 11

The exclusion or exaggeration of phenomena should be the m odeler's

prerogative and not a consequence of lim itations of a computer language

he is using.

D eficiencies in the available methodology of sim ulation a re brought

out by McMillan and Gonzales C.6 ] . They cite a book by Sprowls C7]

who notes that two analysts (C. P . Bonini and E. B. R oberts) conducted

experim ents with two decision-inform ation models of a system in which

both specified sim ila r s ta rtin g conditions but obtained contradictory

re su lts . Bonini defined a highly variable environm ent in te rm s of

custom er o rders and m arket growth trend , and his model produced

lower costs and higher sales and profits. R oberts, using F o r r e s te r 's

techniques, observed that the same situation led to g rea t fluctuations

of inventory, back o rd e rs , and employment and, th ere fo re , fluctuations

in profits.

With this example in mind we come back to the rea liza tion that in

o rd er to construct models which a re m ore com prehensive, re a lis tic

and dynamic, and which duplicate the behaviorial a sp ec ts of system s,

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 15: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

5

we need modeling techniques which a re m ore powerful than those used

in the past.

Another need a r is e s from the large num ber, in many cases, of

man hours involved in constructing a digital sim ulation model. It is

not uncommon that by the tim e an accura te model has been constructed

the need for such a model no longer ex is ts . We need modeling

techniques that speed up the process of constructing a model.

A com puter language, usually a sim ulation language, is used to

im plem ent a model on a com puter. With any language there is a syntax

and sem antics. We have discussed some needs and deficiencies

associated with the use and sem antics of com puter languages used for

sim ulation. There is a lso a m ajor deficiency assoc ia ted with the

syntax of these languages and, m ore generally , with the syntax of any

com puter language. The deficiency is that there ex ists no -known

specification that has been used to ch arac te rize com pletely the syntax

of program m ing languages.

I. 6 Purpose of D isserta tion

One view of the process involved in com puter applications is

depicted inFigure 1 - 1 .

1 tech ­PROBLEM

[object system ]ABSTRAC­ niques COMPUTER

TION computer IMPLEMENTATION

language

F igure 1 - 1 \ view of p rocess involved in com puter applications.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 16: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

6

A sim ulation of a system described by a set of d ifferen tial equations

may follow this p rocess. The set of d ifferential equations form the

abstrac tion . These equations may be im plem ented on an analogue

com puter. They may also be im plem ented on a digital com puter using

num erical techniques and an algorithm ic com puter language, or using

a language such a s MADBLOCK, MIDUS, PACTOLUS, or BIOODI

which is especially suited for sim ulation of system s that m ay be

described by differential equations.

A system such as a hospital, bank or factory can not be directly

described by a set of differential equations. These system s a re

composed of people, m achines, queues, or other components which

have quite different ch a rac te ris tic s and which have complex re la tio n ­

ships among these components. Such system s have many events to

which they a re responsive. Such system s a re called complex system s.

This d isse rta tio n is concerned with the application of the process

depicted in Figure 1-1 to the digital sim ulation of complex system s.

The m ajor purposes of this d isse rta tio n a re the following four:

F ir s t , to p resen t a ■wayof viewing complex system s. This view­

point is composed of a set of fundam entals which a re basic to complex

system s and m ay be used to facilitate the understanding o r sim ulation

of these system s. The set of fundam entals form the ab strac tio n of

F igure 1-1.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 17: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

7

Second, to p resen t general techniques for im plem enting this

abstrac tion on a digital com puter. These techniques m ay be expressed

in m ost com puter languages.

The com puter languages used to ex p ress these techniques have a

syntax. A th ird purpose of this d isse rta tio n is to apply known methods

of recu rsiv e definition to the development of a complete syntactical

specification of com puter languages. Fourth , to p resen t a complete

syntactical specification of a computer sim ulation language^ GPSS III.

I. 7 C ontrib utions

The following a re believed to be the m ajo r contributions of this

d isserta tion :SectionIII. 1 - III. 7 The application of known m ethods of recu rsiv e definition

to the development of a complete syntactical specification for

com puter languages. There ex ists no known specification that.has

been used to ch arac te rize com pletely the syntax of program m ing

languages.

The specification may be used by a p rogram m er to check the

syntactical validity of a string . The specification is m ore com pact,

concise, and accu ra te than a manual.

The specification may be used to define a ll acceptable strings

of a proposed com piler. Hence, decisions affecting m em bership

in the c lass of legal p rogram s a re not made during the construction

of the com piler. In his m anner the specification m ay a s s is t the

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 18: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

8

com piler w rite r .

A com piler m ay be viewed as having two phases, a syntax

phase and a transla tion phase. The syntax phase is concerned

with recognizing the well form ed strings of its source language.

The specification m ay be used in the construction of com pilers

whose syntax phase is independent of the source language being

transla ted . That is , several source languages may be used with

the same com piler;.

III. 2, III. 8 , III. 9 A specification of a lim ited portion of FORTRAN

is presented. The in teresting constructions that a re defined for the

lim ited portion of FORTRAN a re the following two: 1. A ll s ta te ­

ment '.abels in the same program m ust be different. 2. A ll

reference labels m ust correspond to statem ent labels in the same

program .

III. 12- 111.14 , Appendix A A complete syntactical specification of

GPSS III, a sim ulation language, has been developed. No other

complete o r accu ra te charac teriza tion of any form ex ists for the

syntax of GPSS III. Sections 111.12 through III. 14 present the

development and m otivation of the specification. Appendix A

p resen ts the specification in a form that fac ilita tes its use a s a

syntax reference for GPSS III .

Appendix B E xperim ental verification is given of some of the syntac­

tica l constructions of GPSS that a re inaccurate ly o r am biguously

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 19: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

9

stated in the GPSS m anuals [9, 10] but a re co rrec tly defined in

Appendix A.

IV. 2 - IV. 9 A way of viewing complex system s is presented. This

viewpoint is composed of a se t of fundam entals which a re basic

to complex system s and may be used to facilita te the understanding

or sim ulation of these system s.

IV. 11 Techniques a re developed for im plem enting this set of funda­

m entals on a digital com puter.

These fundam entals and techniques a re not dependent on a

specific com puter language, or system , and so do not suffer the

lim itations, d iscussed in Section I. 5, assoc ia ted with such a

dependence. Since these fundam entals and techniques a re

general, a m odeler using them need not confront a com pletely

new problem with each system sim ulated; hence, a savings in

the num ber of m an hours involved can be obtained.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 20: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

10

Appendix D In th is appendix is presented a v ers io n of the GPSS

program that was used to im plem ent a m odel of the C linical C hem istry

L aboratory of Yale-New Haven H ospital on a digital com puter. The

program is well documented. The program m ay be used to study

fu rther the sim ulation techniques presented in Chapter IV; or to

study the organization and procedures of a c lin ica l chem istry labora to ry

as a re b riefly d iscussed in . Chapter IV; or to be used as a- reference

of m ore conventional exam ples of the syntax of GPSS than those

presented in Appendix B. The form of a ll of the constructions used

in the program given in th is section have been defined in Chapter III

and Appendix A.Bibliography

A Bibliography is presented which is a survey of the salien t

existing works which a re .re la te d to this d isse rta tio n . The Bibliography

may be used independently of the text of th is d is se r ta tio n . With

each re la ted group of re fe ren ces a b rief note has been added stating

the principal re su lt of those works and th e ir re la tionsh ip to the work

done in this d isse rta tio n .

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 21: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

11

c h a p t e r II

SYNTAX SPECIFICATION - A SURVEY

II. 1 Introduction

This chapter and Chapter III a re concerned with a m ajor problem

assoc ia ted with the syntax [ 8 ] of com puter languages used for sim ulation,

and m ore generally with the syntax of any com puter language. The

problem is that there ex ists no known specification that has been used

to ch arac te rize com pletely the syntax of program m ing languages.

The m ajor purpose of th is chapter and Chapter III is twofold:

F ir s t , to apply known methods of recu rsiv e definition to the development

of a com plete syntactical specification for com puter languages. Second,

to p resen t a complete syntactical specification of a com puter sim ulation

language^ GPSS III [9» 103* N> other complete o r accura te charac teriza tion

of any form exists* for the syntax of GPSS.

The specification may be used by a program m er to check the

syntactical validity of a string . An example of th is use is given in

Section IV. 13. The specification is m ore compact, concise, and accurate

than a m anual.

The specification may be used to define a ll acceptable strings of a

proposed com piler. Hence, decisions affecting m em bership in the

c lass of legal program s a re not made during the construction of the

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 22: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

com piler. In this m anner the specification may a s s is t the com piler

w rite r .

A com piler may be viewed as having two phases, a syntax phase

and a tran sla tio n phase. The syntax phase is concerned with recog ­

nizing the well form ed strings of the com piler's source language.

The specification may be used in the construction of com pilers whose

syntax phase is independent of the source language being used. Using

a specification, Irons [ll3 * "syntax d irected compilation, " attem pted

to construct a com piler in th is m aim er.

II. 2 Survey

One of the m ost significant developments in the study of com puter

languages has been an attem pt to form alize portions of their syntax. Some

of the m ost prom inent works a re : Backus [123 ; Knuth [133; B urkhart [14]

Iverson [153; B erm an, J . Sharp, L. St urges [ 163 ;. Huskey, Love, and

W irth [ 173 ; Naur [ 183 ; Rabinowitz [ 193; Shaw [203; Taylor, T urner

and Waychoff [2 l3 ; 'Wvrth [223 ; [233; Brown [24 3. In these works the

following languages have had portions of th e ir syntax form alized:

ALGOL, JOVIAL, FORTRAN, NELIAC, APT, COBOL, BALGOL

(see re fe ren ces 24-33 for exposition of these languages).

B esides g reatly im proving comm unication between people, fo r ­

m alized syntax has led to new -results in the theory and practice of

program m ing. As ea rly a s 1963, Irons C113 was able to construct

a com piler whose syntax phase was independent of the source language

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 23: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

being tran sla ted . That is , the sam e 'com piler could be used with several

source languages. This work and works of other con tribu to rs, such

as Brooker and M orris [343; Cheatham and Sattley [353; Conway [363;

Irons [ l l , 3 l 3 ; Ifidley and W ilson [383; Mayoh [393; W arshall [403, led

to speculation that the en tire com pilation process could be made

independent of the source language.

F orm alization of syntax has a lso encouraged re se a rc h in the general

theory of phrase s truc tu re g ram m ars [41 - 543, and the,. theory of

languages and autom ata [55-6l3» These w rite rs have presented proofs

of -insolubility and am biguities associa ted with phrase struc tu re g ram ­

m ars . They have studied the construction of parsing system s. The

m ost valuable theo re tica l insight gained into these d iverse system s is

the rea lization that th e ir d iversity is , in a sense , only superfic ial.

Many of these system s have been shown to be equivalent to context free

phrase struc tu re g ram m ars , e .g . predictive g ram m ars , dependency

g ram m ars have been shown equivalent. . These w rite rs have used ideal..-

ized languages with the hope that re su lts will be applicable to com puter

languages.*

All form ulations of syntax previously mentioned a re equivalent to

context free phrase s tru c tu re g ram m ars [46,473 as defined below.

Approaches to form alization of the sem antics of program m ing language

have been m ade. Some of the m ost prom inent a re ; W ijngaarden [623;

Feldm an [633; W irth an d W eber [ 643. However, if the sem antics is * The te rm com puter .language re fe rs to p ractical a s opposed to theo re tica l com puter language

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 24: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

14

form alized then the syntax m ust be form alized. All of these works use

a context free phrase s tru c tu re g ram m ar C46,47] to specify syntax.

II. 3 P hrase S tructure G ram m ars

A rep resen ta tive use of a context free phrase s tru c tu re gram m ar

has charac terized a portion of the syntax of ALGOL 60 [18 ,28 , 33] . The

form for g ram m atical ru les used in the rep o rt Cl2 ] which officially

defines ALGOL 60 is typified by:

(identifier): = (letter) o r (identifier)(letter) or (identifier)(digit)

This a sse rtio n can be read "An identifier is defined as a le tte r or

an identifier followed by a le tte r or an identifier followed by a digit. "

This a sse rtio n may be considered a substitution rule in that the string

to the right of ":= " may be substituted for the s tr in g to the left.

In a phrase stru c tu re gram m ar every rule ac ts like a substitution

ru le . Applying these substitution ru le s repeatedly to the string

designating the syntactic name "program " or "sentence", we eventually

a rr iv e at a sequence of symbols in which no fu rther substitu tion can be

m ade. This sequence of sym bols is a program or sentence in the

language rep resen ted by the g ram m ar. The p rocess by which th is

sequence of symbols was produced is called a program derivation or

sentence derivation.

The sym bols designating syntactic nam es (e .g . p rogram , sentence)

fo r which substitu tion m ay be m ade, a re called non-term inal c h a ra c te rs ;

those undefined symbols which form the sentence or program a re the

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 25: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

15

te rm ina l c h a rac te rs .

The following is an example of a context free phrase s tru c tu re

g ram m ar. The words sentence, noun, predicate, verb a re n o n -te rm ­

inal c h a rac te rs . The symbols JOHN, BALL, HIT a re te rm in a l

c h a rac te rs .

a. (sentence) := (noun)(predicate)

b. (predicate) ;= (verb)(noun)

c. (noun) ;= JOHN or BALL

d. (verb) := HIT

The sign ;= m ay be read ’’rep laced by".

Successive substitutions starting with (sentence) gives the sequence

1 . (sentence)

2 . (noun) (predicate)

3. BALL (predicate)

4. BALL (verb)(noun)

5. BALL (verb) JOHN

6 . BALL HIT JOHN

Statem ents 1-6 farm a sentence derivation.

The above is a context f re ^ p h ra s e s tru c tu re g ram m ar. Such a

g ram m ar is som etim es re fe rre d to sim ply as a phrase s tru c tu re

gram m ar t5 8 l. However, th is leads to the confusion of w hether a

context free or context sensitive phrase s tru c tu re g ram m ar is m eant.

In th is w ork the te rm phrase s tru c tu re g ram m ar w ill be used to re fe r

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 26: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

16

to both context free o r context sensitive. O therw ise it w ill be stated

which is meant.

The general form of ru les of a phrase s tru c tu re gram m ar is

o> :« ^ A ^

where ^ a re s trings.

We call a ru le context free if 1Jr| = 1lr2 == string , and otherw ise

context sensitive.

We call a phrase struc tu red g ram m ar context free if a ll its ru les

a re context free , and otherw ise a context sensitive phrase s truc tu re

gram m ar [65] .

We call a language a context free language if a ll of its s trings can

be generated by a context free phrase struc tu re g ram m ar.

We call a language a context sensitive language if a ll of its strings

can be generated by a context sensitive phrase s tru c tu re gram m ar.

II. 4 Shortcomings and D ifficulties of Past Specifications

Most attem pts to specify the syntax of com puter languages have used

g ram m ars which a re equivalent to context free phrase struc tu re g ram m ars .

D iscrepancies between the syntax of the language specified and the

syntax of com puter languages a r is e because many com puter languages

a re not context free (see reference G ilbert [65] page 90, Floyd [58]

page 350, Diforino [ 6 6 ]). F u rth e r d iscrepancies a r is e because many

com puter languages have re s tric tio n s on column form at and length of

num bers or sta tem ents. These re s tric tio n s have not been charac terized .

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 27: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

17

There exists no known specification that has been used to charac terize

com pletely the syntax of program m ing languages.

The represen ta tions previously mentioned a re useful. However

many constructions of com puter languages a re difficult or im possible

to express in them . The following a re exam ples of such constructions.

The statem ent GO TO 20 in a FORTRAN program or TRANSFERF20

in a MAD program is not syntactically co rrec t unless the reference

label 2 0 corresponds to a statem ent label 2 0 in the sam e program . Dike-TbiiZauc-rH

wise the reference label of a DO statement of FORTRAN and a WHEN­

EVER statem ent of MAD m ust correspond to a statem ent label in the

same program . All reference labels of MAD o r FORTRAN m ust have

corresponding statem ent labels in the same program .

All statem ent labels in a MAD or FORTRAN program m ust be

different.

All subscrip ted variab les m ust be declared by a declara tion s ta te ­

ment in FORTRAN or MAD program s.

These re s tric tio n s a re syntactical in that program s using these

constructions in co rrec tly a re never executed but a re re jec ted solely

on the ir form .

There a re other syntactical p roperties that have not been c h a ra c te r­

ized in any known representation* M ost com puter languages have

stringent re s tric tio n s on column fo rm at. All sta tem ents using card

input in FORTRAN m ust s ta r t a fte r column six. Most com puter

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 28: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

18

languages do not allow statements of unlimited length. In a character­ization of a language using card input each card must have eighty columns. Some languages require special card formats to indicate a continuation of a statement to another card. These constructions have not been characterized in known specifications.

Bases of FormalizationThe formalization presented here evolved :from Post's canonical

systems(69) and Smullyan's elementary formal systems(68)• In various class notes on the application of elementary formal systems to the definition of self-contained mathematical systems (75} Trenchard More modified the definition of elementary formal systems so as to parallel his definition of propositional complexes(67)• I started to apply the modified elementary formal systems to the recursive definition of the context-free and context-sensitive parts of the syntax of programming languages. As it became clear that the definitional needs of mathematical systems and programming languages were the same in requiring many conclusions from the same premisses, More made further modifications to produce the definition of a canonic system. The canons or axioms of the system have conjuntions of conclusions rather than single conclusions or disjunctions of conclusions.

The example used to present the development of the specification is the syntax of a limited portion of FORTRAN. The interesting constructions that are defined for the example language are the following two: 1. Allstatement labels in the same program must be different. 2. All reference labels must correspond to statement labels in the same program. Following this development, portions of the system that define the syntax of the specification of limited FORTRAN are presented.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 29: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

19

An example of the use of the specification of GPSS 111 to check

the legal form ations of strings of th is language is given. The m otivation

and development of a complete syntactical specification of GPSS III is

given in Chapter III. Appendix A presents the specification in a form

that fac ilita tes its use a s a syntax reference for GPSS III. A partia l lis t

of constructions is presen ted in Appendix B that a re inaccurate ly or

ambiguously stated in the GPSS m anuals but a re co rrec tly defined in

the specification. E xperim ental verification of these constructions is

a lso presented in Appendix B*

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 30: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

2 0

CHAPTER III

A RECURSIVE SPECIFICATION

FOR COMPUTER LANGUAGES

III, 1 Canonic System s

A language consists of ce rta in signs, and ce rta in strings of these

signs. Its syntax consists of ru les for classifying and transform ing

these strings. The alphabet of a language consists of c e rta in basic

signs. A string is a sequence of signs [70],

A canonic system is a language that can recu rs iv e ly define the

syntax of a second language. A canonic system may thus be defined by

another higher level canonic system which in tu rn is defined by an even

higher canonic system . This se r ie s of canonic system s s ta r ts with

the canonic system that defines the language understudy (object language).

The constructions involved in form ing these higher level canonic

system s soon repeat.

A canonic system consists of a num ber of canons. A canon is a ru le

which recu rsiv e ly c la ss ifies s trin g s.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 31: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

2 1

Canonic system s will be developed, by exam ple, that fac ilita te the

complete syntactical definition of com puter languages. A

canonic system that com pletely defines the syntax of a lim ited portion

of FORTRAN, called lim ited FORTRAN, w ill be used as an example.

Following th is development, portions of the canonic system that defines

the syntax of the canonic system that defines lim ited FORTRAN will

be d iscussed . The rem ainder of the chapter will be concerned with the

syntactical specification of GPSS III.

III. 2 L im ited FORTRAN

lab e ls : All labels will be single digits. F o r b rev ity only th ree digits

will be co n sid ered il, 2, 3.

All statem ent labels in a program m ust be different.

A ll reference labels in a program m ust have corresponding s ta te ­

ment labels.

sta tem ents: There a re two perm issib le sta tem ents "1=1+ some

num ber" and "GOTO some reference label" . A ll statem ents need

not have statem ent labels. The num ber in the statem ent "1=1+ some

num ber" m ust be a fixed point num ber. Num bers a re concatenations

of digits.

card fo rm at; All statem ent labels m ust appear in column two. All

statem ents m ust appear in column seven through eighty. All sta tem ents

must s ta r t in column seven. At the end of a sta tem ent blanks fill in

the rem aining colum ns, if any, until the end of a card . No unspecified

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 32: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

2 2

spaces a re perm itted, i .e . GO T02 is not legal, G 0T02 is legal.

P rogram s w ritten in lim ited FORTRAN will be compiled and executed

by a FORTRAN com piler. An exam ple of a syntactically legal program

of lim ited FORTRAN is given below.

3 1=1+1

1= 1+2

GOT 03

1 1=1+2213111231223

The execution of the above program resu lts in a perm anent loop

and the statem ent labeled 1 is never executed. The p rog ram 's meaning

or its sem antical legality might be questioned. However, syntactically

it is a legal program . A p rogram m er may w ish to determ ine how long

a 7094 will run before making an e r ro r . We will not deny him this te s t.

III. 3 Conventions

Because it is very difficult fo r the read er to count blank spaces a

bold face o r twice underlined num ber s will be used, e. g. A£B denotes

the le tte r A followed by four spaces followed by the le tte r B. Therefore

A^B is the sam e string as A B. The sign A denotes the null string ,

©. g. AAB and AB a re the sam e string . A # w ill be used to denote the

end of a card . Thus the example program above m ay be w ritten as

one string .

* i3 |I = I + 149# 1=1+ 2 4 9 # 4 G 0 T 0 3 4 9 #

114l=»I+2213-11123122357#

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 33: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

23

III. 4 Development of Canonic System s for Computer Languages

Canonic system s will be developed, by exam ple, which, facilitate

the complete syntactical definition of com puter languages. A canonic

system of lim ited FORTRAN will be developed. The en tire canonic

system of lim ited FORTRAN is presented in Section III-9.

The alphabet of lim ited FORTRAN consistsof the following signs:

1 2 3 G O T O = + I . The purpose of the canonic system is to recu rsiv e ly

classify s trings over this alphabet. A canon of the canonic system

recu rsive ly c la ss ifies one set of s trin g s. A predicate is a name given to

a well defined set of strings over the alphabet of the object language.

F o r a program m ing lang-uage these se ts a re defined in such a way as

to aid the user of the canonic system . The f ir s t c lassifica tion to be

defined for the syntax of lim ited FORTRAN is the se t of digits. The

canons below accom plish th is . The sign {~is an a sse r tio n sign.

| - 1 digit

| - 2 digit

j-3 digit

These canons a re read : "from no p rem ises it can be a sse rte d

that 1 is a d ig it", "from no p rem ises it can be a sse r te d that 2 is

a digit", "from no p rem ises it can be a sse r te d that 3 is a digit".

digit is a predicate that nam es the se t of strings " 1 " "2 " "3 ".

Note in the above canon there is a blank space between the digit 1

and the predicate digit. The blank space is there for ease of reading.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 34: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

24

The space is assoc ia ted with the predicate and not with the term 1, i. e.

1 followed by a space is not a digit, 1 is a digit. A blank space im m ediately

to the right or left of a ll predicates is associated with the predicate. A

blank space im m ediately to the righ t of a ll punctuation signs J- ; will

be associated with the punctuation sigh.

The next se t of strings defined is named num ber. The following

two canons define the set num ber.

d digit }-d number

d d ig it; n num ber j>* nd num ber

The f ir s t canon above is read , "If the 'p rem ise *d is a digit* is

assum ed,then it is a sse r te d that d is a num ber". The second canon

is read , "If the p rem ises 'd is a digit1, and b i s a num ber*are assum ed,

then it can be a sse r te d that n followed by d is a num ber".

The a sse rtio n sign |- is used to separa te the p rem ises from the

conclusions. The general form of a canon is

a; b; c;. . . j- w; x; . . . y; z

and is read "If the prem ises- a and b and c and . . . a re assum ed then

it can be a sse r te d that w, x, . . . y, z.

HI. 5 P red ica te , V ariable, T erm , R em ark, Canon

The words d ig it, num ber, l is t, p rogram , f i l le r , ca rd a re predicates

of lim ited FORTRAN that name certa in sets of s trin g s. The words

d iffer, not in , in a re predicates of degree two. A predicate of degree

two names an o rdered set of pa irs of s trin g s, e .g . the pair of strings

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 35: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

"1" "2 " is a m em ber of the set of strings named by differ . A

predicate of degree th ree nam es an o rdered set of strings whose m em bers

a re tr ip le s . The predicate. . . statem ent labels in. . . with reference

lab e ls . . . is a predicate of degree th ree in the canonic system of lim ited

FORTRAN. A predicate of degree n names an ordered se t of n-tuples.

The sm all sc rip t le tte rs x, y, p, d, n, c, z a re v ariab les . A term is

a se rie s of signs taken from the alphabet of the object language an d /o r

variab les, e. g. the string d and the s tring GOTOd a re te rm s . A rem ark

is a concatenation of te rm s with predicates in the following way: If P j

is a predicate of degree one and t j is a te rm then t j P j is a rem ark .

If P 2 is a predicate of degree two and if t^ and t^ a re te rm s then 11^ 2*2

is a rem ark . If the string P3a^3b *s a Predicate of degree th ree and if

t j , t£ and tg a re te rm s then is a rem ark . Thus x state -

ment labels in p with reference labels h is a rem ark .

If Rj R2 . . . Rn a re rem ark s then 'R j;R 2 ; • • • 1; • • • ;®n is a

canon. R R2 . . . a re prem ises.. a re conclusions. The

canon is read , "If the p rem ises Rj and R2 and R3 and . . . and Bj a re

assum ed then it can be a sse r te d that Ri+i o r - . . or Bn".

III. 6 R ecursion

The recu rsiv e property of a canonic system m ust be thoroughly

understood. The canons:

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

(2 )

(1 ) |- 1 digit

|- 2 digit

Page 36: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

2 d

(3) }-3 digit

(4) d digit j- d num ber

(5) d d ig it; n num ber f- nd num ber

define a set called num ber,of strings by recu rsio n . F o r example the

string 2 2 2 is a m em ber of this set and m ay be recu rs iv e ly generated

using the above five canons. F ir s t , canons two and four a re used to

obtain the conclusion "2 is a num ber". Next, letting d be 2 and n be 2

in canon five the conclusion "22 is a num ber" is obtained. Again, using

canon five and letting d be 2 and letting n be 2 2 (since we know from

above that 2 is a digit and 2 2 is a num ber) the conclusion " 2 2 2 is a

num ber" is obtained.

HI. 7 Edicts

The redundancy among the form of the canons above strongly suggest

the use of some abbreviations. An edict is an abbreviation of one or m ore

canons.* T here a re th ree constructions that form ed ic ts:

1. The canons

f- 1 digit

| - 2 digit

[-3 digit

form the edict

M< 2< 3 digit: (IH-1 )

In general, if tj . . . tQa re te rm s and if is a predicate of degree

one then the rem ark s : t2%. t 3^ . . . a re abbreviated

*■1* fc2* . . . t The sign is a punctuation sign.

* The c a rro t t notation was suggested by T renchard M ore in response to the frequent occurrence of having many te rm s specified by the same predicate in the specification of GPSS III.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 37: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

2. P rem ises containing variab les a re used with conclusions

containing the sam e variab les. This rela tion between p rem ises and

conclusions will be called re levance .* Thus canons

d digit ^d number

d d ig it; n number |>nd number

form the edict

d d ig it; n number J- dt nd num ber (III-2)

The conclusion of edict (II1-2) "d{ nd num ber" follows the construc­

tion of (1 ) above, i .e . "d^ nd num ber" is an abbreviation of the two

rem arks "d num ber" and "nd num ber". The edict contains two prem ises

Only one of them , "d d ig it" , is re levan t to the conclusion "d num ber"

since the variable d is the only variable appearing in the conclusion

and d only appears in the f ir s t p rem ise . The second conclusion

"nd num ber" has two variab les and these appear in both p rem ises . There

fore, both p rem ises a re re levant to the conclusion "nd num ber".

3. It is often the case that canons have some of the sam e p rem ises.

The p rem ises F j . . . F n and the p rem ises G j . . . Gm and M i . . . M 0

a re common to the following canons in the m anner shown below.

5*1;. . . ;Fn ;A^;A2 ;. . • jA ^ jf^ a ;• • • '^ b

*1 »* * • * * »®c-ll‘®c** * * *®d

5*i*«.. • ;Fn ;Gi;» • . ;C Y[;X ;;. • . ;XJe_il'Xe ;. . . ;X£

Fl ;* * * *yn;Gl;* * * ;Cin ;Yl ;* * * ;Yg-l^Yg ;* * * *Yhm

5 * i ». • • j f r i j G j ; . . • j Q r j . . . . . ; M q | . . . jZ j ; . . . ^ Z j ;» . . ; Z j

* This contraction of canons was suggested by T renchard M ore.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 38: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

28

These canons a re abbreviated to form the following construction

where F j;. . . ;Fn a re taken to be the f ir s t p rem ises of a ll conclusions,

Gj;. . . a re taken to be the second p rem ises and so on until the

words "end of prem ises'*.

f irs t p rem ises F^;F£ . . ;F ;------

A1 »A2 ;* * * ;Aa-l^Aa ;* * * ;Ab

second prem ises GjjG^;. • • ------

X • • ,Xj

• • ;Yg_jp^g'* * * *^h

th ird p rem ises .• •

end of p rem ises

III. 8 Development of Canonic System for lim ited FORTRAN

This section is concerned with the development and m otivation of

a canonic system for lim ited FORTRAN. The en tire canonic system

will be presented in Section III. 9.

The sets of strings named in, d iffer, not in will be defined to express

the constructions a ris in g from the lim itations placed on labels

(Section III. 2). The re s tr ic tio n that a ll refe rence labels m ust a lso

occur a s statem ent labels m akes the predicate in convenient. * If a

string of statem ents is to be a program then the lis t of reference labels

R eproduced with

* Convenient, not n ecessa ry , for there a re many ways in which a canonic system defining lim ited FORTRAN may be constructed. A way has been chosen that fac ilita tes the use of the system by p rogram m ers to check legal constructions of lim ited FORTRAN.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 39: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

29

m ust be in the l is t of statem ent labels.

A lis t of labels is a se rie s of digits separated by com m as, e. g.

1 ,2 ,3 , is a l is t. The edict

d d ig it; x lis t |-A * xd, lis t (III-3)

defines the set of strings named lis t.

The edicts

x l is t }■ A in x (III-4)

x t y c xy; d digit {- cd, in_xd, y (III-5)

define the set of a ll o rdered pairs of strings that a re named in. Edict

(III-4) is read , "If the p rem ise’x is a l i s t ’is assum ed then it can be

a sse rte d that the null s tring is in x ”. Edict (III-5) is read , "If the

prem ises 'x is a lis t 'a n d 'y is a list? and 'c is in the string x'y* and’d is

a digit1 a re assum ed then it can be a sse r te d that the s trin g c followed

by d followed by , is in the string x followed by c followed by ,

followed by yu.

The re s tric tio n that a ll statem ent labels m ust be d ifferent makes

the definition of the se ts called differ and not in convenient. A program

is a se rie s of statem ents some of which have statem ent labe ls . If a

statem ent with a statem ent label is added to a program its statem ent

label m ust not be in the l is t of statem ent labels previously associa ted

with that program .

The canons

j- 1 differ 2 (III-6 )

|- 1 differ 3 (IH-7)

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 40: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

30

|- 2 differ 3

c differ d |- d differ c

( II I -8)

(III-9)

define the se t of a ll o rdered pa irs of digits that a re different.

The canons

d digit j- d not in A

d differ x; d not in y {- d not in yx,

(III-1 0 )

(IK -1 1 )

iI

i\Iiii*

i

rIi

[

f

Iti

define the set of o rdered pairs of digits and lis ts for which the digit

is not in the l is t.

A program is defined in much the same -way as a p rogram m er may

construct one. That is , he w rites a se rie s of sta tem ents keeping track

of statem ent labels and reference labels. With each added statem ent he

checks to make ce rta in that it has not been used as another statem ent

label in the sam e program . F inally he checks to see if a ll reference

labels correspond to statem ent labels.

A predicate of degree th ree will name the se t of tr ip le s (s, p, r)

where s is a lis t of statem ent labe ls , p is a s tring of sta tem ents with

or without statem ent labels, r is a lis t of refe rence labels. The name

of this set is the predicate . . . statem ent labels in . . . w ith reference

labels . . . -

To s ta rt the recu rs io n co rrec tly s, p, and r m ust denote null s trings.

Thus we state the cannon

j* A statem ent labels in A with refe rence labels A (III-12)

The following canons complete the definition of the set of tr ip le s

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 41: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

called . . . statem ent labels in . . . with refe rence labels . . .

f ir s t p rem ises s statem ent labels in p with re fe ren ce labels r ;

n num ber; -------

j- s sta tem ent labels in p&I=I+n# with reference

labels r (III-13)

d not in s |- sd, statem ent labels in pJLd4I=I+n# with reference

labels r (111-14)

d digit j- s statem ent labels in p^GOTOd# with reference

labels rd , (111-15)

c not in s; d digit |- sc, statem ent labels in plc^GOTOd# with

refe rence labels rd , (111- 1 6 )

end p rem ises

F o r a p rogram m er to use these canons effectively as a reference

of the syntax of a language he usually m ust go through one recu rsio n

to see the constructions involved. Take for exam ple edict (III-16) above

and examine some of its conclusions. Edict (111-16) is an abbreviation

of the canon

s statem ent labels in p with reference labels r ; c not in s ; d digit

J-sc, statem ent labels in pic^GOTOd# with reference labels rd ,

The f i r s t rec u rs io n m ust have s, p, and r denote the null s trin g

as is defined by canon (III-12). c may be any digit, say 2, as is defined

by (III-l), (III-10). F ro m edict (III-l) d m ay denote 3. Thus a

conclusion to edict 1 6 is

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 42: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

2, statem ent labels in 124G0T03# with reference labels 3,■V"

I s p£r| Using this conclusion, 2 may now denote "2, ", p may denote

1 ”I2 |G 0 T 0 3 # " , r may denote "3 ," , using canons (HI-7), (HI-9), (UI-10),j:[ (III —11) c may denote "3, " ( i .e . 3, not in 2, ), and from edict (III-l)! 5

d denotes 1 .

The conclusion to edict (III-16) is now

2, 3, statem ent labels in i.24G0T03#134G0T01# with reference labels 3,■vP

If this p rocess is repeated s will build up to include a ll statem ent

labels in the string p and r will build up to include a ll reference labels

in p.

Among the m em bers of the se t of trip les (s, p, r) only a few satisfy

the requ irem ent, that a ll re fe ren ce labels appear as statem ent labels

in the string p. To define th is subset another canon is used

s sta tem ent labels in p w ith reference labels r ; r in s j-p- program

(111-17)

F o r the purposes of the p rogram m er using this specification to

help him check legal s trin g s, lim ited FORTRAN is essen tia lly defined

by the ed icts and canons (III-l) through (III-l7) previously d iscussed .

However, one aspect of the language has not been defined.

E very statem ent m ust appear on a card that is 80 columns long.

In the specification of lim ited FORTRAN as defined by canons and edicts

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 43: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

( I l l-1)-(III-17} ao account of num ber of columns on a card has

been made (all other aspects of card form at have been defined). The

co rre c t num ber of blanks, if any, have not been filled in between the

end of a statem ent and the end of a card m ark #.

This aspect of a program m ing language was not defined as the

canonic system of lim ited FORTRAN was built so as not to com plicate

the specification. However th is aspect is part of the syntax of a

language and can not be om itted from a complete syntactical specification.

It is defined below.

A fille r is the null string o r a string of blank spaces.

x f ille r }- Ak 1* x l fille r (HI-18)

F il le r s will be in se rted into m em bers of the se t of strings called

p rog ram , edict (IU-17). The resu lting set of strings will be called

any length card program . Hie canon below defines this set.

a#b program ; f f ille r af#b any length card program (H I-19)

Note, because of the way in which a program is built up (canons

and ed ic ts (HI-12) - (IH-17)]t the variable b in the f i r s t p rem ise may

denote the null s tring . However a may not denote the null s tring since

# by itse lf is not a program .

T here is a subset of the se t of strings called any length card

program that a re composed of strings of length 80 ch a rac te rs separa ted

by # . This set is defined using the following four ed icts.

f"I( 2, 3 0 { T { O, =( + , I ch a rac te r space (IH-20)

with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 44: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

34

al* a~Z* a 3 * *** > a gp ch a rac te r space}- a^a^a- 3 . . . 3-qq card

(HI-21)

c card ; x card program }• A t xc# Shrd program (UI-22)

The se t card program contains m em bers that a re concatenations of

strings of 80 ch arac te rs separa ted by #. The in te rsec tio n of the se t card

program and any length card program defines the set of a ll legal

program s of lim ited FORTRAN that contain s trin g s of 80 ch arac te rs

separated by #. This se t is defined by the canon.

p any length card p rog ram ; p card program }- p legal card program

(IU-23)

The canons and edicts (III-l) through (IU-23) com pletely define

the syntax of lim ited FORTRAN,

in. 9 Canonic System of Lim ited FORTRAN

digit j- 1, 2, 3 digit 1

number d d igit; n num ber {- d, nd num ber 2

d digit; x l is t j- A < xd, lis t 3

x lis t |- A in x 4

x t y l i s t ; c in xy; d digit }■ cd, in_ xdt y 5

differ |- 1 differ 2 6

|- 1 differ 3 7

2 differ 3 8

c differ d f- d differ c 9

not in d digit |* d not in A 10

d differ x; d not in y }• d not in yx, 1 1

lis t

m

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 45: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

35

. . . statem ent labels

in. . . with refer- t-A sta tem ent labels in A with reference labels A

ence la b e ls . . .

f ir s t p rem ise a s statem ent labels in p with reference labels r ;

n num ber; ------- (- s statem ent labels in p£l=I+n#

with reference labels r

d not in s {- sd, statem ent labels in pld4I=I+n#

with refe rence labels r

d digit j- s statem ent labels in p^GOTOd# with

refe rence labels rd ,

c not in s; d digit j- sc, statem ent labels in

plc^GOTOd# with reference labels rd ,

end p rem ises

program

fille r

s statem ent labels in p with refe rence labels r;

r Jri s; |- p program

x f ille r {-A < x j f ille r

any length cardprogram a#b program : f f ille r }* A t af#b any length card

program

charac ter space 1 2^ 3 Gt T t I c h a rac te r space

card

a card 80 --------card program

legal card program

c c a rd ; x card program J- A * xc# ca rd program

P any length card p ro g ram ; p card program

j- p legal ca rd program

1 2

13

14

15

16

17

18

19

20

21

22

23

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 46: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

36

III. 10 Canonic System of the Canonic System of Lim ited FORTRAN

Starting with the canonic system that defines lim ited FORTRAN

there is an unending se ries of canonic systems each of which defines the

one below it. In Sections I I I . 4 through HI. 9 we have defined the

canonic system of lim ited FORTRAN in English. However, this

canonic system could have been defined by another canonic system .

This section is concerned with a partia l development of the canonic

system (called the second canonic system ) of the canonic system of

lim ited FORTRAN. Enough of the second canonic system is developed

to define p rec ise ly the set of strings whose m em bers a re a ll the strings

of lim ited FORTRAN and th e ir productions. This set is called

derivation. Canons of the second canonic system a re called sta tu tes.

The words canon, re m a rk , te rm , derivation, am id , conclusion

do not appear in the canonic system of lim ited FORTRAN (Section HI. 9).

These words define strings of the canonic system of lim ited FORTRAN.

They a re predicates in the second canonic system .

We have defined in English the sets of strings named rem ark and

term (Section H I. 5). The predicate canon is the name of the set of

a ll canons and edicts changed to canons of the canonic system of lim ited

FORTRAN (Section IH. 9). The predicate conclusion is the name of a ll

rem arks that appear to the righ t of {- in a canon. A rem a rk is amid

a lis t of rem ark s if and only if it is contained in that l is t .

The following two statu tes of the second canonic system may now be

stated. The sign ^j~is the a sse r tio n sign of the second canonic system .

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 47: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

|j- }-A derivation

j-f derivation; c conclusion; jfc canon; g am id f j - j - j-f<c derivation

(III-2 4 )

(IH-25)

The sam e ru les as -were stated for canons apply to sta tu tes .

Statute (IIX-24) above is read "It can be a sse r te d from no prem ises

is read "If the prem ises brf is a derivation* and *c is a conclusion* and*gc

is a canon? a re assum ed, and if g is am id f th en 'it can be a sse rte d that

|-fc is: 3 . derivation. "

Statute (HI-24) is n ecessa ry to s ta r t the recu rsio n . Statute (IH-25)

m ay be in te rp re ted as saying that if we have a derivation and we w ish

to add another string ,then th is string m ust be a conclusion of some

canon and the prem ises to that canon m ust occur previously in the

derivation.

HI. 11 Example of a D erivation

One m em ber of the se t of strings named derivation is composed of

This section will dem onstrate how statutes (HI-24) and (IH-25)

a re used to recu rsively generate the above string and its production.

Lines 1 - 1 8 below form one strin g of the se t called derivation.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

that the sign {-followed by the null string is a derivation". Statute (111-25)

the following string of lim ited FORTRAN and its production.

61=1+ 1#

1141=1+12#

124G0T01# program

Page 48: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

38

The same recu rs io n method will be used as was applied to their| canonic system of lim ited FORTRAN to show that the s tring 222 belongsif

to the set "num ber11 (Section I I I .6 ) and to show that the tr ip le t

"2 ," "12^G 0T03#M " 3 ," belongs to the se t "♦. . statem ent labels i n . . .

y ith reference la b e ls . . . 11 (Section I I I .8 ).t

The recu rsion will be applied to Statute (HI-25) over and over again

until the desired string is reached. The f ir s t recu rs io n on Statute (HI-25)

has; A for f, "A statem ent labels in A with reference labels AMfor c,

for g. The resu lting fc is line 1 of the derivation below.

I The f ir s t column of the derivation contains the num ber of that linet, for reference purposes. The second column contains the num ber of

| the canon or edict changed to a canon of the canonic system of lim itedr

I. FORTRAN used (Section I I I .9). The variable gc is used to denote th isI

canon. The th ird column contains the num bers of the lines of the

derivation that a re used as p rem ises to the canon. The variab le g is

used to denote these p rem ises . The fourth column contains the re su lt ofiusing the Statute 25.

\ Line 1 and 2 a re generated by letting: f be line 1 , c be ed ic t 1f.

changed to a canon ( 1 digit), g be

Lines 1 through 3 a re generated by letting : f be lines 1 and 2, gc be

canon 2 ( 1 digit | -1 num ber), g be line 2 ( 1 digit), c be 1 num ber.

Repeating th is p rocess over and over the en tire s tring in the right

% hand column of the derivation is generated. This string is a m em ber of

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 49: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

39

the set "derivation 11 as is defined by the second canonic system .

line canon linenum ber num ber number

gConclusions of Statute (IH-25)

fc

1 1 2 ji- A statem ent labels in A with reference labelsAi !

2 1 1 digitt

3 2 2 1 num ber

4 13 1,3 A statem ent labels in 61=1+1# with referenceA

lab e l8 A

t 5 1 0 2 1 not in A

[ 6 1 2 digit

\ 7 2 6,3 1 2 num ber

}■'I

8 14 4 ,7 ,5 1, sta tem ent labels in 61=1+1#114I=I+12# with

re fe ren ce labels AI

j»•

8 9 6 1 d iffer 2

r1 0 9 9 2 differ 1

r1 1 1 0 6 2 not in A

j 1 2 1 1 1 0 , 1 1 2 not in 1

[13 1 6 8 , 1 2 , 2 1,2 , statem ent labels in 61=1+ 1# 1141=1+ 12#

124G0T01# with reference labels 1,

\ 14 3 A lis t

j15 3 2, 14 2 , l is t

j-.

1 6 4 15 in 2 ,f :

I 17 5 14, 15, 16,2 1 , in 1 , 2 ,

18 17 13, 17 £l=I+l#114I=I+12#124G0T01# program

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 50: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

4 0

III. 12 Syntax of GPSS III

The rem aining sections o£ this chapter a re concerned with the syntax

of a com puter sim ulation language, GPSS III (7090 version). Exam ples

of a use of the specification to check legal form ations of strings of

GPSS III is given in Section III. 13. The m otivation and developm ents of

a complete syntactical specification of GPSS III a re given in Section III. 14.

Appendix A presen ts the specification in a form that fac ilita tes its use

as a syntax re fe ren ce . Some of the syntactical constructions that were

found to be inaccurate ly or ambiguously sta ted in the GPSS III m anuals

a re d iscussed throughout the rem ain ing sections of this chap ter and in

Appendix B. Experim ental verification of these constructions is a lso

presented in Appendix B.

The rem aining sections a re w ritten for the read e r who has had some

contact with GPSS. The read er who has had no contact with GPSS may

either read the rem aining sections of th is chapter for th e ir m ain ideas

and not get involved with the details of a particu lar construction or

example; or he m ay read Chapter IV, study Appendix B and D, then come

back and read the se sections in detail.

The syntax of GPSS has been found in general to be le ss re s tric tiv e

than is stated in the m anuals. F o r exam ple on page 19 and 224 of [ 9 ]

the following statem ent appears: MA block symbol (label) m ust consist

of from th ree to five alphanum eric, non blank ch arac te rs , the first

th ree of which m ust be le tte rs . An additional re s tric tio n is that none

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 51: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

41

of the ch arac te rs in the following set m ay be used in a block symbol

(label) + - * / ( & = > , ) . "

It has been found by experim ent that in certa in cases the form of

labels may be far m ore general than th is . E. g. / 'A ' 1 MA12345" "A$. , + "

"ABC=, (" "A LL" w ere accepted, compiled, and executed as statem ent

labels. Acceptable statem ent labels w ere found to be from one to six

(not th ree to five) c h a rac te rs , the f i r s t ch arac te r m ust be a le tte r , the

rem aining ch a rac te rs may be void, blank, o r any IBM keypunch ch arac te r

including +-*/(&=! , ). On page 225 of [93 is fu rther stated :"D ollar

signs may never occur in the location field. " D ollar signs w ere found

to be legal ch a rac te rs in the location field of statem ents and legal in

labels.

The m ost re s tr ic tiv e form of labels was found to be that for those used

argum ents of sta tem ents (reference labels) and as argum ents of

VARIABLE definition statem ents. "ABC*1" "ABC$*" "A B C .)” "ABC*"

were found to be legal reference labels. "ABC$1" "ABC="' "ABC$, "

"ABC). " "ABC = 1" w ere found to be legal labels for argum ents of

VARIABLE definition statem ents.

A dollar sign before a label is recognized by GPSS as the label itself,

e. g. $ABC is the label ABC. By placing a do llar sign before a reference

label or a variable definition argum ent label the following w ere found to

be legal reference lab e ls ; $A12345" "$A=BC" "$ABC(*)" "$A" and as

legal variable argum ents "$ABC$$" "$A, , , , " ”$AB".

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 52: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

R eference labels w ere found to be legal argum ents in a lm ost a ll

statem ents.

The following were found to be illegal statem ent labels:"$A=BC"

"ABCDEFG" "123A". The following w ere found to be illegal reference

labels; "ABCDEF" "A -+ 12" "A=BC1" "ABC The following were

found to be illegal reference labels with a $ in front; "$A-+ 12" "$A, , , 11

"$A+ + + " "$A LL",

A fter a ll these legal and illegal constructions were exam ined it was

s till found that the m ost re s tric tiv e form of a label (a form that m ay be

used anywhere) is m ore general than is stated in the GPSS m anuals,

E .g . "ABC$=" "ABC*)11 "A BC.$" a re labels that may be used anywhere.

In the specification of GPSS presented in this d isse rta tio n the m ost

general perm issib le constructions a re defined. In the case of labels,

because of the d iv ers ity of legal form s depending on th e ir context,

(e.g. , statem ent labe ls , re fe ren ce labels) the definition becom es lengthy

but p rec ise .

In general the m anuals a re not c lea r as to when an argum ent of a

statem ent m ay be void. E.g. , is TEST E , , ALL. o r GATE SF , ALL

legal ? In the TEST statem ent the f i r s t two argum ents a re void. In

the GATE sta tem ent the f i r s t argum ent is void.

On page 224 C9l the following statem ent ap p ears: "When a logical

a ttribu te or re la tio n a l mnemonic is needed in the aux ilia ry TEST, GATE,

and LOGIC blocks, it m ust begin in column 13 fo r GATE and TEST blocks.

with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 53: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

4 . 5

and in column 14 fo r LOGIC blocks. " It was found by experim ent* that

the logical a ttribu te or re la tional mnemonic m ay begin anywhere from

column 13 to column 18 in these blocks.

In general the m anuals a re m ore re s tric tiv e than the GPSS actually

is; however, there a re instances when the m anuals a re not re s tr ic tiv e

enough. F»g.., on page 76 [ 10] appears the. statem ent:<In addition,any ca rd with

a blank operation field will a lso be trea ted a s a com m ents card . Thus,

blank card s m ay be used to provide spaces on the lis ting if desired"

is not co rre c t." Blank cards a re illegal and cause the en tire program to

be re jec ted .

On page 46 of [93 the statement*. "Any nonblank ch a rac te r (except *)

in column 1 w ill suppress printing of the block count" is not c o rre c t.

Any ch a rac te r o ther than a le tte r or * o r, in ce rta in instances, a $ will

cause an e r r o r which causes the en tire program to be re jec ted . If a

le tte r is used in column 1 i t s t i l l io es not supp ress the printing of

the block count s ta tis tic s . This in co rrec t sta tem ent gives both

sem antically and syntactically in co rrec t inform ation; sem antically

because a ch a rac te r in column 1 does not m ean a suppressing of the

block count s ta tis tic s ; syntactically because a card with any ch arac te r

except a le tte r o r * o r $ in colum n 1 will be re jec ted solely on its form .

F o r fu rth e r exam ples of the form of legal and illegal statem ents

consult Appendix B.

GPSS is syntactically very com plicated. This is a re su lt of the

* see Appendix B

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 54: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

4 4

num erous and different re s tric tio n s placed on a ll strings of GPSS. F o r

th is reason the specification becom es much longer than it would if there

w ere few er re s tr ic tio n s , e . g. , if there w ere only one legal form

of labels as th ere is in FORTRAN, MAD or ALGOL.. *III. 13 Exam ples of a Use of the Specification of GPSS

It is suggested that the read e r who is not thoroughly fam ilia r with

with GPSS read the second exam ple, page 46 (which is not as involved)

and not read the one below.Let us suppose a p rogram m er w ishes to know the legal form s of a

TEST statem ent in a program of GPSS. He searches the left column of the canonic system , Appendix A, until he finds the predicate program .

All predicates a re lis ted alphabetically in Appendix A. To the right he

finds the canon

s statem ent labels in p with refe rence labels r ; r labels among statem ent

There a re two p rem ises that m ust be satisfied . This canon defines

a program in the sam e way as Canon I I I -17 of lim ited FORTRAN. Each

predicate used in a prem ise is defined in the specification and the

program m er may sea rch the left hand column of the specification until

he finds these p red icates. The nam es of the predicates have been

chosen to a s s is t the p rogram m er in rem em bering the construction

defined by the p red icate.

The second prem ise used in the canon above is

This prem ise a s su re s that a ll re fe rence labels used in a program m ust

* If a specification of a language, s im ila r to the one presented in th is d isse rta tio n , preceded its im plem entation on a com puter, the difficult constructions could be elim inated. This was not done with GPSS III.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

labels s v- p program .

r labels among statem ent labels s

appear as sta tem ent labe ls . If the p rogram m er looks a t the canons and

Page 55: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

45

edicts that define the set of strings named labels among statem ent lab e ls ,

he will find that r and s a re sequences of statem ent labels separated

by comm as where a ll labels of r a re among s. E.g», The pair of strings

"ABC, , A$=$" "ABCD, A$=$, X+ ()YZ, , , , , , ABC" is a m em ber of the set

named labels among statem ent labels.

The program m er searches the left hand column for the predicate

used in the f irs t prem ise . . . statem ent labels in. . . with reference lab e ls . . .

Among the canons that define this predicate he will find the conclusion *

f" s i , statem ent labels in paTESTltyfh# with reference labels rz , g, i,

He m ust now find the perm issib le values of the variab les s i p a t y f h

r z g i by finding the relevan t p rem ises (Section HI. 7, page 27). That

is , he m ust find the p rem ises that contain these variab les. Then he m ust

find the definitions of the p red icates used in these p rem ises . When this

is done he will find: s is a l is t of statem ent labels, 1 is a label, p is a

string of statem ents, a is a field that is six ch a rac te rs long followed by a

space, a consists of 1 and the rem aining ch arac te rs a re spaces, t is a

te s t mnemonic field which is six ch arac te rs long, t consists of a te s t

mnemonic (L, LE, G, GE,E^ NE) and blank spaces, y is an argum ent that

may be void or any standard num erical a ttribu te o r any standard num erical

attribute using ind irect ad d re ss in g or any reference label, f and h may

be void o r a comma or a comma follwoed by any standard num erical

a ttribu te or any ind irect standard num erical a ttribu te or any reference

label. $A$*= and ABC+1 a re exam ples of reference labels, r is a lis t

♦ The sign 1 is used to denote the le tte r 1 as in la b e l. 1 denotes the num ber on*

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 56: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

46

of bases of reference labelsv E. g. , The refe rence label $A$*= has

as its base A$*=. This is the base that m ust appear as a sta tem ent label

in the same program , z, g, r a re e ither void or if y, f or h w ere

reference labels z , g o r i a re their respective base. E . g. , If y

were ABC+1 then z would be ABC.

Thus some exam ples of legal TEST statem ents are**

> II TEST E $A$=*+3, Pl,$A $=*+4

ABC TEST E P I , , ABC

Z 12345 TEST E , , ABC

A TEST E

A LL TEST E 1, $A-2,

-A-, , , TEST “ E, , ABC

None of the above statem ents a re legal form s according to the GPSS

manual. Note the generality of statem ent labels, the generality of

argum ents, and the generality of the location of the te s t mnemonic E. Also

note that when a reference label is used a s an argum ent, its base

m ust appear as a statem ent label. E . g . , the argum ent $A-2 is

a reference label with a base A and it is A that m ust appear in the program

Another example of the use of the specification by a p rogram m er

might be as follows. Suppose a p rogram m er w ishes to know the form

of perm issib le com m ents or comment sta tem ents in GPSS. He searches

the left hand column of the canonic system , Appendix A, until he finds

the predicate comm ent p rogram . To the righ t is the edict

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 57: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

4 7

a#b program ; s sp aces; f string f- asf#b, a#*f#b, *f#b comment program

The edict above has th ree conclusions. The la s t *f#b comment

program has two relevant p rem ises (prem ises containing the sam e

variable as a conclusion) and they a re a#b program and f string . The

program m er looks in the specification and finds that a string is sim ply

a sequence of symbols of an IBM card punch. If a#p is a program b may

be a program (which includes the null string). Thus the sign * in column

1 followed by a string followed by a program is a legal comment program .

The second conclusion indicates in serting a card ’’♦f# into a program

is a legal construction.

The f ir s t conclusion indicates that one o r m ore spaces a fte r any

statem ent followed by any string f is a legal construction. All sta tem ents

consist of a t le a s t 18 spaces o r ch arac te rs;th u ^ no comment m ay begin

before column 2 0 .

III. 14 Development and M otivation of a Complete Syntactical Specification

of GPSS m

This section is concerned with the development of a complete

syntactical specification of GPSS III (7090 version). The specification

is a canonic system and follows the sam e in te rp re ta tio n and construction

ru les as w ere d iscussed in Section III. 1 through III. 11. The canonic

system of GPSS is developed in subsections a through o. E ach subsection

consists of a num ber of canons or ed icts followed by a d iscussion of

the m otivation fo r those canons or ed ic ts . The read e r may read each

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 58: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

canon or edict defining a set of strings of GPSS. Then he may read

the m otivation for these edicts. The sections build upon them selves.

We f ir s t ta lk about the basis of GPSS, le tte rs , sym bols, digits, then

labels, next argum ents. With these definitions we may then define

statem ents and program s,

a. Symbols, Spaces, N um bers, L e tte rs

symbol j- .1 K2 K 4^ 5t 6 7^ 8 < 9V 0 C; D^E < G^H^ 1K J K K k

MvN<°<p,Q<Rts<T«u^ w<x<Y<ziVv<(<n*.* *,)*. ~ v + t ^ s y m b o l

symbol o r space x symbol f symbol or space

symbol o r spaceor void x 3 ym b o 1 or space J- A ^x symbol or space or void

string x symbol or space; y s tring |- A ^yx string

digit f 0t 1 ,2 ,3 , 4, 5, 6 , 7, 8 , 9 digit

number d d ig it; n num ber}- d nd num ber

number or void x num ber }- A^x num ber o r void

le tte r j- A^B< C^Dt G? J^K< L t M< N^O^P^Q^R^S^T^

U < V t W < X t Y t Z l e t t e r

The predicates used.w ere chosen to aid the read er in rem em bering

the se t of strings named by the p red icate. The set of strings symbol

or space have a s m em bers symbols and spaces and the null string .

When this predicate is used with a variable (x symbol or space or void)

x m ay be e ith e r a symbol or a space or a void. A bbreviations have

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 59: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

4 9

been used to shorten the length of p red icates, sym for symbol. However,

w herever confusion m ight re su lt abbreviations a re not used,

b. Labels

d d ig it;! le tte r |- A^d^!^^ ,<$ < . label symbol

[note , (*-+ a re not]

x label symbol j- x^ , var label sym [note (+ -* / a re not

x label symbol j- x Q / re f label sym

[note , + - a re not]

a , b t c le tte r ;d e label symbol |- abode label

x label; a, b^ c le t te r ; d^e^f sym or space o r void

|- x, abcdef £nc label

x lab e l; a^b^c le tte r; d^e var label sym |» x^ abcde

var label

label symbol

var label sym

re f label sym

label

fnc label

var label

stm label

plain re f label base

indirect re f label base

x lab e l; a le t te r ; sym or space or void; f symbol

j- x( a ( abcdef{ A stm labels

x label; a^b^c le t te r ; dt e re f label sym; n num ber

|- x plain re f label base x; abcde plain re f label

base abcde; abcde4-n plain re f label base abcde;

abcde -n plain re f label base abcde

x lab e l; a le t te r ; b^c^d^e^f re f label sym ; n num ber

J- $x in d irec t re f label basex; $abcdef ind irect re f

label base abcdef; $abcdef+n ind irec t re f label base

abcdef; $abcdef>n ind irec t re f label base abcdef

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 60: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

50

re f label base x lab e l; a plain re f label base b; c ind irect re f label

base d; a le t te r ; b e t f re f label sym (-

x re f label base x; a re f label base b; c re f label

base d; w$abcdef re f label base abcdef;

N$abcdef re f label base abcdef

The predicates label symbol and label a re used to define the form

of a label that may be used anywhere.* If the program m er w ishes m ore

general form s of labels for a particu lar context he may fu rth er consult

the other definitions such a s function labels (fnc labels) or variable

labels, which may be used as argum ents of function data cards o r

variable sta tem ents. The f i r s t conclusion of each canon defining the

various labels is read*x is a . . . label where x is a label'i thus,the

various labels a re a t lea s t the label that may be used anyw here. It

is in part the various fo rm s for labels which have made the specification

of GPSS so lengthy.

T here a re two types of reference labels, a plain (e .g . ABC ABC+1

ABC-1) and an indirect(e. g. $ABC $ABC+1 $ABC-1). A $ before a

label in GPSS denotes the label itse lf , e .g ., $ABC denotes

ABC. When using e ith e r type a s an argum ent of a statem ent its base

m ust appear as a sta tem ent label in the sam e program . Hence, it is

n ecessa ry to use p red icates of degree two to specify the re fe ren ce labe ls;

one degree re fe rs to the refe rence label (e.g., $ABC01) the o ther to its

base (e.g. ABC).

*label nam es a se t that is the in te rsec tion of a ll the various se ts of labels,

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 61: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

51

The predicate re f label base nam es the set of o rdered pairs that

is the union of the se ts named plain re f label base and ind irect re f label

base.

c. Standard N um erical A ttributes

pref stand sum j- CH; P^M P^F^S^Rj V^FN^Q; TB{ K pref standa ttr ib

num a ttr ib

stand num a ttr ib p pref stand num a t t r ib ; n num berf- n^ pn^RNl^CL.1 sna

stand num a ttr ib sna

stand num a ttr ib p pref stand num a t t r ib ; n num ber |- n { *n% pn^ p*n sna*sna

RNl^CJwl stand num a ttr ib sna* sna

Notice the difference between stand num a ttr ib sna and stand num

a ttr ib sna* sna. The f i r s t defines a standard num erical a ttribu te without

ind irec t addressing and the second with ind irect add ressing . This

d istinction is n ecessa ry because, in d irec t addressing in standard num erical

a ttrib u tes is not always perm issib le ,

d.

a rg sna* sna o r a stand num a ttr ib sna*sna; b re f label base c a a rg re f label

sna* sna o r re f label A b a rg sna* sna or re f

label c

a rg void sna* a a rg sna* sna o r re f label b [■ a a rg void sna*sna or sna o r re f label

re f label b; \ a rg void sna* sna o r re f label A

a rg void , sna* x a rg void sna* sna o r re f label y |- ,x a rg void , sna* sna o r re f label

sna or re f label y; A a rg void , sna* sna o r re f label A

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 62: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

52

a rg num or re f label

a rg void num or re f label

a rg void , num or re f label

a rg sna or re f label

a rg void sna or r e f label

a rg sna* sna or nonrelative re f label

print mnemonic a rg

tran s fe r mnemonic a rg

ibsys tape a rg

nr num ber; a plain re f label base b; c ind irect re f label

base d j- n a rg num or re f label a ; a- a rg num or

re f label b; c a rg num or re f label d

a a rg num or re f label b {• a a rg void num or re f label b;

A a rg void num or ref label A

a a rg void num or re f label b [■ ,a a rg void , num or re f

label b; A a rg void ,num o r re f label A

a stand num a ttr ib sna; x re f label base y j- a a rg sna

o r re f label A ; x a rg sna o r re f label y

a a rg sna or re f label b f- a a rg void sna o r re f label b;

A a rg void sna o r re f label A

x stand num a ttr ib san* sna; a^b^c le t te r ; d^e^f^g^h re f

label sym x a rg sna* sna o r nonrelative re f

label A ; abcde a rg sna* sna o r nonrelative re f

label abcde; $adefgh a rg sna* sna o r nonrelative

re f label adefgh; W$adefgh a rg sna* sna or non-

re la tive re f label adefgh; N$adefgh a rg sna* sna

o r nonrelative re f label adefgh

I* * MOVt , FU T<f CHA(I I< , , Wj , Q^, T-t , A

print mnemonic a rg

n num ber |- .^FNn^Pn^BOTH^PICK^SBR^SIM , ALL, A

tra n s fe r mnemonic a rg

|> SYSOUZ^ SYSL«B2^SYSPP2 ibsys tape a rg

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 63: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

53

link o rd er n number l-.Pn^ , LIFO^ , LIFO link o rder a rga rg

xact unlink a stand num attrib sna* sna |- ALL^a xact unlinklimit arg sna* sna

lim it a rg sna* sna

xact unlinked a stand num a ttr ib sna* sna f- A t , BACK^ , a 4 , xacta rg , sna* sna

^ ^ ed- ± r g-> s ag-

These canons and edicts define m ost of the perm issib le argum ents of

statem ents of GPSS. The pred icates have been chosen to give inform ation

as to the form of the constructions named by the predicate. F o r exam ple,

m em bers of the se t named a rg void , sna* sna or re f label, a re the null

string , a comma, a ll standard num erical a ttr ib u te s , plain or ind irec t

addressing preceded by a com m a, a ll reference labels preceded by*- a

comma and the ir bases. In a ll cases where predicates of degree two a re

used to define argum ents the second variable re fe rs to the base of the

refe rence label used in the argum ent. If a reference label is not used,

the second variable denotes the null string .

Note the large num ber of different form s of argum ents. This is due

to the awkward res tric tio n s placed on the various argum ents depending on

the ir context. F o r example the form of argum ents allowable in a

GENERATE statem ent a re quite different from those of a te s t statem ent

o r a SPLIT statem ent o r an UNLINK statem ent. E ach one of these

statem ents has different re s tric tio n s placed on its argum ents,

e. F ie ld s

spaces x space j- l^xJL spaces

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 64: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

54

spaces or void x space |- x, A spaces or void

six sym or spaces

a t b^c^d^et f sym or spaces j- abcdef six sym or spaces

logic mnemonic |- R< I t S logic mnemonic

logic mnemonic abc six sym or spaces; b logic m nem onic; a ( c spacesfield

or void abc logic mnemonic field

gate mnemonic Mt NMt Ut NUt 1 NI^SF^SNF^SE^SNE^LR^LS

gate mnemonic

gate mnemonic abc six gym or spaces; b gate m nem onic; a^ c spaces field

or void f abc gate mnemonic field

te s t mnemonic |- Lt LEt Gt GEXE, NE tes t mnemonic

tes t mnemonic abc six sym or spaces; b te s t mnemonic; a ,c spacesfield

or void j- abc te s t mnemonic field

loc field with sym label

abc six sym or sp aces; b stm lab e l; a^c spaces void

|- a b c l loc field with stm label b

It was found by experiment; executing te s t p rogram s, that the logic

mnemonics used in LOGIC, GATE, or TEST statem ents may appear

anywhere in columns 13 through 18. Hence the m otivation of the predicates

logic mnemonic field, gate mnemonic field, test.m nem onic field. These

predicates define se ts of strings whose m em bers a re six ch arac te rs

long. All the ch a rac te rs a re spaces except for the logic, gate, o r te s t

mnemonic used in th is field.

Likewise there is a location field in which a sta tem ent label may

appear. The field is six ch a rac te rs long. The sta tem ent label may be up

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 65: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

55

to six symbols o r spaces long. The spaces before the f i r s t symbol

and a fte r the la s t symbol a re not considered part of the label. Thus the

field |*A1B1. contains a statem ent label A IB . Statem ent labels m ust be kept

track of for possible use as reference labe ls . Thus a predicate of degree

two, a loc field with stm labels b. a is the location field (e. g. j|AJ3 i )

and b is the statem ent label in that field (e. g. A1B).

f. Statem ents

. . . stm labels in. . .with re f labels h A stm labels In A with re f labels A

f ir s t p rem ises s stm labels in p with re f labels r ; a loc field with

label 1 ; -------

[• si, stm labels in paBUFFERS# with re f labels r

|- si, stm labels in paTRACE£# with re f labels r

(- si, stm labels in paUNTRACE^# with re f labels r

t ibsys -tape si, stm labels in paWRITE5tfwith re f labels r

second p rem ises b a rg sna* sna o r re f label c; n num ber; y a rg

void sna* sna or re f label z; -------

{- si, stm labels in pa AS SE MB LE^b# with re f

labels rc ,

f- s i, stm labels in paEXECUTE4b# with re f

labels rc ,

j- s i, stm labels in paGATHER|b# with re f labels

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 66: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

56

t logic mnemonic field |- si, stm labels in paLOGICtb# with re f labels rc ,

j- s i, stm labels in paMARKZb# with re f labels rc ,

|- si, stm labels in pa MAT C H6 b# with re f labels rc ,

|* si, stm labels in paPREEMPT4b# with re f

labels rc ,

j- si, stm labels in paPRIORITY3y# with re f

labels ra ,

{• si, stm labels in paPRIORIT Yly, BUFFER#with

- — re f labels ra ,

f- si, stm labels in paRE LEASE4b# with re f labels ?

J- s i, stm labels in paRETURN5b# with re f labels rr

(- s i, stm labels in paSEIZE^b# with re f labels rc ,

{- si, stm labels in paTERMINATE2y#with re f

labels rz ,

th ird p rem ises d a rg sna* sna or re f label e; f a rg void , sna* sna

or re f label g; -------

f s i, stm labels in paCHANGE5b. d# with re f

labels rc , e,

I I- s i, stm labels in paD EPA R T|bf # with re fr ,

label8 rc , g,

f- s i, stm labels in paENTER6 bf# with re f labels rc ,

* gate mnemonic field j- s i, stm labels in paGATEItbf# with re f labels rc ,

h si, stm labels in pa LEAVE bf# with re f labels rc ,

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 67: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

57

L

t link o rd e r a rg f- si, stm labels in paLJNK^btf# with re f labels rc , g,

f- s i, stm labels in paLOOP7b, d# with re f

labels rc , e,

J- si, stm labels in paQUEUE^bf# with re f labels rc , g,

|- si, stm labels in paTABULATE3bf# with re f

labels rc , g,

fourth p rem ises h a rg void , sna*.sna or re f label i; .j a rg num or

re f label k; m a rg void num ber re f label o; q a rg void , num or

re f label u; v a rg void num or re f label w; ——

|- si, stm labels in paADVANCE^yq# with re f

labels rz , u,'

f- si, stm labels in paADVANCE4y, *n# with re f

labels rz ,

[• si, stm labels in paADVANCE4y, FNn# with re f

labels rz ,

j* si, stm labels in paADVANCE4y, FN*n # with

re f labels rz ,

j- si, stm labels in paINDEX£jq# with re f labels rk , u,

I* s stm labels in palNZTlAI/^Xnq# with re f lab e ls , ru,

t num ber void (- s stm labels in paINITIAL4Xnr t# with re f

labels r

t print mnemonic a rg f sl , stm labels in paPRlNT6 v, mt# with re f labels rw, *

J* sl, stm labels in paSPLIT6 y, d# with re f labels rz , e

R ep rod uced with perm ission o f fhe copyright o w n e r Further reproduction prohibited without permrssron.

Page 68: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

58

f sl, stm labels in paS P U T |y , d, mh# with ref

labels rz , e, o, i,

t te s t mnemonic field |- sl, stm labels in paTESTltyfh# with re f

labels rz , g, i,

t tran s fe r mnemonic a rg [• sl, stm labels in paTRANSFER^tfhq# with

re f labels rg , e , u.

t xact unlink lim it a rg sna o r re f label f^; f^ xact unlinked a rg sna or

re f label j- sl, stm labels in paUNL.INK5b, d, tf2 fh# with

re f labels rc , e, f f3, g, i,

f ifth jsrem ises a^ a rg sna* sna or re f label no offset a?; -------

- I- s l» stm labels in paASSIGN§.a^fh# w ith re f

labels r a 2, g, i,

|- sl, stm labels in paASSIGN5a j,+yh# with ref

labels ra2 , *, i

}- sl, stm labels in paASSIGN|a i,-yh# with ref

labels ra?, z , i,

|- s l, stm labels in paSAVEVAL»UE3a1f# with

re f labels r a 2 , g,

(* s l, stm labels in paSAVEVALUE3a k+y# with

re f labels r a 2 , z-,

j- s l, stm labels in paSAVEVALUE3a |,-y# with

re f labels r a 2 , z ,

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 69: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

59

bj a rg void , sna* sna or re f label bz; b j a rg void , sna* sna o r re f label b4

[■ sl, stm labels in paHELP7yfhb]b^# with ref

labels rz , g, i, b2 , b4 ,

Cj a rg void sna or re f label c2 ; Cg a rg void sna or re f label c4 ; Cg a rg

void, num o r re f label eg; Cj a rg void , num or re f label eg; a rg

void , num or re f label Cjq; a rg void, sna o r re f label Ci?

j> sl, stm labels in paGENERATE^ci# with re f

labels r c 2 >

|- sl, stm labels in paGENERATE3 c^. C3 C5 C7 C9 #

with re f labels r c 2, c4 , eg, Cg, Cjq,

di a rg void num or re f label d2; dg a rg void num or re f label d4 ; dg a rg

void num or re f label dg |- sl, stm labels in paGENERATE3c j , c3, d j,

d3 d5 c l l# with re f labels r c 2, c4 , d2, d4 , dg, c 12,

end p rem ises

This method of defining statem ents is the same m ethod as was used

in the canonic system of lim ited FORTRAN to define sta tem ents. The

set named by”s stm labels in p with re f labels r" is a tr ip le (s, p, r): s

is a sequence of a ll sta tem ent labels , separa ted by com m as, in p; p is a

sequence of sta tem en ts, 'separatedby f ; r is a sequence of refe rence

labels, separated by com m as, in p.

The f ir s t canon of th is section is n ece ssa ry to s ta r t the recu rsio n

co rrec tly . Using this f i r s t canon s, p, r m ay denote A, the null string .

A fter a program is built up a check w ill be made to see if a ll the reference

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 70: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

labels in the sequence r a re among the statem ent labels in the sequence s.

Because of th is check it was n ecessa ry to use predicates of degree two

naming an o rdered pair of strings (be) fo r a ll argum ents; b may denote

a reference label if any w ere used, c would denote the base of th is

reference label. Thus in the instruction ASSEMBLE3ABC+1 defined above

b denotes ABC+1 and c denotes ABC. It is the base c that is added to

the lis t of reference labe ls , because it is c that m ust occur as a statem ent

label in the same program .

Note in the canons above defining BUFFER, TRACE and UNTRACE

statem ents, the sta tem ents a re a ll followed by spaces. The spaces a re

necessary to ensure that comm ents (to be specified in Section 111. 14 j)

do not occur before colum n 2 0 on a card .

Note the varie ty of argum ents perm issib le in the different statem ents.

By experim entation it has been found when void argum ents a re legal

and such argum ents a re accordingly defined. It has also been found that

m ore flexibility in the perm issib le form s of argum ents is legal than

the m anuals im ply, ospocially in the use of re fe ren ce labels. E. g.

A$. , BC ETERMINATE3, $A$. , BC+ 1 is a perm issib le statem ent.

Note that a sta tem ent label is perm issib le in the location field of an

INITIAL statem ent in a program . However, the statem ent label does

not become a m em ber of the l is t of statem ent labels a sso c ia ted w ith that

program . Thus, if a statem ent label is used with an INITIAL statem ent

it may never be refe renced .

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 71: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

6 1

Consult Appendix B for some constructions, that a re defined by the

above canons but a re not perm issib le according to the m anuals.

Appendix C may be studied for the m ore conventional constructions

used in GPSS.

g. Control C ards

alpha numeric x le t te r ; y digit; z alpha num eric |- A zyt zx alpha num eric

f irs t p rem ises a field with stm label b; s stm labels in p with re f

labels r ;

second prem ises c

t ibsys tape

s stm labels in paRESET^# with re f labels r

s stm labels in pa$6JOB38# with re f labels r

s stm labels in paEND8 # with re f labels r

s stm labels in paLIST7# with re f labels r

s stm labels in pa UNLIST 5# with re f labels r

s stm labels in paC LEAR6 # with re f labels r

a rg num o r re f label d ; x alpha num eric; -------

s stm labels in paREADTc# with re f labels rd ,

s stm labels in paREWlND5t# with re f labels r

s stm labels in paSAVE^x# with re f labels r

th ird p rem ises y a rg void num or re f label z; e a rg void , num or

re f label f ; g a rg void , num o r re f label h;i a rg void . num or

ref label i :-------

* iksys tape j- a stm labels in paJOBTAPE^t, cdg# with re f

labels rd , f , h,

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 72: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

62

(- s stm labels in. paSTART 6 yegi# with re f labels

r z , f , hj,

j- s stm labels in paSTART£y, NP, eg# with re f

labels ry , f, h,

end prem ises

The above canons specify the control cards of GPSS. Note that

statem ent label is perm issib le in the location field of every control card

but th is label is never added to the l is t of statem ent labels "s" . Thus

a statem ent label of a control card may never be referenced ,

h. P rogram

a stm labe l; b lis t stm label |- A {ba, l is t stm labels

b lis t stm labels; c stm label [- A labels among

stm labels a; , labels among stm labels a; A labels

among stm labels .a; c, labels among stm labels a c ,b

a labels among stm labels b; c labels among stm labels

d; e labels among stm labels f j- ace labels among

stm labels bdf

lis t stm labels

labels among stm labels

^rogranrt (first out of 3)

a stm labels in p with re f labels r ; r labels among stm

labels a J- p program

Section III. 14 f and III. 14 g defined se ts of tr ip le s (s, p ,r ) : Where s

is a sequence of statem ent labels separated by com m as in p; p is a

sequence of sta tem ents; r is a sequence of refe rence labels separated by

com m as used in p. In o rder fo r p to be a program a l l refe rence labels

m ust correspond to statem ent labels in the s a m t p rogram . Thus m em bers

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 73: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

63

of the lis t r of refe rence labels m ust be among the m em bers of the lis t

s of statem ent labe ls . The above canons specify this re s tric tio n . Note

in the canon and edict defining labels among stm lab e ls , the variab les

a b c d e or f m ay denote null s trings. Thus it is possible to generate

the conclusion AB, , , C labels among stm labels ZZ,A B, , ,D ,C , ,E F G .

This form of conclusion was conveniert because both s and r of the

triple>s(s, p, r) may have se rie s of commas resu lting from e ith e r, the

location fields of sta tem ents containing null string as labels, or an

argum ent that did not contain a reference label. F o r example a TEST

statem ent with no statem ent label and no reference labels may have the

conclusion from Section III. 14 fj 1 denotes A ; y denotes P I , f denotes

Q l, and h denotes 5; thus z, g, i would denote A ; and a would denote seven

spaces. The resu lting conclusion would be

s, stm labels in p2TEST l tP l , Q 1, 5 with re f labels r , , ,If.;

i. Pseudo O perations

f f i r s t p rem ises a field with stm label 1 ; b re f label; b labels amongC ' — — — , , ■ .. ...

( stm labels sb, ; s stm labels in p with re f labels r ; s spaces

void; b s ,n s , t s six sym or sp aces; -------

| |- s stm labels in paORG8 bs# with re f labels rI

n number, o r void j- s stm labels in paICT8 ns# with re f labels r

t stm labe l |- s l, stm labels in paSYN8 bs# with re f labels r

|- s stm labels in paABS8 # w ith re f labels r

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 74: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

}- s stm labels in paENDABS5# with re f labels r

end prem ises

The above edicts define the constructions of pseudo-operations of

GPSS. It was found by experim ent that statem ent labels a re perm issib le

in a ll pseudo-operations but in only one (SYN) is the statem ent label

added to the lis t of symbols by the GPSS com piler. T herefore , only

the statem ent label of the pseudo-operation SYN m ay be used a s a

reference label. Note that 1 is added to the lis t of statem ent labels in the

edict defining SYN. All o ther statem ent labels of pseudo-operations

a re not added to the l is t of statem ent labels s.

Note if a reference label is used in an ORG o r SYN pseudo-operation

then that label m ust be previously defined in the sam e program . The

work previously is used to differentiate from the m ore usual case when

the reference label may correspond to any sta tem ent label in the sam e

program (before or a fte r the statem ent containing the reference la b e l) .

j. Comments

comment a#b p ro g ram ; s sp aces; f s trin g |- asf#bt a#*f#bt *f#bprogram

comm ent program

program p comm ent program |- p program(second out of 3 ) ---------------- E 5 ------"

Possib le constructions of com m ents specified by the above edicts

were d iscussed in Section III. 13. That d iscussion w ill not be repeated

here. Note in the above edicts the variable b m ay denote the null s tring

because # by itse lf is not a program .

with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 75: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

k. Function Definition

function codes

five sym or spaces

field with num

n num ber |- Cn, Dn, La, En, Mn function codes

a l b<ct d<e sym or space |- abcde five sym or spaces

abc five sym o r spaces; b num ber; a^c spaces or void

|- lacdl^ field with number b

fnc . card with a fie ld with num b; c function code; d a rg sna or ref label

re f label e a FUNCTION3c, d# fnc card with re f

label e

fnc data field sna or re f label

f ir s t p rem ises a {c spaces void; s stand num a ttr ib sna ; —

abc six sym or spaces; b fnc label |- abc fnc data field s na

or re f l a b e l b

asc six sym or spaces j- a sc fnc data field sna

or re f label

aej fo_ six sym.or. spaces; f mtmbetjT: void I* ae.fc func date field

or re f label

end p rem ises

wither erf labels a *nc data field sna or re f lab e l b; c fnc data field sna

or re f label d; e fnc data fie ld sna or re f label f; g fnc

data field sna or re f label h; i fnc data card with

re f labels j |- acdg fnc data c a rd with re f labels

b, d, f, h, ; iac fnc data ca rd w ith r&f labels jb, d,

eightysym or a^ t a ?# • . . , a RO sym or spaces |- a Ta 7 a^ , . . a ftft eightySp3*C6 S ^sym o r spaces

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 76: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

6 6

eighty column data card -with ' re f labels

a fnc data ca rd with re f labels b; as eighty sym or spaces;

s spaces o r void; c eighty column ffiac data card with rei

labels d }- as% eighty column fnc data card with re f

labels b, ; ca.8% eighty column fnc data card with ref

label db,

fnc def with re f labels

a fnc card with re f labels b; c eighty column data cards

with re f labels d j- A fnc def with re f labels a ;

ac fnc def with ref labels b, d,

The re la tively large num ber of canons and edicts needed to specify

the function definition cards is due to the difficult constructions and

re s tric tio n s placed on these ca rd s . The predicate field with num ber nam e/

the set of strings that a re the location field of a ll definition sta tem ents.

These fields consist of a num ber and spaces; the f i r s t and las t ch arac te r

m ust be a space (e. g. 1.204 4251 £71 a re legal fields with num bers 20 25

and 7 respectively).

A function data field is six c h a ra c te rs in length. Contained in th is

field m ay be any standard n u m erica l a ttribu te (no in d irec t addressing)

o r any reference label o r any decim al num ber (e. g. 1P12. ABCDEF

1.23.41. a re function data fields). Note no ind irec t ad d ressin g is perm issib le

no re la tive addressing is p e rm iss ib le . A function data card is composed

of a sequence of function data fie ld s .

No com m ents a re p erm issib le on function data card s and no com m ent

cards m ay be in se rted between function data ca rd s . T h is is the only card

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 77: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

to which these re s tric tio n s apply. The sign % is used to aid in specifying

these re s tric tio n s and is in te rp re ted a s an end of card m ark . The above

canons and edicts define a function data card to be a sequence of function

data fields. An eighty column function data card is a function data card

followed by the co rre c t num ber of spaces to make eight columns followed

by a %. This construction and the m anner of defining comm ents

(Section III. 14 j) prevents comm ents from being added to o r in se rted

between function data ca rd s .

A function def is a function ca rd followed by eighty column function

data ca rd s .

1. V ariable Definition

variable op |- + /« ( variable op

var a rg sna o r a stand num a ttr ib sna; I var lab e l; d le tte r ; e. f^gt h var re f label ""

label sym |- a var a rg sna o r re f label A ; N$defgh va

a rg sna or re f label defgh; W$defgh v a r a rg sea o r

re f label defgh; $ defgh var a rg sna o r re f label

defgh; 1 var a rg sna o r re f label 1

a var a rg sna o r re f label b; c variable op; d var a rg

field with re f labels e |> a var a rg field with re f

labels b, ; dca var a rg fie ld with re f labels eb,

a var a rg field with re f labels b; c field with num d

var a rg field with re f labels

var def with re f labels

cVARIABLE3a# v a r def w ith re f labels b;

A var def with re f labels a

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 78: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

6 8

A variable argum ent field is a sequence of variable argum ents

separated by variable o p era to rs . Again pred icates of degree two a re used

to keep track of the bases of reference labels used, if any. By keeping

trade of the bases, we may la te r check to see if a ll bases of reference

labels used in a variable definition occur a s statem ent labels in some

program . If they do then th is variable definition may be added to the

program .

F o r exam ples of VARIABLE definition statem ents consult Appendixes

B and D.m

m. Storage Definition, Table Definition

a field with num b; c a rg num or re f label d |- A storage

def with re f label A ; aSTORAGE4c storage def

with re f label d

storage def with re f label

table a rg

table def with re f labels

a stand num a ttr ib sna J- a^a-^RT^IA table a rg

a field with num b; c table a r g ; n num ber; d a rg

void , num or re f label e , f a rg void , num o r re f

label g; h a rg void , num o r re f label i; j a rg void ,

num or re f label k |- A table def with re f labels A ;

aTABLE 6 cdfhj# table def w ith re f labels e, g, i, k, ;

aQTABLE5ndfhj# table def with re f labels e, g, i, k,

n. P rogram

program b fnc def with re f labels c; d var def with re f labels e; f(three out of 3 ) —------------------------------------ ---------------------------------------

storage def with re f label g; h table def with re f

labels i; s stm labels in m n with re f labels r ;

re , e, g, i labels among stm labels s }- mbdfhn program

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 79: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

69

sim ulate p program |-*6 SIMUIATE#p sim ulate programprogram -

The canon above^ defining progran^ allows function, variable, sto rage,

or table definition cards to be inserted in any program provided that a ll

reference labels used in these definitions have th e ir bases among the

statem ent labels assoc ia ted with that program .

A GPSS program that has a card with the sign * in column one and

the word SIMULATE sta rting in column 8 w ill, if the program is

syntactically c o rre c t, compile and execute.

o. GPSS P rogram with Card Input

3-#b p rog ram ; s spaces or void {- as#b any length card

program

a j ^ a 2 ^a-3 ^ . . . t a 7 i sym or space; x seventy-one column

card s |- A . . a 7 i# seventy-one column card

p any length card p rogram ; p seventy-one column

card s (- p legal info ca rd program

a H a 2 t a 3 t * • • t a i 8 3 Ym ° r space |- a ^a ^ a^ . . . a jg eighteen

sym or spaces

x sym bol; y symbols |- x, yx sym bols

xabsd#y( wae#y legal info ca rd p ro g ram ; a i ( a 2 t a 3 < • • • j a 9

sym space; a eighteen sym spaces; b d string ; e

sym bols; s space }- xabsda}a2. . . a g f y ^ w l a ^ . . a^#y

identify ca rd program

a l t a 2 f • • <a 80 sym or space; b c a rd s }- A <b a 1a 2. • *a go#

card s

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

any length card program

seventy-one column cards

legal info card program

eighteen sym or spaces

symbols

identify card program

cards

Page 80: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

legal ca rd p identify card program ; p card s f* p legal card programprogram

sim ulate card a ^ a 2 {a-2 . . . a^,. sym or space; p programprogram —— —— ———

h *|SIM ULATEa1a 2 . . . a 65#p sim ulate ca rd program

This section is concerned with filling in the proper num ber of spaces

a fte r the end of a statement, o r a fte r a sta tem ent and its comment, to

complete a card of 80 colum ns. No a ttem pt has been made in previous

canons to a ssu re that the end of card m ark # was placed a fte r 80 charac ter

We have a ssu red that a ll sta tem ents begin in column 8 and a ll argum ents

begin in column 19- The f ir s t canon of th is section allows the in se rtion

of spaces between the c h a rac te r before the end of card m ark # and the

end of card m ark. The resu lting set of s trings a re program s that consist

of a sequence of any length strings separated by #.

Out of a ll the m em bers of the set named any lengthjcard program

there is a subset that has a s m em bers sequences of strings (of exactly

71 ch arac te rs) separated by # that a re p rogram s. We want the program s

composed of strings of exactly 71 ch a rac te rs and not 80 c h a ra c te rs ,

because the ch arac te rs in column 72 through 80 a re never recognized by

GPSS. Let us take a case where an illegal construction would re s u lt if

we included a ll 80 columns:. Take the sta tem ent

ABC TRANSFER 222222222222222222222222222222222222222222222222

222* ABC, ABC+

This statem ent could be derived from the canon defining a TRANSFER

statem ent. However, it does not form a legal ca rd program even though

with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 81: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

.71

it is 80 ch a rac te rs long. It is not legal for two reaso n s . F i r s t , an

argum ent of GPSS m ust te rm inate before column 72. If any one of the

2’s had been a space th is wo_uld have been a legal construction. E v e ry ­

thing to the right of the space would have been taken a s a comment.

Second, GPSS does not recognize column 72 through 80. Thus the label

in the second argum ent ABC would be in te rp re ted as A which would be

an illegal refe rence label.

To define the subset of any length card program s which a re 71

columns long we take the in te rsec tion of the set any length card program

and the set 71 column ca rd s . This in te rsection is called legal info card

program .

If a card of a legal info-card program has a continuous argum ent up

to column 7 1 a space m ust occur in column 72 followed by any iden tifier

to complete the 80 columns of a card . If a t le a s t one space occurs in

columns 19 through 71 then column 72 through 80 m ay contain any

ch arac te r. The canon defining identify card program takes into account

the two cases (continuous argum ent o r not).

An iden tifier ca rd program consists of legal program s that a re

composed of cards of f rom 71 columns to 80 columns long. There is a

subset of the set iden tifie r ca rd program that is composed of program s

containing cards of exactly 80 colum ns. To define th is subset we take

the in te rsec tion of the se t iden tifier card program and the se t ca rd s .

The resu lting se t is called legal card program .

The m em bers of the se t legal card program a re a l l the syntactically

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 82: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

72

legal constructions of card program s of GPSS III (7090 version). If

a GPSS III sim ulation run is desired , it is n ecessa ry to place a card

with the sign * in column one and the word SIMULATE starting in

column 8 as the f ir s t card of a program .

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 83: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

73

CHAPTER IV

TECHNIQUES FOR MODELING COMPLEX SYSTEMS

IV.1 IntroductionOne view of the process involved in computer applications is

depicted in Figure IV-1.

techniquescomputerlanguage

ABSTRACTION COMPUTERIMPLEMENTATION

(model)

PROBLEM (object system)

Figure IV-1 A view of digital simulation.

This dissertation is concerned with some of the issues depicted in the above figure when this process is applied to the digital simulation of complex systems. Chapters II and III were concerned with the syntax of computer languages used in this process.

The purpose of this chapter is to present a straightforward method for characterizing and simulating complex systems.

4>

The method presented allows the user to a) model the elements and characteristics of a system by sets of n-tuples and b) specify the operations in the system by a sequence of tranlations on the n- tuples.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 84: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

74

Before discussing our views on simulation, we will distinguish the functional from the structural aspects of- a model or a theory.This distinction has been aptly made by Prof. A. Oettinger: [76]

"A functional model is like the electrical engineer's proverbial "black box," where something goes in and something comes out, and what is inside is unknown or relevant only to the extent of somehow relating outputs to inputs. A structural model emphasizes the contents of the box. A curve describing the current passing through a semiconductor device as a function of the voltage applied across its terminals is a functional model of this device that is exceedingly useful to electron-circuit designers. Most often such curves are obtained by fitting a smooth line to actual currents and voltages measured for a number of devices. A corresponding structural model would account for the characteristic slope of the curve in terms that describe the transport of charge-carriers through semiconductors, the geometry of the contacts and so forth. A good structural model typically has greater predictive power than a functional one. In this case it would predict changes in the voltage-current characteristics when the geometry of the interface or the impurities in the semiconductor are varied."

This chapter is concerned with the structural simulation of discrete state-changing systems, where the changes in the state of the system occur at discrete intervals. The systems are modeled as network flow systems-with the following characteristics:

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 85: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

75

the system contains "components" (or "elements”) each of which performs a prescribed function;

items flow through the system, from one component to another, requiring the performance of the present component function before the item can move on to. the next component;

components have a finite capacity and a non-zero process time; hence items may have to wait in "waiting lines" or "queues" before being processed.

_ To demonstrate this model we will use portions of a digitalsimulation of the clinical chemistry laboratories of Yale-NewHaven Hospital. We use the structural model to analyze and predictsystem behavior. In particular, we wish to use the model toevaluate the effect of varying equipment parameters, hospital procedures,introduction of a time-shared digital computer system, softwareparameters, technician parameters. The principal measures of system

areperformance produced by the model^the process time of biological samples, equipment utilization, job queues, and response time to an emergency request.

IV.1 Modeling Techniquea. Underlying Systems

Complex systems may be viewed as comprising two underlying systems, an information system and a materials' handling system. The materials handling system deals with physical quantities. The

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 86: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

76

information system deals with information. Their interrelationship is depected inFigure IV-2. We will use the term "complex system" or "system"to refer to the entire system, or the materials handling system, or the information system. The underlying systems of a complex system may themselves be complex systems.

materials materials

V observation control

information informationinformation

materialshandling

Figure IV-2 Underlying systems of a complex system.

b. Abstracted Model Set of n-tuplesEach element of a complex system may be represented by an

n-tuple of scalars x1,x2 ,....x^. The set of all n-tuples will bewritten S , where the subscript "o" denotes that S is the set of o r o

n-tuples associated with the object system. (See Section 1.2 for definition of object system.)

ScalarsThe elements of the system have individual characteristics.

Correspondingly, each x^ of the n-tuple has a value that characterizes the particular element and a domain of permissible values. Some

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 87: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

77

scalars have initial values that never change while others have values that are continually changing. A scalar may refer to aproperty of the element, its priority, its time of entry into thesystem, its status, or its location in the system. We willcharacterize all objects in the system by a set of n-tuples, wheren may be different for different objects.

Subsets of n-tuplesIf the scalar x^ denoted weight or color of an n-tuple and this

n-tuple characterized a queue, then the value of x. would have noiC

meaning. In general, if every element of a system were characterized by an n-tuple of exactly n scalars, many scalars characterizing a particular type of element would have no meaning. Elements with similar characteristics will be separated into subsets with a fixed number of scalars/]. If denotes a subset q, the n-tuples would be written as follows:

Cql^Xl’'* *,Xm^

CqifXl,***,XmI

Cq l [bl ’ '* - ,bn]

Cq2p[bl,*,*,bn]

C [t.,...,t ] qrL 1 s

where q denotes the particular subset, and r the m e m b e r of that subset.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 88: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

78

TranslationAs time progresses in a system, operations occur. A rocket

is launched, a blood sample is entered into the laboratory or a laboratory test result is recorded. We will account for these operations by changes in the value of the scalars of the n-tuples associated with the object. A change in the value of a single scalar will be called a translation. If x. is a scalar of the n-tuple

,x^ > • •. jX .,... ,xn then a translation on the n-tuple might result

specific translation does not necessarily operate on all n-tuples. It makes no sense for a ground crew to be launched. Further, the outcome of a translation must not result in scalar values that are outside the domain of possible values.

where T denotes a translation, i denotes that the object is represented by an i-tuple and hence is in the subset of i-tuples for the system, j denotes the index of the member in the subset of i-tuples, k denotes the scalar used, and S denotes the substitution rule for replacing the scalar.

Substitution RuleIf Xj is the scalar characterizing the time a rocket is launched,

then the same substitution rule associated with x, would apply to

i

in the n-tuple x ^ >•••,x^,..*xn« Since an operation may result in many system changes, an operation in the object system maycorrespond to many translations among the set of n-tuples Sq. A

Precisely, a translation may be represented byT[i,j,k,S]

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 89: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

79

all i-tuples representing rocket ships. The substitution rule would be "replace the present value of with the current time."

c. Digital Simulation ModelThe number of scalars necessary to model every characteristic

of an obiect or the number of n-tuples necessary to model to everyelement in the object system may be unlimited. When a digitalsimulation model S of an abstracted model S is constructed,m othe number of n-tuples and scalars of the model is bounded by the finite size and speed of the computers used for the simulation.

At this point in our discussion we will review our terminology. Three distinct systems are now being considered: 1. an object system, 2. the abstracted model, 3. the digital simulation model. Each of these systems has a corresponding terminology:

Obiect System Abstracted Model Digital Simulation Model

collection of objects

object

characteristic

set of n-tuples S set of n-tuples So mn-tuple of S

scalar

n-tuple of Smscalar

collection of objects with subset of Scsimilar characteristics

subset of Sm

In addition, time is measured differently in each of the three systems. The object system time is continuous and may be measured by a real clock. Model time is discrete and is measured by ordered

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 90: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

80

sequences of translations. Digital simulation time (the time it takes the computer to process the model) is continuous and may be measured by a real clock. We say that one hour of model time has passed when the translations that correspond to the operations in one hour of object time have been executed. _

Timing of OperationsThe timing of operations is controlled by elements of the

system itself. Recognizing which elements control the timing of theoperations in a system is' of utmost importance to the understandingof the system. Correspondingly, the order of translations amongthe set of n-tuples, Sq , should be controlled by the elements ofthe set S .o

d. Procedure for Constructing a Digital SimulationWe will construct a digital simulation for an object system

in the following steps:

1. Choose the important elements and characteristics of the object system (the set Sq).

2. define the set of translations T[i,j,k,S] that correspond to the operations on these elements.

3. recognize the elements that control the timing of operations and define the timing of translations among the set Sq.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 91: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

4. define the set of n-tuples Sm corresponding to the set SQ and give initial values where necessary to the scalars of Sm .

5. write routines for the translations Tm of Sm correspondingto the translations T of S .o o

6. implement a timing routine which will control the timingof the translations of S .m

e. Application of a ModelA purpose of simulating a system is to answer questions about the

performance.of the system. What is the effect of various parameters on system performance? What is the performance of the system to a prescribed job load? What is the effect of various parameters of the components of the system? Are any components saturated or near saturation?

If a system is viewed as a set of n-tuples, the operation of the system may be analyzed quite simply. The performance of the system may be specified by a sequence of translations. The effect of various parameters of the components of the system may be investifated by varying the values of the scalars corresponding to these parameters.(For example, to study the effect of replacing a machine that nails heels on shoes with a machine that operates faster, we simply replace the scalars characterizing the time spent with each shoe with new values.) The effect of changing the route of flow of materials or information through the system may be investigated by changing the order of translations.

The saturation point of the system or a component is defined as that state of the system in which an addition of work to the system causes no additional output from the system. The saturation point

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 92: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

82

of a component of the system can be found in two ways. We can vary the values of the scalars of the n-tuple for the component and thereby determine the saturation parameters under a fixed load.We can also vary the number of n-tuples for the interacting components and thereby determine the job load that will saturate the component under study.

The remainder of the chapter will exemplify these points by discussing a digital simulation of the Clinical Chemistry Laboratory of the Yale New Haven hospital.

IV. 2 Model for a Clinical Laboratorya. Isolation of Laboratory functions

The main function of the clinical laboratory is to process biological specimens in order to extract medical information from them.

As with many complex systems the clinical chemistry laboratory is composed of two interrelated systems, a materials handling system and an information system. The information system may be subdivided into three information systems. An overall view of the four systems and their interrelationship is shown in Figure IV-3.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 93: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

83

reagents, waste energy, samples wastematerials handling

system data

system -jcontrolmedicalinformatio:

management system

Figure IV-3 Underlying systems of clinical chemistry laboratory

The first system,t’he materials handling system is concerned with the physical

handling and processing of these specimens. This system handles inputs of specimens, chemical reagents, and energy. Its outputs are data and waste. The procedures that are followed in the laboratory comprise the second system, the control information system. The third system, called the management information system, is concerned with items such as personnel utilization and evaluation of changes in personnel, equipment, or procedures. The fourth system, called the medical information system, has as inputs data from the control management information systems. Its outputs are the compiled ward reports.

The model has enabled us to isolate and analyze many of the laboratory procedures and components. Thus the response to variations in the scalars of the model reflect the response of the system to

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 94: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

84

variations of characteristics.

For the remainder of this chapter we will consider only the materials handling system. The principal measures of system performance will be process time of biological samples, equipment utilization, job queues, response time to an emergency request.

b . Parameters of the ModelSome of the principal system parameters that were modeled by

scalars are listed below:

A. Equipment parameters1. time to process an element2. capacity to hold unprocessed elements.3. number of elements which may be processed simultaneously

B. Software parameters1. priorities2. dynamic allocation of priorities. (The parameters

for dynamic allocation of priorities enable us to study the effect of different scheduling policies.)

3. modes of operation, i.e., "time slicing" and "demend operation." In time slicing mode each procedure (program) returns control to an executive system after a fixed amount of time. In demand operation mode control is returned to the executive program after each interrupt regardless of which program was being executed. These procedures control the printing

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 95: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

85

ward reports, patient reports, collecting data in real time, etc. (The effects on system performance in response to each of the modes was markedly different.)

C. Environment characteristics1. number of technicions2. number of centrifuges3. number of stations

D. Computer parameters1. speed of computation

*

2. the speed of various input out devices3. storage size

c. Simulation OutputThe modeler usually wants to know the response of his model

to changes in the values of the parameters of his model. A straightforward way to provide this information is to print the status of the model at periodic intervals of time, i.e., by printing the values of pertinent scalars associated with each n-tuple. The table of Figure IV.4 below gives a portion of the output describing the state of the model of a clinical laboratory. This output is not in the best format but it does demonstrate how the viewpoint of systems presented earlier may be used to give meaningful output from a model. The sets of n-tuples presented in the table represent queues, storages, facilities, and controlling elements. The

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 96: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

8 5 V . ■s&~ -

iT= _ — I— c

<CsT

-C C•

"C*• • « •c < c C N n . • c: o c* c o c c- c o c r*«. rs. > »

< C - • • • • • • CO * t~r> «— .—T: < - y"2 l *— vT {<* r r * c c . • • > ___ fS.X *r. c o u ' < r < r . c < c \ .> X • ^-4 l? \ LT CL c r , -

*— " »—

* -•c:*o * .

2 2

r- c*- u_ C * o r i C cr x Oi—' **■*. •”**e»

^ c c ^ • o o c— orCT CV or <r

cr

O c c cr- c c<■ on s*-fT, r“; <\

.o r ir* fv. o .*r- c c c* - x i t . < rOl — O'-'X £>*»s. H-

or rv. cv o ^ r~-lu C cr c* — —— —=£-

•X 2T O e LT. s£ CC C cr.o <7 tr- o o CP <• r - C rr» • c<r a: • • • • • • • • • • VJ t—i IT *C“ fC <TCl j— r<". frs iT. r\! CC CO cc C- V— o «r» P -Hi <r o o '-T' cr c> rc c rs. v. fs» ’JT

7*’ X • • • • • •

OC r*. ir. IT. fT.X* i r <■ O rr. r - N-

c v ; *—• w*C£T

c: XX 3

X c" ortu X*r . —.*1 Cr.

LU cr c : oc- fN' r - fs» e — >—c y— o c* CL-<r • • • • • : “~(V" L*. • N c11' X c>< C-

•w*

> — •

c ^ m \* r , x

L V? ^ C C: >— C <r *c*<T • • •X 1_ <N < \. IT.X X> r :r <r C"

• o

r ^ ^ c r c %r' fr^ j— — <\: rvj p*- r -

—■ *uX J—

Xe vT <-t- c kt > Cv. C \ - f r r r» '

C LT'. C U“ t r X c _ ^ _< f . <r O c c »r r*X N •— >T r»*. \r- c c \ cv fN.*X • • • • ' • • • • • •> a *

n u . rv. r c c* > e . *— f \ r r <• ' cci— uti. ct. cv O U'< cc

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

•XV

.4Figure -iV-r!r

Simulation

Output

Page 97: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

pertinent scalars associated with each queue n-tuple are maximumcontentents, total entries, etc. The name of the laboratory componentsthat correspond to these n-tuples may be found by using the first partof Appendix D (e.g., QUEUE Number 2 corresponds to the line ofwhole blood biological samples at the punch bench). A modeler mayuse the characteristics of a queue to determine if a queue is progressivelybuilding up and thereby become saturated.

IV.3 Digital Simulation of LaboratoryWe now outline the steps 1, 2, and 3 in section IV.l.d for an

example simulation. Steps 4, 5, and 6 will be given in section IV.4.

1. Choice of important elements and characteristics in object system

fThe choice of important elements and characteristics in the object system may be very difficult. The level of detail, the elements, the characteristics chosen is dependent of the questions to be investigated when using the model. With respect to the laboratory we wished to answer questions which dictated a very detailed simulation (e.g., the effect of various parameters of the components of the system, the orgainzation of the laboratory, saturation of components.

We wish to choose a set of n-tuples to characterize the chemistry laboratory and group the n-tuples into subsets, where the elements in a subset have the same number of scalars. Each subset will generally represent one type of element. The most obvious sets of elements in the laboratory are technologists, biological samples, and equipment. Other sets of elements include queues and storages.

The subset of the n-tuples representing biological specimens will* be represented by a set of k-tuples x^>x2 »• • • »xjc> f°r some number k. Each scalar characterizes a particular sample and takes on values from a finite, discrete domain. The first scalar has a binary domain with value 1 if a urea test was requested and a

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 98: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

I8 7

pertinate scalars associated with each queue n-tuple are maximum contentents, total entries, etc. The name of the laboratory components that correspond to these n-tuples may be found by using the first part of Appendix d •(e.g., QUEUE Number 2 corresponds to the line of whole blood biological samples at the punch bench).A modeler may use the characteristics of a queue to determine if a queue is progressively building up and thereby become saturated.

IV.3 Digital Simulation of LaboratoryWe now outline the steps 1, 2, and 3 in section IV.l.d for an

example simulation. Steps 4, 5, and 6 will be given in section IV.4

1. Choice of important elements and characteristics in object system

We wish to choose a set of n-tuples to characterize the chemistry laboratory and group the n-tuples into subsets, where the elements in a subset have the same number of scalars. Each subset will generally represent one type of element. The most obvious sets of elements in the laboratory are technologists, biological samples, and equipment. Other sets of elements include queues and storages.

The subset of the n-tuples representing biological specimens will be represented by a set of k-tuples x ,x2 ,... ,xk> for some number k. Each scalar characterizes a particular sample.and takes on values from a finite, discrete domain. The first scalar has a binary domain with value 1 if a urea test was requested and a

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 99: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

[88.

value 0 if it was not, and so forth for the remaining laboratory tests. The nineteenth scalar denotes the time of entry of the sample into the system, and its domain nay be chosen as the index of one of the .1 minute intervals between 8:00 a.m. to 5:00 p.m.Similarly other scalars of this subset of n-tuples are used to model other sample characteristics.

Some scalars have fixed values while others have values thatchange with respect to time or some other parameter of the system.For example, the number of samples that a technician has yet to

<process vati’es with time. In the model of the clinical laboratory,

athe assignment of a value to^scalar that varies with time or some other parameter is implemented with the use of the VARIABLE feature or FUNCTIONS feature (See Appendix D'.). For example, it was observed that the technician operating the cloride machine took an increasing length of time to place a sample in the machine as the day went on. This time may be approximated

.2

time to place sample in machine

^ time of day8 a.m 1 p.m. 5 p.m.

by the function shown above. This was implemented in the model (see FUNCTION number 71, Appendix D). It is interesting to note that when

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 100: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

89

we wished to investigate the effect of replacing this technician with a machine the only characteristic that had to be changed was the time to place a sample in a machine. This was accomplished by simply replacing the FUNCTION definition card with another one characterizing time for a machine sample in the machine.

2. Definition of translations:The set of translations are chosen to simulate the operations

of the object system, in this case the laboratory. One such operationis the change of a sample's priority. In the corresponding translation,*T[i,j,k,S], i would denote the subset of n-tuples representing biological samples, j would denote the particular n-tuple, and k would denote the scalar characterizing priority. The substitution rule would be: "replace the value of scalar k with the valuex" where the value of x is assumed to be known.

An operation that corresponds to many translations is the recording of arrival times of biological specimens. For one translation we let i and j denote the n-tuple characterizing the processing technician and k denote the scalar characterizing his state (busy or not busy). The substitution rule would be as follows: If thescalar designated by k is in the "busy" state, then this translation cannot be performed; if the scalar is in the "not busy" state, then the value of the scalar is given a new value to denote a busy state, and other translations on the same n-tuple for the technician are performed. Thus the values of the scalars characterizing utilization and other statistics are updated. The recording of arrival times must

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 101: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

also have a corresponding translation that updates the n-tuple characterizing the biological specimen waiting to be time punched.

3. Recognition of elements that control timing:As stated previously, it is important to recognize the elements

that control the timing of operations in the object system.Correspondingly, the n-tuples representing these controlling elementsshould control the timing of translations in the set S • Themmajor controlling elements in the materials handling information system of the clinical laboratory are the biological specimens.If no samples arrive then no operations occur, except perhaps the technician's lunch or coffee breaks. If the sample is sent as an emergency it is handled accordingly.

The overall timing and flow of the materials handling is shown in Figure IV-5. Using the concept that certain elements control the timing, the laboratory may be viewed as a permanent structure through which biological samples flow. The samples arrive (point 1 in Figure IV-5) and are time stamped by a technician. Depending on the test requested, the samples go either to the technicians processing whole blood (point 2) or to the centrifuging area (point 3).At these points the samples are processed by personnel and equipment, and then continue on to a specific test area (points 6 through 12).

The n-tuples representing the biological samples must cause translations that change the values of their scalars characterizing their position in the system.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 102: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

16 20

BicorbUrea N o S K Chloride UrlcAcid Prote in

■ S p ec im en s Arrive

Whole B lood C e n tr i fu g e

T im e S ta m p

D a t a

P r o c e s s i n g

S y s t e m

Figure IV- '5 Overall view of the clinical chemistry laboratorv (for handling blood samples).

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 103: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

92

IV.4 ImplementationThe implementation of the simulation comprises steps 4, 5, and

6 of section IV.l.d. In the discussion so far, simulation has been described independently of any computer or computer language. To implement the simulation on a digital computer computer languages such as ALGOL, MAD, or FORTRAN could be used. However, a great programming effort would be necessary to implement the set of n- tuples, translation routines, and timing routines. Since a simulation language has many of these routines incorporated in the language, using one of these languages is usually easier. The reason for using a simulation language rather than any other computer language* is that many of the routines which implement the set of n-tuples, translations, and timing are written in various degrees of completeness depending on the language. For example, GPSS has entities that may readily be used to represent n-tuples.

A detailed model of the Clinical Chemistry Laboratory of the Yale-New Haven Hospital has been constructed using a modified* version of the computer simulation language GPSS III [9, 10, 71],Parts of the laboratory were also simulated in another simulation language SIMSCRIPT [72]. The entire model is presented in Appendix D.

a. Implementing n-tuplesIf FORTRAN or MAD is used, the n-tuples may be defined by a

* Modifications included the adaptation of GPSS to run on an IBM DCS 7094-7040 system [73], the adaptation of GPSS to handle a program as large as the model for the laboratory, and the addition of instructions to facilitate handling of sets.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 104: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

93

DIMENSION statement. A(l) ,A(2),...,A(20) would correspond to an n-tuple a^,a2 ,..,a2 Q and A(L) would refer to the scalar a^. If a simulation language is used it is not always the task of the modeler to define the set of n-tuples that correspond to S^. The language GPSS has predefined entities that may be used as n-tuples representing elements of an object system.

b. Implementing TranslationsIf FORTRAN, MAD, or SIMSCRIPT is used to implement the

translations, T[i,j,k,S], subroutines would have to be written that would operate on all scalars of the n-tuples i,j. The substitution rule would define the algorithm to be used by the subroutine. A modeler using SIMSCRIPT follows a similar procedure for most translations.

The simulation language, GPSS, provides several of the routines necessary to implement translations. The statement "SEIZE m" is used to specify operations on the subset of n-tuples for technicians m is the index in the set of the n-tuple for a particular technician. The execution of this instruction corresponds to many translations,T[i,j,k,S].

Part of the substitution rule for one of the translationscorresponding to "SEIZE m" is: If the state of the scalar x,kof C^m is "not busy" change it to a busy state.

The substitution rules for the remaining major translations

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 105: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

94

associated with this instruction state the manner in which values of scalars characterizing the utilization and other statistics of the technologist change.

The translations that correspond to the flow of elements operate on the scalars that characterize the location of the elements. The resulting location is the object system may depend on many other scalars.

For example, a sample for which an electrolyte test has been requested goes to one of the spinners in the system. In the Translation T[i,j,k,S] for this i denotes the subset of n-tuples representing samples, j denotes the sample involved, and k denotes the scalar characterizing the location of a smaple in the system.The substitution rule if "if an electrolyte test is requested (i.e.,if the binary-valued specifying whether or not an electrolyte test isrequested has a value of 1) change scalar to some value correspondingto location of spinner 1. If not change x^ to some value correspondingto location of spinner 2." GPSS has a routine to implement thistranslation. The routine is called by the instruction "TEST E P3, KO,SPINI"which is read, "test if s c a l a r 3 of the n-tuple for this instructionis equal to a constant number 0; if not go to SPINI, otherwise,execute next instruction." ScalartM of a sample will have beenequal to 1 if an electrolyte test is requested and equal to 0otherwise.

c. Implementing Timing Routines. If a modeler uses FORTRAN or MAD he must write all timing

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 106: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

95

routines himself. If, however, he uses a simulation language he may not have to write all the timing routines. SIMSCRIPT has an "EVENTS" routine that implements the timing of translations.GPSS has an "overall GPSS scan" routine that implements the timing of translations.

A summary of the algorithm that GPSS uses to control the timing of translations is as follows: Two chains are established in the memory of the computer, a current events chain and a future events chain. The members of these chains are the n-tuples that correspond to the elements that control the timing and flow of the object system. In the GPSS model of the clinical laboratory the majority of the members of these chains correspond to the biological samples. The members on the current events chain are arranged in descending priority classes and, in the case of equal priorities, in the order in which they were linked to this chain. Starting at the highest priority class, the overall GPSS scan moves (translates the scalars characterizing the location of elements in the system) the members of the current events chain through the model (causes the execution of translations) until they are delayed or limited to the future events chain. The simulation clock is then updated to the value at which the first element on the future events chain is due to leave that chain. This element is then linked to the current events chain. The scan again translates the n-tuples on the current events chain as far as they will go. This process is repeated until the simulation is terminated.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 107: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

IV.5. Other Examplesa. Example of Different Controlling Elements

In many complex systems the timing of all operations is not necessarily contro-lled by the same element or the same type of element. It is important in the simultation of these systems to recognize all controlling elements. As was previously stated, there are operations in the laboratory which would take place even if no samples arrive, such as lunch and coffee breaks. Therefore, samples do not directly control these operations. In the clinical laboratory, the lunch break does not occur at exactly twelve o'clock but rather some time after twelve o'clock. The factors that govern the time of the lunch break are the urgency of work waiting to be processed by the technologist, or the partial processing of a task that the technologist does not wish to interrupt for lunch.

In the translation T[i,j,k,S] that corresponds to the operationof a lunch break i denotes the subset representing technicians, j denotes

/

the n-tuple the particular technician involved, and k denotes the scalar characterizing the state "out to lunch - not out to lunch".The substitution rule is simple "change the value of scalar x^ to the value denoting "not out to lunch".

The problem is of how to control the timing of this translation.The samples do not directly determine the time of the lunch break nor does the technologist. Even if no samples were in the laboratory the lunch break would still occur. To postulate that it is thehunger of the technologists that control the timing of the lunch break, receives the reply that many technologists are hungry as soon

with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 108: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

97

as they arrive at the laboratory. 'What then controls the timing? A signal from the control information system. This signal is generated at twelve o ’clock, and has a designated priority. When nothing else of higher priority is left to be processed and the technician is not engaged in a tesk, the signal causes the lunch break.

,The lunch break for our hungry technician may be simulated in GPSS by the statements below. The control system’s signal can be thought of as flowing through these statements. Each statement calls a routine that is an implementation of the translations associated with the operation of a lunch break.

Instruction Arguments Comments

668 GENERATE 0,0,7200,1,6 Create an n-tuple that correspondsto a signal with priority 6generated at 12 noon.

669 SEIZE 1 When nothing of higher priority has seized technologist •±£1,translate the scalar characterizing the state of technician-^-1 toa "busy state.

700 ADVANCE 300 Advance after time for lunch.300 units of time.

701 RELEASE 1 Hunger satisfied, let technologistreturn to system.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 109: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

98

The timing of translations is controlled by the algorithm previously mentioned in Section IV.4.a. Applying this algorithm the following will result. Statement 668 causes the n-tuple repre­senting the signal for a lunch break to be linked to the future events chain, and at simulation time 7200 the n-tuple is linked to the current events chain. The scalar characterizing the n- tuple’s position on the current events chain will indicate a priority class 6 on that chain (the highest priority of the system is 7--few n-tuples have a higher priority than the n-tuple representing the controlling element of lunch).

When the simulation clock is updated to 7200, the overall scan will, starting at the highest priority class, give the value of i and j in T[i,j,k,S] (the n-tuple on the current events chain with highest priority) to the statement 689 SEIZE 1. The routine SEIZE 1 implements many translations, as has been discussed (Section IV.ll,b). The result of the execution of this statement corresponds to the setting of the scalar x, for the technician to a ’’busy" state. If this scalar already has a value corresponding to "busy" processing of this n-tuple is stopped. Otherwise the GPSS scan will then give the value of i and j of the n-tuple characterizing the signal to the next statement ADVANCE 300. Execution of this routine links the n-tuple for the signal to the future events chain to be removed after 300 units of simulation time. After 300 units of simulation time the GE3S scan links the n-tuple characterizing the signal back to the current events chain. Instruction ’’RELEASE 1"

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 110: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

99

is then executed resulting in setting the scalar x to the value denoting "not busy".

b. Aspect of SystensNot Directly Expressible in GPSSAs is the limitation with any simulation language, some important

aspects of a system are not directly expressible in the language. The class of operations for manipulating sets is not expressible using GPSS. Among these are operations that manipulate collections of elements (sets, queues, storages, files).

For example, consider a tray brought to a work bench after the samples have been centrifuged. The corresponding translations required are to operate on all n-tuples that are members of the n-tuple representing the collection of samples. The timing of this operation is caused by the number of samples themselves.If the tray is full or if there are no more samples left to process the samples go to the bench.

In- GPSS there is no direct way of implementing the translationsand timing associated with this operation. The following instructions were used to effect this operation:

324325

GPSS InstructionLabel Instruction ArgumentsSEIZE 3GATE SF 3,NOTEFL

326 ADVANCE 10

Corresponding operation in object system____________Comments_____________Seize technician who centrifuges Is tray-^3 full? If not go to NOTFL.If tray is full, bring to bench (this operation takes 10 units ofs i m u l a t i o n

Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.

Page 111: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

327 UNLINK 4,BENCH+1,ALL Cause all samples on chain 4to go to bench.

329 BENCH RELEASE 3 Samples now at bench, releasetechnician who centrifuges.

357 NOFUL TEST NE V5,K0BENCH-1 Are there any moresamples in system? If notgo to BENCH-1.

358 RELEASE 3 If there are more samplesin system release technicianwho centrifuges.

358 LINK 4,FIFO Link to chain -rr 4 and wait.

The instruction in GPSS to test whether a tray (i.e., a GPSS) is full is written "GATE SF 3,N0TFUL." This instruction isread "If gate storage j=-3 is not full, go to NOTFL; otherwiseexecute the next instruction."

The instruction "UNLINK 4,BENCH,ALL" causes all the members ofchain =»~4 to have the scalars signifying their location changed tothe value corresponding to the location BENCH.

The instruction "LINK 4,FIFO" causes the n-tuple executing thisinstruction to be linked to chain -f:4 in the order of first in-first out bases.

V5 in the statements above is set equal to the number of n-tuplescorresponding to samples that have not caused the execution of the

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 112: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

1 0 1

routine above but are still in the model.

IV.6 Validity of a Simulation ModelWhen constructing a model the question of the validity of the

model must be dealt with. Can the modeler be absolutely certain that results derived from his model are applicable to the object system?

There is no known method of proving the validity of a model in general. However, two factors ought to be considered. First, the link between the object system and the abstractions may be weak because of exclusion in the abstractions of important elements or characteristics that influence the behavior of the object system. Failure to define all translations or define the controlling elements and timing may introduce errors associated with this link. Second, all n-tuples, scalars, and translations of the set Sq may not be represented among the set S . This difference will introduce otherSIerrors.

The fact that the validity of a model cannot be shown in general does not mean that confidence cannot be placed in a particular model.To give confidence to the validity of a model comparisons between the operation of the object system and the model under known conditions may be made. An example of a set of comparisons to give confidence in the model of the laboratory is shown in Table IV.1. A more complete set is given in Appendix C. The comparisons matched the performance

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 113: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

3?

s*

a

$

55

ste?I

%

of the laboratory for a particular day with the performance of the model for that same day. ^ record was kept of the arrival time and tests requested of samples entering the laboratory that day. Every half-hour a set of statistics of the actual laboratory was obtained.The numbers in the left column correspond to the points in Figure IV-4. indicating the approximate place in the system that these statistics were taken. Above each column the time at which the statistic was observed is given.

The model was given the same inputs as were recorded for a day in the object system. At every half-hour of simulation time the current status of the model was printed. These statistics were compared with statistics taken of the actual laboratory at corresponding times.The simulation results are listed under the actual laboratory observations in Table IV-1.

For example, the number of samples logged by the electrolyte spinner at 10:30 a.m. was 55 in the actual laboratory and 56 in the model.

The excellent correlation between object system data and model data gave confidence in the model.

IV.7 Information SystemA typical clinical laboratory, with a given set of facilities,

invariably reaches a state beyond which the laboratory becomes incapable of servicing • its demands or becomes incapable of supplying the quality of work it is doing. New instruments, automation of instruments, reorganization of the laboratory, automatic data handling equipment, are all possible methods of improving the laboratory. However, incompatabilities and inconsistencies with the idea of maintaining testing standards arise. The simulation model was used to test each of these possible methods of improvement. We will only discuss in this work the practicability

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 114: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

Com parison of actual labora to ry events and t im es of occurence with those simulated

a. m . _________________ p. m.TIM^(hours)*8" 8 . 5 9 9. 5 10 10. 5 11 11. 5 12 12. 5 1 1. 5 2 2.5 3 3. 5 4 4 .5 5

3 Number of sam ples a 0 22 4 i 53 65 97 124 129 134 13y 141 142 .144 152 157 164 166 166

given a c c ess io n

num ber by sp inners s 0 22 40 53 65 97 126 131 134 137 141 141 142 152 159 163 166 166

Number of sam ples 0 11 17 18 21 40 53 53 54 54 54 54 54 54 54 54 54 54 54

logged by nonelecto-

lyte spinner s 0 11 17 19 22 41 54 54 54 54 54 54 54 54 54 54 54 54 54

Number of sam ples 0 11 24 35 44 55 71 76 80 85 87 88 90 98 103 110 112 112

logged by e l e c t r o ­

lyte spinner s 0 11 23 34 43 56 72 77 80 83 87 87 88 98 105 109 112 112

Number of sam ples 0 4 29 43 52 65 85 106 117 117 121 121 132 144 155 165- 166 166

spun and put in

ready ra c k s 0 4 29 45 52 64 84 103 117 117 121 121 131 142 155 163 163 166

Page 115: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

CD

TABLE IV-1 continueda.m . p. m.

19

TIME (hours) *8 8 .5 9 9.5 10 10. 3 11 11.5 12 12.5 1 1.5 2 2 .5 3 3.5 4 4 .5 5

Number of samples a 0 0 0 4 8 15 20 25 34 40 45 52 60 65 73 77

read at bicarbonate

83 86

t68t 8 0 14 21 25 33 39 47 54 62 67 74 81 84 87

C=TCD

CD" O

—5oQ.C&o=5

♦Time (hours), topline, refers to the time the count of events was taken.

♦♦See Figure 1 for numbers in this column.

♦♦♦Items in this column are descriptions of the number e v e n ts ,

a refers to the number of events observed at the time noted*

8 refers to the number of events determined by simulation.

CDQ.

OC~oCD

COCOo'o

104

Page 116: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

of introducing data processing equipment into the laboratory. If the model were used to gain insight to only the introduction of data processing equipment the level of detail which we have simulated the laboratory would not be necessary (e.g, all the queues, equipment, technicians associated with a test bench could be replaced by a delay function by which the samples were detained). However, we wished to use the model to gain insight into other questions as well.

The equipment would be introduced into the medical information system. The present system is inadequate to meet future demands and automatic data processing seemed an idea worth investigating.

As can be seen from Figure IV-4, the output information (data) from all test areas goes into the medical information system. With the proposed data processing equipment the information will go to a digitizer via a multiplexing unit and then into a computer.

Functions of computer: Some of the functions of the computerare the following: To collect the information extracted from thesamples and standards; to calculate the results of tests by executing the appropriate program stored on a memory unit; to continusouly monitor all information received in order to detect when all tests on a particular sample have been processed; to compile and print patient and ward reports; to store results on any available storage. Provision must also be made to process a request for a partial report of a patient's tests before all tests of that patient are processed. The computer maly also be used to compute other information such as statistical analysis, or for executing research programs.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 117: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

IV.8 Simulation of Medical Information SystemTo simulate the medical information system the six steps,

1. definition of the set Sq , 2. definition of translations,3. timing, steps 4, 5, 6 implement steps 1, 2, 3, are employed.

The set of n-tuples corresponding to all the elements of the objects system (information handled,computer, peripheral equipment, queues) must be defined.

The translations corresponding to the operations of the object system (compiling results of tests, print ward and patient reports and all the operations of the computer) must be defined.

The n-tuples representing information of the biological samplesare the controlling elements.

The scalars of the n-tuple representing the information are given values to denote the origin of their test area, which sample the n-tuple represents, the number and kinds of other tests that were requested of the same sample, and other characteristics.

These n-tuples, translations, and timing are implemented on a digital computer in the same manner discussed for the materials handling system.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 118: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

107

In the clinical chemistry laboratory, the executive program must perform the following tasks: Control the flow of information in andout of the computer; govern the flow of programs from storage to compute results of test; allow for interruption of activities for emergencies; provide flexibility in the rescheduling of tasks; schedule printing of patient and ward reports.

The assignment of priorities to the tasks of the computer presents a critical problem. For example, if the computer is per­forming one task of priority 2, then any other task of a higher priority can interrupt the computer and be processed. If too low ' a priority is given to the task of compiling and printing emergency reports, then too much time might elapse between the request for the report and the printing of the report. If information is ready to enter the computer and low priority has been given to this transaction, then the information may be lost before the executive program allows the computer to accept it.

A digital simulation can be used to explore the assignment of effective priorities. This assignment was implemented into our model by assigning an appropriate value to the priority scalar of the n-tuples characterizing the information of the biological samples. The information n-tuple of the biological sample originates at a test bench which has just processed the biological sample. It is at this point in the model that a priority will be assigned to the information n-tuple. The information from different test benches were given different priorities. Other tasks of the computer such as a doctor's request for a partial patient report were Implemented into the model by generating a n-tuple corresponding to the doctor's request.

^ S l S e d w i T h perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 119: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

108

In the first set of assignments tried, the task of printing a patient report was given highest priority; thereby these results would be obtained immediately after compilation of all tests for that patient. This assignment was found unsatisfactory in that input results from individual test areas were being delayed too long before being accepted by the computer. The outcome was an overflow of the input buffer when other information from test areas was received. This loss of information is intolerable in a hospital.

Assignments that were marginal were found. That is, they would work for the present system but did not allow for an increase of work. These were found by noting the frequency with which the simulated computer was preempted.

After exploring other assignments, the following assignment proved to be satisfactory and allowed for future increase of the laboratory's work load. Highest priority was given to information in the input buffer whenever more information was ready to enter the buffer.Descending priorities were then assigned to the following: A requestfor a partial patient report, computation of results of a test, compiling and printing of patient reports, and storage of these results on any available storage, accepting data from the buffer of the multiplex unit, compiling and printing ward reports.

The tasks of billing and other low priority work were not considered in the model. However, satisfactory times of day for scheduling these tasks were found using the model. Low utilization times may be seen from Figure IV-6;these are opportune times for scheduling other work. Figureiy-7 shows computer utilization for each hour versus time of day as given by the simulation.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 120: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

109

6 0 r

50-

}! 40-2O< 30-_ji-= >2 0 -

IO

8 9 IO II 12 I 2 3 4AM TIME OF DAY . PM

Figure IV-6 Utilization of computer time versus time of day

/ ■ i

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 121: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

110

Note further the u til iz a tio n never goes above 50 per cent. This

demonstrates the system's a b ili ty to handle an expansion of the lab­

oratory 's work load i f a su itab le executive system is used, even

though the computer simulated is considered to be a small computer.

Summary.0^ Us£mufa8Ton^mo^e^6A as given insight into the answers

to the problems of introducing data processing equipment into the

laboratory. I t has uncovered problems th a t were not o rig inally

thought of. I t has shown that a small computer (IBM 1130) with one

disk f i le and a Dymec data-logger are adequate. I t has shown the

requirements of the executive program for the laboratory.

The model has shown that the "time slic in g mode" mentioned e a r lie r

resulted in the shortest external queues of tasks to be performed by

the computer. Thus technician waiting time, for the computer, was

brought to essen tia lly zero. The model showed that the average per

hour u til iz a tio n of the computer could be made less than f i f ty percent,

thereby giving us fu rther confidence in making the decision of using

"time slic ing mode" for th is mode does use more computer time to

maintain in ternal queues of task request or data.

In the fu tu re , the simulation model w ill be used further to study

the efficacy of modifications to the- laboratory .

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 122: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

I l l

C H A P T E R V

CONCLUSIONS AND PROPOSALS FOR

CONTINUED RESEARCH

V. 1 R esults

This d isserta tion has been concerned with the application of the

procedure depicted in F igu re 1-1 (page 8) to the digital sim ulation of

complex system s such as a hospital, bank, or factory .

C hapters II and III w ere concerned with a m ajor problem associated

with the syntax of the com puter languages used in this procedure, and

m ore generally with the syntax of any com puter language. As evidenced

by the works cited in C hapter II there has not been availably p rio r to

this w riting,a specification that has been used to ch a rac te rize com pletely

the syntax of com puter languages. This investigation has applied known

methods of recu rsiv e definition to the development of a complete

syntactical specification of com puter languages.

The specification m ay be used by a p rogram m er to check the

syntactical validity of a s trin g . The specification is m ore com pact,

concise, and accurate than a manual.

The specification m ay be used to define a ll acceptable strings of a

proposed com piler. Hence, decisions affecting m em bership in the c lass

r 1 , MCecJ ‘ot legal program s a re not/m ade during the construction of the com pilers.

In this m anner the specification may a s s is t the com piler w rite r .

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 123: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

A com piler m ay be viewed as having two phases, a syntax phase and

a transla tion phase. The syntax phase is concerned with recognizing

the well form ed strings of its source language. The specification may be

used in the construction of com pilers whose syntax phase is independent

of the source language being transla ted . That is , severa l source

languages may be used with the same com piler.

A specification of the syntax of a lim ited portion of FORTRAN

has been presented. The re s tr ic tio n that a ll statem ent labels in the

same program m ust be different and the re s tr ic tio n that a ll reference

labels m ust correspond to statem ent labels has been defined using this

specification.

A complete syntactical specification of a com puter sim ulation

language, GPSS III, has been presented in Chapter III and Appendix A.

No other complete or accu ra te charac te riza tio n of any form ex ists for

the syntax of GPSS III. The syntax of GPSS is ex trem ely complex as is

exhibited by the length of the m anuals:[ 9 ] is 245 pages and [ 103 is

103 pages.

It was n ecessa ry to construct many experim ental program s because

many constructions of GPSS were in co rrec tly or am biguously stated in

the m anuals. The m ajor re su lts of these experim ents was that the syntax

is in general le ss re s tric tiv e than is sta ted in the m anuals. Statem ent

labels, reference labe ls , argum ents, and column form at were found to

have m ore flexibility in th e ir form . A GPSS program m er might be

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 124: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

su rp rised to learzi that the statem ent

A$. )/B TEST E $A$. )/B ,$A $. )/B+ 1, P I

is a legal statem ent.

It has not been made c lear in the m anuals for a ll statem ents which

argum ents in these statem ents m ust not be void and which may e ither

be void or not void. Each argum ent was experim entally tested to

determ ine if it may be void. Exam ples of such statem ents have been

given in Appendix B.

In a few instances it was found that the m anuals were not re s tric tiv e

enough. Some statem ents (such a s , "blank cards o r any ch arac te r in

column one a re perm issib le *' and"an ORIGINATE block is perm issib le)

made in the m anuals a re not tru e , and program s containing the sta ted

constructions w ill be re jected .

All in co rrec t o r ambiguously sta ted constructions have been correctly-

defined by the specification of GPSS III presented in this d isse rta tio n .

Some of the re su lts of these experim ents have been discussed in

Section III. 12 through III. 14 and Appendix B. In Appendix B experim ental

verification and exam ples of some of these constructions a re a lso given.

In Appendix D m ore conventional syntactical form s of GPSS III a re

presented.

In Chapter IV a way of viewing complex system s has been presented .

This viewpoint is composed of a set of fundam entals which a re basic to

complex system s and m ay be used to facilita te the understanding or

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 125: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

sim ulation of these system s. These fundam entals form the abstrac tion

depicted in F igure 1-1.

Techniques have been presented in Chapter IV which may be used

to im plem ent th is se t of fundamentals on a digital com puter.*

These fundam entals and techniques a re not dependent on a specific

com puter language, or system , and so do not suffer the lim itations

discussed in Section I. 5 associa ted with such a dependence. Since these

fundamentals and techniques a re general, a m odeler using them need

not confront a com pletely new problem with each system sim ulated;

hence, a saving of m an hours can be rea lized .

A non-triv ial, re a l and im portant example of the use of digital

sim ulation has been presented in Appendix C. R esults of a digital

sim ulation of the C linical C hem istry L aboratory of Yale-New Haven

Hospital have been d iscussed , and the method used to obtain these re su lts

has been discussed . Insight into the many problem s of introducing data

processing equipment into the laborato ry has been obtained from the

model.

A complete well documented model of the C lin ical C hem istry

Laboratory of the Yale-New Haven Hospital has been presented in

Appendix D. The m odel may be used to study fu rth er sim ulation technique:

or to understand the operation and procedures of the laboratory, o r as an

example of form s of the syntax of GPSS m ore conventional than thes*e

exam ples given in Appendix B.

A bibliography has been presented which is a survey of the salien t

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 126: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

115

existing works which a re re la ted to th is d isse rta tio n . The bibliography

may be used independently of the text x>i th is d isserta tion . With each

re la ted group of re fe ren ces a b rief note has been added stating the

principal re su lt of those works and th e ir re la tionsh ip to the work done

in this d issertation .

V. 2 P roposals for Continued R esearch

T here a re sev era l a re a s of the work presented in this d isse rta tion

which may be extended for fu rther re se a rc h . These a reas will be lis ted

as separate proposals.

a . A fru itfu l investigation would be the development of a "syntax

d irected recognizer. " That is , a program that would accept any canonic

system of a language and then proceed to recognize strings of that

language. Im plicit in th is development is the construction of a se t of

general decom position ru le s . These ru les and the canonic system of a

language would govern the procedure fo r decomposing strings of that

language into th e ir basic components.

b. A connection should be estab lished between canonic system s

and the work of Chomsky. This connection would be a valuable one

because Chom sky's w ork, autom ata theory , and linguistics have a ll

been linked by recen t w orks [41 -61]. This connection would make

many of the.theorems a sso c ia ted with the linking of C hom sky's work,

autom ata theory, and lingu istics applicable to canonic system s. And

since canonic system s a re the only known specifications that have been

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 127: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

used to charac terize com pletely existing com puter languages, this

connection would make some highly theore tica l w ork applicable to

p rac tical com puter languages.

One approach to establishing this connection would be finding the

place of canonic system s in Chom sky's h ierarchy of languages. One

theorem that should"be proven is "A canonic system using predicates of

degree n corresponds to a Turing machine, " w here n is some num ber.

c. Canonic system s as presented in Chapter III a re ambiguous.

That is , there may be severa l ways of generating the same string using

a canonic system . A fruitful study would be to make canonic system s

unambiguous. An approach to m aking canonic system s unambiguous

may be the addition of a set of pre-cedent ru les to canonic system s a s was

done by W irth and W eber [643 to th e ir specification.

d. Since a canonic system com pletely ch a rac te rize s the syntax of

a com puter language it is hoped that canonic system s of computer

languages m ay be used to gain some insight into the stru c tu re of com puter

languages.

e. Using the fundamentals and techniques of sim ulation d iscussed

in Chapter IV a savings in the num ber of man hours n ecessa ry for the

construction of a model may be obtained. A fu rth e r savings would be

obtained if re su lts of the m odel would be put in a m ore suitable form .

A fruitful study would be an investigation of the feasib ility of visual

displays o r graphical output to give a c lo se r in te rac tio n with the m odeler

and the m odel.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 128: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

£. The type of system that th is d isse rta tio n has been concerned with

was a complex system , such a s a hospital, bank, o r facto ry . The view­

point presented in Chapter IV fac ilita tes the understanding and sim ulation

of such system s. A fru itfu l study would be to apply th is viewpoint to

other types of system s such as system s described by d ifferen tial

equations.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 129: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

118

APPENDIX A

ALPHABETIC LISTING OF THE

SYNTACTICAL SPECIFICATION OF

GPSS III

In this appendix is p resen ted the complete syntactical definition of

GPSS III. The canons or ru le s a re listed alphabetically with resp ec t to

the name of the strings they define. F o r m otivation and in te rp re ta tion

of the specification consult Chapter III.

$3

alpha num eric any length card program

arg num or re f label

arg sna c r re f label

arg sna* sna or nonrelative ref label

x le t te r ; y d ig it; z alpha num eric z y t zx alpha num eric a#b program ; s spaces or void as#b any length card

program

n num ber; a plain re f label base b; c ind irect re f label

base d f n a rg num or re f label, a ; a a rg num or

re f label b; c a rg num or r e f label d

a stand num a ttr ib sna ; x re f labei^base y j- a a rg sna or

re f label A; x a rg sna or re f label a

x stand num a ttr ib sna* sn a ; a ,b , c le t te r ; d, e , i , gt h re f

label sym f x a rg sna* sna p r nonrelative re f

label a; abcde a rg sna* sna o r nonrelative re f label

abcde; $adefgh a rg sna* sna o r nonrelative re f

label adefgh; W$adefgh a rg sna* sna or nonrelative

re f label adefgh; N$adefgh a rg sna* sna o r nonrelative

re f label adefgh

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 130: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

r 119

a rg sna* sna o r re f label

a rg void num or ref label

a rg void sna or ref label

arg void sna* sna or re f label

a stand num a ttr ib sna* sn a ; b re f label base c J- a a rg

sna* sna or re f label a ; b a rg sna* sna or re f label c

a a rg num or re f label b j- a a rg void num or re f label b;

A a rg void num or re f label a

a a rg sna or re f label b J- a a rg void sna or re f label b;

A a rg void sna or re f label A - -

a a rg ana* sna o r re f label b [■ a a rg void sna.* sna or

re f label b; Aarg void sna* sna or re f label A

a rg void , num a a rg void num or re f label b [• , a a rg void , num or or ref label

re f label b ; Aa r g void , num or re f label a

a rg void , sna* x a rg void sna* sna or re f label y }• ,x a rg void , sna*sna or re f label “

sna o r re f label y; Aa rg void , sna* sna or ra f

label a

a l a 2> • • m a oQ sym or space; b card s {• a. ba t a j . . .cards

commentprogram

digit

eighteen sym or spaces

cards

a#b program ; s spaces; f string |- asf#b, a#*f#b, *f#b

com m ent program

f 0*1*2*3*4*5*61 7*8*9 digit

a l t a 2«a 3<* * * *a 18 gy™ ? r - 3-Pg h a l a 2a 3* * * a 18 gjgktecn

sym or spaces

eighty column a fnc data card with re f labels b; as eighty sym or spaces; fnc data card withref labels s spaces or void; c eighty colum n fnc data card with

re f labels d j- as% eighty colum n fnc data card with

re f labels b, ; cas% eighty colum n fnc data card with.

re f label# dk»

R ep rod uced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 131: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

I

field with num abc five sym or spaces; b num ber; a f c spaces or

void }• lab e l field with num ber b

five sym or spaces

fnc card with re f label

function codes

fnc data card with re f labels

fnc data field sna or re f label

a^ b c^ d^ e sym or space j- abcde five sym or spaces

a. field with num b; c function code; d a rg sna or re f

label e |- a FUNCTION3c, d# fnc card with re f label e

n num ber J- Cnt Dn, Ln, En, Mn function codes

a fnc data field sna or re f label b; c fnc data field sna

or re f lab e l; d; e fnc data field sna or re f label f;

g fnc data field sna or re f label h; i fnc data card

with re f labels j j- acdg fnc data card with ref

labels b, d4 f* h, ; iac fnc data card with re f labels jb, d,

f ir s t p rem ises a t c spaces void; s stand num a ttr ib

sna; -------

a.bc six sym or spaces; b fnc label f- abc fnc data field sna

or re f label b

a s c six sym or spaces j. a sc fnc data field sna

or re f label

ae .fc six sym or sp aces; e ,f num ber void (- a e .fc fnc data field sna

or re f label

fnc def with ref label

end p rem ises

a fnc card with re f labels b; c eighty column data cards

with re f labels d j- A fnc def with re f labels a ; ac fnc

def with re f labels b, d,

R eproduced with perm ission o f the copyright ow ner. Further reproduction prohibited without perm ission.

Page 132: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

1 2 1

£nc label

gate mnemonic

gate mnemonic field

ibsys tape a rg

identify card program

indirect re f label base

label

labels among stm labels

label symbol

x label; a t v{c le t te r ; sym or space o r void

[• x abc def fnc label

1- M<NM<U<NU<I<NI<SF<SNF<SE<SNE<LR<LS gate

mnemonic

abc six sym or spaces; b gate m nem onic; a ,c spaces

o r void j- abc gate mnemonic field

j- SYSOU2<SYSLB2<SYSPP2 ibsys tape a rg

xabsd#y<wae#y legal info card p rogram ; a j< a2<a 3 <. . . <a^

sym space; a eighteen sym sp aces; b<d string ; e sym bols;

s space j- x ab sd a ja2>. . a^#y<w^a2. . »a^#y identify

card program

x label; a le t te r ; b<c<d<e<f re f label sym; n num ber;

|- $x ind irect re f label base x; $abcdef ind irect re f

label base abcdef; $abcdef+n ind irec t re f label base

abcdef; $abcdef-n ind irec t re f label base abcdef

a<b<c le tte r ; d<e label symbol |- abcde label

a ,b lis t stm la b e ls ; c stm label f A labels among stm

labels a ; , labels among stm labels a ; A labels among

stm labels ,a; c t labels among stm labels a c , b

a *ake*-8 among stm labels b; c labels among stm labels d;

e labels among stm labels f J- ace labels among stm

labels bdf

d digit; 1 le tte r |- A { •«$<)< • label symbol

[note , (*-+ a re not]

R eproduced wild perm ission o f the copyright owner. Further reproduction prohibited without perm ission.

Page 133: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

1 2 2

p identify card p rogram ; p cards |- p legal card program

p any length card p rogram ; p seventy-one column cards

j- p legal info card program

I- B < C, Dt E < F < G< Ht I? J, K< L, M, N{ O, Q, R{ S, T, V<

Wt Xt Y kZ le tte r

n num ber j- , Pnt,LIFOt , LIFO link o rd e r a rg

a stm lab e l; b l is t stm label |* At ba, l is t stm labels

abc six sym or spaces; b stm label; a ? c spaces void

|- ab c l loc field with stm label b

}• RjI^S logic mnemonic

abc six sym or sp aces; b logic m nem onic; a^ c spaces

o r void {- abc logic mnemonic field

d d ig it; n num ber j- d, nd number

x num ber j- A < x. num ber or void

x lab e l; a ? b t c le tte r ; dt e re f label sym ; n number f- x plain

re f label base x; abcde plain re f label base abcde;

abcde + n plain re f label base abcde; abcde-n plain

re f label base abcde

print mnemonic j- ,MOVp FUT< , CHA| , If , N Wt , , S< , Q< , T? , X< , t Aarg

legal card program

legal info card program

letter

link o rder a rg

lis t stm labels

loc field with stm label

logic mnemonic

logic mnemonic field

number

number or void

plain re f label base

pref stand num a ttrib

prin t mnemonic a rg

|- W ,N ,C H ( P , M P, F >St R>Vt F N ,Q >T B,K pref stand

num a ttr ib

ifLR eproduced with perm ission

of the copyright owner. Further reproduction prohibited without perm ission.

Page 134: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

r123

program (first oat of 3)

program ^econd out of 3)

program (three out of 3)

ref label base

ref label sym

seventy-one column cards

simulate card program

six sym or spaces

spaces

spaces or void

a stm labels in p with ref labels r; r labels among stm

labels a j- p program

p comment program J- p program

b fnc def with re f labels c; d var def with re f labels e;

f storage def with re f label g; h table def with ref

labels i; s stm labels in mn with re f labels r ;

r c> g> i labels among stm labels s }- mbdfhn

program

x label; a plain re f label base b ; c ind irect re f label

base d; a le t te r ; b^c^d^e^f re f labels sym }• x re f

label base x; a re f label base b; c re f label base d;

w$abcdef re f label base abcdef; N$abcdef re f label

base abcdef

x label symbol j- x (t / ref label sym [note , + - are not]

a. l ia 2 t a 3t . „ . ^ayj sym or space: x seventv-one column

cards a 1a2a 3. . . a?J# seventy-one column cards

a l<a2 la 3t ’ * * ta65 aym or space; p program

f- *^SIMULATEa a^.. . a^g#P simulate card program

c* e t f sym or spaces {- abcdef six sym or spaces

space [• i^ x i spaces

■ pace J- x t A spaces or void

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 135: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

stand num p pref stand num a ttr ib ; n num ber j- n{ pn RNl^CLla ttrib sna

stand num a ttr ib sna

stand num p pref stand num a ttr ib ; n num ber |- n. *n{ pn p*nt RN1{a ttrib sna* sna

C LI stand num a ttr ib sna* sna

stm label x lab e l; a le t te r ; bcde sym or space or void; f symbol

j- x.( a f abcdef t A stm labelsStatem ents

. . . stm labels in. . .with re f labels }* A stm labels In A with re f labels A

firs t p rem ises s stm labels in p with re f labels r; a loc field with

label 1; -------

|- si, stm labels in paBUFFERfi# with re f labels r

|- si, stm labels in paTRACE^# with re f labels r

f* si, stm labels in paUNTRACE|# with re f labels

t ib sys tape j- s i, stm labels in paWRITE5t#with re f labels r

second p rem ises b a rg sna* sna or re f label c; n number; y a rg

void sna* sna or re f label z; -------

h si, stm labels in paASSEMB LEJb# with re f

labels rc ,

}- si, stm labels in paEXEC UTE4b# with re f

labels rc ,

j- s i, stm labels in paGATHER|b# with re f labels

rc ,

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 136: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

'{

t logic mnemonic field j- si, stm labels in pa LOGIC tb# with re f labels rc ,

^ s i, stm labels in paMARKlb# with re f labels rc ,

J- si, stm labels in paMATCH6b# with re f labels rc ,

j- s i, stm labels in paPREEM PT|b# with re f

labels rc ,

J- si, stm labels in paPRIORITY3y# with re f

labels rz ,

j- si, stm labels in paPRIORIT Yjy, BUFFERffwith

re f labels rz ,

|- si, stm labels in paRE LEASE4b# with re f labels rc,

j- si, stm labels in paRETURN5b# with re f labels rc,

|- s i, stm labels in paSEIZE^b# with re f labels rc ,

j- si, stm labels in paTERMINATE 2y#with re f

labels rz ,

th ird p rem ises d a rg sna* sna or re f label e; f a rg void , sna* sna

or re f label g; -------

J* si, stm labels in pa CHANGE 5b, d# with re f

labels rc , e,

\■ si, stm labels in paDEPART5b£# with re f

labels rc , g,

|- si, stm labels in paENTER6bf# with re f labels rc ,

* &ate mnemonic field j- si, stm labels in paGATEitbf# with re f labels r c , g,

h si, stm labels in pa LEAVE 6bf# with re f labels r c , g>.

"HJ

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 137: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

r1 2 6

t link o rder a rg j- s i, stm labels in paL.INK7btf# with re f labels rc , g,

f- s i, stm labels in paLOOPXb, a# with re f

labels rc , e,

}- si, stm labels in paQUEUE6bf# with re f labels rc , g,

|- s i, stm labels in paTABULATE3bf# with re f

labels rc , g,

fourth prem ises h a rg void , sna* sna or re f label i; j a rg num o r

re f label k; m a rg void number re f label o; q a rg void , num or

re f label u; v a rg void num or re f label w; -------

f- si, stm labels in pa AD VANCE yq# with re f

labels rz , u,

f- si, stm labels in paADVANCE4y, #n# with re f

labels rz ,

f- s i, stm labels in paADVANCE4y, FNn# with re f

labels rz ,

{- si, stm labels in paADVANCE4y, FN*n # with

re f labels rz ,

}- si, stm labels in paINDEX6jq# with re f labels rk , u,

|- s stm labels in palNITIAL^Xnq# with re f lab e ls , ru ,

t num ber void {- s stm labels in paINITIAJL4Xnr t# with re f

labels r

t print mnemonic a rg \- s i, stm labels in paPRINT6v, mt# with re f labels rw, <

j- si, stm labels in paSPLIT6y, d# with re f labels rz , e.

Lperm ission o , m e c o p y ^ , owner. F en n er reproOne.ion p r o h ib i t w*hou« p e n s i o n .

Page 138: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

r127

|- si, stm labels in paSPLJT6y, d, mb# with re f

labels r z , e , o , i ,

t te s t mnemonic field j- si, stm labels in paTEST ltyfh# with re f

labels rz , g, i,

t tran sfe r mnemonic a rg j- si, stm labels in paTRANSFER3tfhq# with

re f labels rg , e, u

t xact unlink lim it a rg sna or re f label f^; f^ xact unlinked a rg sna or

re f label j- si, stm labels in paUNLINK5b, d, tf2fh# with

re f labels rc , e , f l f f3, g, i,

f iith jg rem ises a^ a rg sna* sna or re f label no offset a?; -------

. |- s i, stm labels in paASSIGN|.a^ fh# with re f

labels r a 2, g, i,

j- si, stm labels in paASSIGN5aj,+yh# with re f

labels r a 2 , z , i

s i, stm labels in paASSIGN|aj,-yh# with ref

labels rap, z, i,

j- s i, stm labels in paSAVEVALUE^ajf# with

re f labels r a 2, g,

j- s i, stm labels in paSAVE VALUE 3a with

re f labels r a 2, z-,

j- si, stm labels in paSAVE VALUE 3a u-y# with

re f labels r a 2, z ,

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 139: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

bj a rg void , sna# sna or re f label b£; bg a rg void , sna# sna o r re f label b4

}»• si, stm labels in paH£L>P7yfhbtb^# with re f

labels rz , g, i, b2 , b4 ,

Cj a rg void sna or re f label c2 ; a rg void sna or re f label c4 ; a rg

void, num c t re f label eg; a rg void , num or re f label eg; a rg

void , num or re f label c^q; a rg void, sna or re f label c i?

|- si, stm labels in paGENERATElci# with re f

labels r c 2 ,

f- si, stm labels in paGENERATE3 C]_. Cgc sC^cg#

with re f labels r c 2, c4, eg, Cg, c jq ,

d i a rg void num or re f label d2; dg a-rg void num or re f label d4 ; dg a rg

void num or re f label d& (- s i, stm labels in paGENERATE3c T, c^, d ,

d3 d5c l l # with re f labels r c 2 , c4 , d2, d4 , dg, c 12,

end prem ises

'- 'j

&

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 140: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

129Control C ards

alpha numeric x le t te r ; y d igit; z alpha num eric |- A * zy^ z x alpha num eric

f ir s t p rem ises a field with stm label b; s stm labels in p with re f

labels r ; -------

|- s stm labels in paRESET6# with re f labels r

|- s stm labels in pa$6jOB38# with re f labels r

|* s stm labels in paEND8# with re f labels r

f- s stm labels in paHST7# with re f labels r

[- s stm labels in paUNLISTS# with re f labels r

|- s stm labels in paCLEAR6# with re f labels r

second p rem ises c a rg num or re f label d ; x alpha n u m eric ; -------

(■ s stm labels in paREADTc# with re f labels rd ,

t ibsys tape j- s stm labels in paREWIND5t# with re f labels r

{■ s stm labels in paSAVEJx# with re f labels r

th ird p rem ises y a rg void num or re f label z; e a rg void , num or

re f label f; g a rg void , num or re f label h;i a rg void. , iium or

re f label j ;-------

t ibsys tape f- s stm labels in pajOBTAPE^t, cdg# with re f

labels rd , f, h,

|- s stm labels in paSTART^yegi# irith re f labels

rz, f, hj,

|- s stm labels in paSTAR*T6y» NP, eg# with ref

labels ry, f , h,

end premises

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 141: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

130

Pseudo-O perations

f ir s t p rem ises a field with stm label 1; b re f label; b labels among

stm labels sb, ; s stm labels in p with re f labels r ; s spaces

void; bs^ns^ts six sym or sp aces; ——

}> s stm labels in paORG&bs# with re f labels r

n number or void - s stm labels in palCT&ns# with re f labels r

t stm label J- si, stm .labels in paSYN8bs# with re f labels r

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

}• s stm labels in paABS8# with re f labels r

|- s stm labels in paENDABS5# with re f labels r

end prem ises

storage def with re f label

a field with num b; c a rg num or re f label d |- a s to rage

def with re f label A ; aSTORAGE|c storage def with

re f label d

symbol

sym or space

string

symbols

+ t / symbol

x syrabol; y symbols |> x^yx symbols

x sym or space ; y s trin g |- A yx string

x symbol f* i sym o r space

sym or space or void

x sym or space |- a sym or space or void

Page 142: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

ta b le a r g

table def with ref labels

a stand num a ttr ib sna j* a^a-^RT^IA table a rg

a field with num b; c table a rg ; n num ber; d a rg void , num

or re f label e; f a rg void , num or re f label g; h a rg

void , num or re f label i; j a rg void , num or ref

label k {■ A tabel def with re f labels A ;

aTA BIE^cdfhj# table def with re f labels e ,g , i ,k , ;

aQTABLE5ndfhj# table def with re f labels e, g, i, k,

j- JL^LE^ G^GE^ NE te s t mnemonic

abc six sym or sp aces; b te s t m nem onic; a ,c spaces or

void abc te s t mnemonic field

n number {- . n^FNn^Pn^BOTH^ PICK^SBR^ SIM^ALLj A

tra n s fe r mnemonic a rg

a var a rg sna or re f label b; c variable op; d var a rg

field with re f labels e }- a var a rg field with re f

labels b, ; dca var a rg field with re f labels eb,

a stand num a ttr ib sna; 1 var a rg sna o r re f label a ;

N$defgh var a rg sna or re f label defgh; W$defgh

var a rg sna or re f label defgh; $ defgh var a rg sna

o r re f label defgh; 1 var a rg sna or re f label 1

a var a rg field with re f labels b; c field with num d

|- CVARIABLE3a# var def with re f labels b;A var

def with re f labels

var labels sym x label symbol j- x t , var label sym [note (+ -* / a re notj

variable op - + variab le op

test mnemonic

test mnemonic field

transfer mnemonic a rg

var a rg field with re f labels

var a rg sna o r ref label

var def with ref labels

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 143: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

APPENDIX B

EXPERIMENTAL VERIFICATION OF

SYNTAX OF GPSS III

B. 1 Summary

This appendix is concerned with that portion of the syntax of GPSS III

that is ambiguously or inco rrec tly defined in the GPSS III m anuals.

Many of the constructions defined by Appendix A were found to

be legal form ations by experim ent. That is , te s t program s w ere w ritten

in. GPSS III and executed on an IBM 7094/7040 DCS. F o r each construction

that was executed, enough variations were w ritten to find a pattern .

The m ajor conclusion of th is experim entation was that the syntax

of GPSS III is in general less re s tric tiv e than is stated in the m anuals.

Statement labels, reference labels, argum ents, and column form at

were found to have m ore flexibility in the ir form . A GPSS p rogram m er

might be su rp rised to lea rn that the statem ent

Z*( )$= TEST E $Z*( )£=,$Z*( )$=+50,4

is a legal statem ent.

It has not been made c lear in the m anuals for a ll statem ents which

argum ents in these statem ents m ust not be void and which may e ith er be

void or not void. Each argum ent was experim entally tested to determ ine

it may be void. Exam ples of such statem ents a re given la te r in th is

appendix.

In a few instances it was found that the m anuals were not re s tr ic tiv e

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 144: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

enough. Some statem ents ( e .g . , blank cards o r any charac ter in

column one a re perm issib le , and an ORIGINATE block is perm issib le)

which the m anuals state to be legal constructions a re not, and will cause

a program containing these constructions to be re jec ted .

Some of the re su lts of these experim ents have been discussed in

Section III. 12 through III. 14.

In Section B .2 .a of this appendix is presented a listing of a program

that passed through a ll phases of GPSS III p reprocessing and was executed.

This program contains exam ples of constructions that a re legal but were

stated or im plied to be illegal in the m anuals. There has been no attem pt

to include a ll exam ples of legal constructions. F o r exam ples of m ore

conventional constructions consult Appendix D.

In Section B .2 .b is presen ted the symbol table of the above-m entioned

program . The read er may use th is to locate the block num bers that

were assigned to each statem ent label.

In Section B. 2. c a re p resen ted the assem bled statem ents of the

above-mentioned program . In the assem bled program a ll symbols

(labels) of each statem ent have been given the ir assigned block num bers.

The read er should use th is assem bled program to le a rn how the labe ls ,

nuxrbers, and strings were recognized by GPSS III. F o r example the

reference label ABC+1 is recognized as two different labels: as the

statem ent label ABC+1, and as the rela tive ad d ressed label ABC plus:u

§ one. Very large num bers m ay be perm issib le but they a re not alwaysjk

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 145: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

:•*53 _ 134

recognized a s the num bers they denote. In Section B .2 .c is

dem onstrated the recognition of the large num bers in the above - mentioned

program by GPSS.

The execution of the program will cause the contents of "savevalue"

locations 1, 2, 3, 10 and 15 to be printed if they contain any num ber other

than a zero . .Locations 1,2, 3 contain the num bers recognized by GPSS

from a void B field in an INDEX, ASSIGN, and SAVE VALUE block

(statem ent). Locations 10 and 15 contain the num bers recognized by

GPSS from very large num bers used in the INITIAL blocks in the above-

mentioned program .

It is im portan t that a program m er study the assem bled program

thoroughly before using void argum ents o r very large num bers or complex

reference lab e ls . A void argum ent may denote different values to

GPSS III. E . g. void argum ents in an ADVANCE block denote zero , void

argum ents in a TRANSFER block denote next block num ber, void

argum ents in A field of a GENERATE or SPLIT block denote one. R eference

labels may denote different num bers depending on th e ir context. Large

numbers may denote different num bers. E . g. the num ber

i .50044444444445555566666222t ■

!--•

| use<3 as an A field of a TRANSFER block is recognized a s 222.

| A listing of a program that has a syntax e r r o r in nearly everyrL statem ent is presented in Section B. 2. d. In this program there a re

examples of constructions that have been stated o r im plied in the m anuals

to be legal but a re not. In th is p rogram there a re a lso exam ples of

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 146: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

constructions that from the re su lts of the experim ental program s might

be thought to be legal but a re not.

B. 2 E xperim ental V erification of Ambiguously or Incorrectly Stated

Constructions in the GPSS Manuals

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 147: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

a. Syntactically Legal P rogram‘ GPSS I I I ASSEMBLY INPUT

136

BLOCKNUMBER *LOC NAME A , B , C , D , E COMMENTS

**-*****-*

********

SIMULATE TEST SYNTAX------------------------------------------------- LEGAL PROGRAM---------------------------------- —EVERY STATEMENT BELOW IS SYNTACTICALLY LEGAL THIS PROGRAM WAS COMPILIED AND EXECUTED ON AN IBM 7 0 9 4 / 7 0 4 0 DCS BY GPSS I I I

------------------------------ PERMISSIBLE STATEMENTS -LABELSIT I S STATED IN THE GP SS I I I MANUALS I P P . 1 9 AND 2 2 4 OF REF NO. 9 ) THAT A BLOCK SYMBOL (STM LA8ELJ MUST CONS ISTOF FROM THREE TO FI VE ALPHAMERIC, NON BLANK ' CHARACTERS, THE FIRST THREE OF WHICH MUST BE LETTERS. AN ADDITIONAL RESTRICTION I S THAT NONE USED IN A BLOCK SYMBOL. + - $ / ( . = • , ) INADDITION, IT I S STATED IN THE MANUAL ( P . 2 2 5 ,REF NO. 9 > THAT DOLLAR SIGNS MAY NEVER OCCURE IN THE LOCATION FIELD. IN THE MANUALS IT ISSTATED THAT. LABELS MUST APPEAR IN COLUMNS 2

1

* THROUGH 7 ( E . G . P . 224 OF REF 9 )* NOTE THE VARIETY OF PERMISSIBLE STM LABELS FOUND* BY EXPERIMENT BELOW. FOR PRECISE DEFINITION OF* PERMISSIBLE STM LABELS CONSULT APPENDIX A.&Z * { ) $ = SEIZE i STM LABEL I S Z * ( >$= AND IS

2*X = $ , + / SEIZE

REFERENCED BY ENTER STM BELOW1

3 Q * S E I Z E 14 ABC}• SEIZE 15 ABC$, SEIZE 16 ABC(1 SEIZE 2 LABELS START IN COLUMN NUMBER 17 ABC)1 SEIZE 28 ABC' 1 SEIZE 29 ABC = . -SEIZE 210 ABC( ) SEIZE 211 ABC=* SEIZE 25 ABC$, SEIZE 2 NOTE THIS STM LABEL IS RECOG-

12

MULTIPLE DEFINITION OF SYMBOL IN ABOVE CARD

* NIZED AS THE SAME LABEL AS ABC ABOVE EVEN THOUGH* THIS LABEL DOES NOT OCCURE IN COLUMNS 2 - 7 ABCDEF SEIZE 3 LABELS SIX CHARACTERS IN LENGTH

13 ABC123 SEIZE 314 ABC=M SEIZE 315 ABC(*) SEIZE 316 ‘ ABCS SEIZE 6 617 AB SEIZE 318 A8C 12 SEIZE 1 SPACE I S IN STM LABEL AND IS

19* CORRECTLY

AB123 SEIZEREFERENCED IN FNC 88 BELOW

120 A l l l ENTER 121 TES1 ENTER 122 TES2 ENTER 123 ABC*1 SEIZE 3324 ABC SEIZE 125 ABC== SEIZE 1

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 148: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

137

262728293031323334353637383940414243

44

R eproduced with

M i l l SEIZE 1'A$ • , + SEIZE 1

ABC/1 SEIZE . 5ABC- SEIZE 5ABC+1 SEIZE 5

A SEIZE 1AA SEIZE 2

A=BC SEIZE 1AA8C SEIZE 1

ABC+5 SEIZE 1A , , , , SEIZE 4

ABC$$ SEIZE 4ABC$. SEIZE 1A12 SEIZE 1ABCDE SEIZE 1A PP SEIZE 2 .BLANKS ARE PERMISSIBLEHELP SEIZE 10A*( ) SEIZE 1ABC12 INITIAL X 1 0 . 1 0

* NOTE STM LABEL IS PERMISSIBLE IN INITIAL CARD* BUT IT IS NEVER ADDEO TO THE LIST OF SYMBOLS* THEREFORE IT MAY NEVER BE REFERENCED

TERMINATE** --------------------------------- PERMISSIBLE FUNCTION DATA CARD ARGUMENTS* FOR PRECISE DEFINITION OF ALL PERMISSIBLE ARGU-* MENTS OF FUNCTION DATA CARDS CONSULT APPENDIX A.* NOTE THE READER SHOULD CONSULT SECTION B . 2 . B AND* B . 2 . C , THE SYM TAB EL AND THE ASSEMBLED PROGRAM,* TO SEE HOW GPSS I I RECOGNIZED THESE REFERENCE LABELS*

1 FUNCTION V10 ,D2ABC+1 ABC= * ( ABCS* ABC(*)* LABELS REFERENCED IN THE ABOVE FNC DATA CARO ARE* ABC+1 ABC= *( A8C$* ABC I * ) , ABC + 1 I S NOT A REL-* ATIVE LABEL.

2 FUNCTION $ABC+1, 0 2 ABC IS A RELATIVE LABELABC+1 ABCD+ ABCDE ABC.)

55 FUNCTION V I , 0 2ABC=• 12 50 90

6 FUNCTION V I , E 2ABCDEF 12 ABC 123 19

7 FUNCTION V I , E 2ABC=*( 12 ABC( * ) 50

88 FUNCTION P 1 , C 2ABC 12 120 123 400* NOTE THE LABEL ABC 12 IS REFERENCED IN THE ABOVE

89 FUNCTION S 1 0 , D 2ABC = * t 12 ABC$. 14

8 FUNCTION V I , E 2ABC$, ABC ( 1 ABC * 1 ABCl)

6 6 FUNCTION X10,D2ABC- 3 0 40 5015 FUNCTION V 1 2 , E 2

perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 149: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

138

•vl.y-v.-'I'yfi1

45

Q1010

ABC*4c-------i f

i f

Jfc

*

ABC ABC$* FUNCTION

ABCD + A=BC

A6C= =V1 0 ,E2 .ABCD

---------------------------PERMISSIBLE VARIABLE ARGUMENTSNOTE THE READER SHOULD CONSULT SECTION B . 2 . B AND B . 2 . C ,THE SYM TABLE AND THE ASSEM8LED PROGRAM,TO SEE HOW G P S S I I I RECOGNIZED THESE REFERENCE LABELS

1 VARIABLE A B C / l * $ A B C / l + l - 3 REFERENCE LABEL IS A8C2 VARIABLE 2*SA12 •

3 VARIABLE ABC*Q10 LABEL IN VARIABLE4 VARIABLE 2*SABC== •

6 VARIABLE $ AB+1 NOTE REF LABEL IS AB AND NOT A8+15 VARIABLE 5 A t t , , +1 LA8EL REFERRENCEO IS A , , , ,

13 VARIABLE 5+$ABC$$+3 LABEL REFERRENCEO I S ABC$S14 VARIABLE SABC/1212 VARIABLE A8C= * +122 VARIABLE ABC$,+ 1 .23 VARIABLE ABC==+2

33 VARIABLE H-5A111+SABC==43 VARIABLE 1+$A111153 VARIABLE ABC) . + 1

*4c---------** i f

if

--------------------- p e r m i S S I b l e a r g u m e n t sP R IC IS E DEFINITION OF PERMISSIBLE ARGUMENTS APPENDIX A. NOTE VARIETY OF PERMISSIBLE REF LABELS IN ARGUMENTS OF STATEMENTS

I S IN

i fi f

ENTER SEE SECTION

$ Z * { ) $ = + 2 1 B . 2 . B AND SECTION B . 2 . C , SYM TABLE

AND ASSEMBLE PROGRAM FOR G P S S I I I RECOGNITION OF ABOVE

IS 6 CHARACTERS46 A12345 ENTER SA1234547 ABC133 PREEMPT $ABC133 REF LABEL48 ABC12* EXECUTE SABC12*49 EXECUTE SABCDEF50 EXECUTE $ABC12*+151 ALL RELEASE ABC52 TRANSFER , ABC*1-153 TRANSFER , ABCDEF LABEL MORE54 TRANSFER , ABC*155 TRANSFER , ALL+956 TRANSFER , ALL H O57 • TRANSFER , ALL+2058 TRANSFER BOTH,ALL+25 , ALL59 TRANSFER y ALL + 2560 TRANSFER ALL,ALL+25, A L L , 5

* THE FIRST ALL IN ARG ABOVE I S NOT61 ASSt t ( TRANSFER ALL,ABC+25, ABC y 062 TRANSFER ALL,ABC,ABC+25,563 TRANSFER ALL,ALL,ALL+25 ,564 TRANSFER ALL,ALL,ABC , 165 ’ TRANSFER , ALL+166 TRANSFER ALL,$ALL+1, ALL, 1

THAN 6 CHARACTERS

A LABEL

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 150: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

139

67 TRANSFER A L t , $ A B C , A L L , 168 TRANSFER , ALL+869 TRANSFER A L L , A B C + 1 , A 8 C + 2 , 170 ■ t r a n s f e r ■'* ABC 12*71 TRANSFER » ALL + 572 TRANSFER , ALL+473 TRANSFER , ALL+374 TRANSFER , ALL-875 TRANSFER , ALLLL+176 ALLLL TRANSFER ,$ALLLL+177 TRANSFER , $ ABC 12*78 TRANSFER ALL,ALL,ALL,579 TRANSFER BOTH,ALL,ALL+380 TRAN TRANSFER , TRAN TRANSFER TO SAME STATEMENT.81 TRANSFER ,$HELP TEST $ IN FRONT OF LABEL82 TRANSFER ,ABC*183 TRANSFER , $ ABC+l .84 TRANSFER » ABC85 TRANSFER , ABC+186 TRANSFER . , ABC+1 SEE SEC. B . 2 . C FOR RECOGNITION87 SAVEVALUE $ ABC—, 288 SAVEVALUE ABC+,189 SAVEVALUE $ ABC D+, I90 SAVEVALUE $ ABCD++, 191 ASSIGN N$ABC+ LABEL IS ABC92 ASSIGN ABC+,193 ASSIGN $ABC + , 194 ASSIGN $ALL , 1 SYMBLOIC BLOCK95 ASSIGN P 1 0 , 196 ASSIGN $ ABC, 197 ASSIGN 1 + , 198 ABC + ASSIGN P 1 0 + , 199 PRINT ABC,ABC-1, NOTE COMMA IS THERE100 . XS*{ ASSEMBLE ABC101 A LL SEIZE $ A LL $A LL I S RECOGNIZEO AS A102 SEIZE ABC+1 REF LABELS103 ABCD+ SEIZE 2104 ABC* SEIZE ABC*105 A8C= SEIZE ABC=106 ABC$* SEIZE ABC$*107 ABC. ) SEIZE ABC. )108 ABC/ / SEIZE A B C / /109 A123 SEIZE SA123 REFERENCE LABEL110 ABC-1 SEIZE $ABC+1111 ABCO SEIZE ALL112 SEIZE ABCO113 SEIZE ABC*1—1114 SEIZE $A115 SEIZE ALL+25116 SEIZE ALL+9117 SEIZE $ABCDEF REF LABEL IS 6 CHARACTERS118 SEIZE ABC+1119 SEIZE $A=BC $ IN REF LABEL120 QUEUE $ ABCDE

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission

Page 151: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

140

%

121 QUEUE $AfeC+l122 QUEUE W$A8CDE123 QUEUE N$ABCDE124

4cRELEASE $ABC

4:--------— ------------------------ PERMISSIBLE VOID ARGUEENTS4c NOTE A VOID ARG MAY BE RECOGNIZED AS DENOTING4cA

SEVERAL DIFFERENT VALUES. CONSULT SECTION 8 . 2 . C

125V

ADVANCE WHERE CAN VOID ARGUMENTS BE126 ASSIGN 1 , WHERE CAN VOID ARGUMENTS BE127 DEPART 4 , WHERE CAN VOID ARGUMENTS BE128 GATE LS 4 , WHERE CAN VOID ARGUMENTS BE129 PRINT y , MOV130 PRINT , , FUT PRINT FUTURE ENENTS CHAIN131 PRIORITY , WHERE CAN VOID ARGUMENTS BE132 SAVEVALUE 1, WHERE CAN VOIO ARGUMENTS BE133 TEST GE WHERE CAN VOID ARGUMENTS BE134 TEST NE * » BLANKS IN TEST135 TRANSFER WHERE CAN VOID ARGUMENTS BE136 TRANSFER , WHERE CAN VOID ARGUMENTS BE

137

149150151152

ARGUMENT MAY DENOTE DIFFERENT E . G . VOID ARG IN ADVANCE STM ARG IN TRANSFER STM DENOTES VOID ARG IN SPLIT STM DENOTES

* IMPORTANT - A VOID* VALUES TO GPSS I I I* DENOTES ZERO, VOID* NEXT BLOCK NUMBER,* TEST I F BLANKS EXECUTE CORRECTLY

GENERATE 1 , 1 , 1 , 1 , 1 THIS WILL CAUSE THE* THE RECOGNITION OF VOID ARG IN INDEX AND ASSIGN* TO BE PRINTED. SEE END OF SEC B . 2 . C

ONE

STM

138 ADVANCE BLANK TIME139 ASSIGN 1 , 5 P 1 = 5140 INDEX 1 , I S BLANK PERMISSIBLE141 SAVEVALUE I , P I142 PRINT I t 1 PRINT VALUE OF SAVE 1 OR PI143 ASSIGN 2 , BLANK IN ASSIGN144 SAVEVALUE 2 , P2145 PRINT 2 , 2 PRINT > 2146 SAVEVALUE 3 , BLANK IN SAVEVALUE147 PRINT 3 , 3148 TERMINATE 1

4c4c-----4c-------

4c4c4c4c

4c4c

4c

--------------------------- PERMISSIBLE COLUMN FORMAT---------------PERMISSIBLE COLUMN FORMAT FOR LOGICOR RELATIONAL MNEMONICS. IT I S STATED IN MANUALS ( E . G . P . 2 2 4 , OF REF NO.9) THAT WHEN ATTRIB OR RELATIONAL MNEMONIC I S NEEDED IN

ATTRIBTHEA LOGIC

THEAUX TEST, IN COLUMN COLUMN 14

LOGICR LOGIC R LOGIC F LOGIC

GATE, AND LOGIC BLOCKS IT MUST BEGIN 13 FOR GATE AND TEST BLOCKS AND IN FOR LOGIC BLOCKS.

IN

1111

TESTTEST

IFIF

MNEMONICMNEMONIC

ININ

COLCOL

1314

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 152: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

141

153154155156

157158

159

160161162

1111

LOGIC R1 ’TEST GE 1 2 , 1 2 , 1 TEST WHERE TEST GE 1 2 , 1 2 , 1 TEST WHERETEST GE1 2 , 1 2 , 1 TEST WHEREVARIABLE VI TEST RIGHTSTORAGE 20 TEST RIGHT

GE GOES GE GOES GE GOES JUSTIFICATION JUST OF STORAGE

*

***

**

TEST HOW LONG NUMBER CAN BE NOTE THE FORM OF NUMBERS PERMISSIBLE IN THE . FOLLOWING STM,THESE NUM ARE NOT ALWAYS RECOGNIZED BY GPSS I I I AS THE NUM THEY DENOTE

TRANSFER . 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 , ALL, ABCDETRANSFER . 5 0 0 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 6 6 6 6 6 2 2 2 , T E S 1 ,TE S2

SEE SEC. B . 2 . C FOR RECOGNITION OF ABOVE NUMBERS INITIAL X 1 0 , 1 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3INITIAL X 1 5 , 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 LIMIT ON LENGTHGENERATE 1 , 1 , 1 , 1 , 1 THIS WILL. CAUSE THE

RECOGNITION OF THESE LONG NUMBERS IN INITIAL STM TO BE PRINTED. SEE END OF SEC. B . 2 . C

OF N

PRINTPRINTTERMINATE

1 5 , 1 510 ,101

PRINT NUMBER IN INITIAL ABOVE PRINT SAV NO 10

163164165166167168169170171172173174175176177178

179

40

*------------ PERMISSIBLE AGUUMENTS FOR GENERATE STATEMENT

**-***

**4

GENERATETERMINATEGENERATETERMINATEGENERATETERMINATEGENERATETERMINATEGENERATETERMINATEGENERATETERMINATEGENERATETERMINATEGENERATETERMINATE

WHERE CAN VOID ARGUMENTS BE

2 , 1 , , 1 0

* » * 13

10,2

8 , 2 , , 1 0

1 2 , 3

V I , ABC

1 0 , 3 , ABC,ABC,

--------------------------- PSEUDO OPERATIONSIT IS STATED IN THE MANUALS THAT LOCATION FIELD MUST BE LEFT BLANK OF PSEUDO OPS I C T , A3S, ENDABS THIS STM I S NOT CORRECT. HOWEVER IF A STM LABEL IS USED IN THE LOC FIELD IT IS NOT ADDED TO THE L I ST OF SYM. E .G . ACFV I S NOT IN LIST OF SYM SEC­TION B . 2 . B . HENCE MAY NOT BE REFERENCED

GGGG

SSS

SEIZEORGSEIZE

1ABCDE6

PSUEDC OP NEXT BLOCK = ABCDE

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 153: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

142

NOTE BLOCK NUMBER OF ABOVE BLOCK41 AZX SEIZE 6

• ICT 5 INCREMENT NEXT BLOCK NUM BY 546 ASSS SEIZE 6

ACFV ORG GGGG NEXT BLOCK = GGGG LABEL ON P OP179 DDS SEIZE 6

QQQ SYN ASSS QQQ = ASSS46 QQQ SEIZE 53

MULTIPLE DEFINITION OF SYMBOL IN ABOVE CARD

180 ZZ SEIZE 1

*

START 2STM LABELS ARE PERMISSIBLE THEY ARE NOT AODED TO L IST

WWWWWXSSS

MAY NEVER START START START START START START START END

BE REFERENCED .8 , ,1 0

1 0 , , 1 DOESS A B C / 1 + 1 , , ABC/1 $ ABC/1 , , ABC ABC,' ,ABC 83 , , 1

ON START CARDS BUT OF SYM. HENCE THEY

(SEE SYM TABLE SEC. 8. 28 )

LA8EL OF CONTROL CARD C

a;I£

I

5v,

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 154: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

b. Symbol Table of Legal Program

SYMBOLS AND CORRESPONDING BLOCK

* 31 A* 20 A111

26 A i m* 39 A12* 109 A123* 46 A12345* 33 A=BC

32 AA34 AABC

* 17 A319 A B12 3 -

* 24 ABC* 13 ABC123* 48 ABC12** 47 ABC133* 105 A8C=* 25 ABC = =* 11 ABC= ** 14 ABC=*(* 9 ABC= •* 104 ABC*={t 8 ABC* 1

9 8 ABC +* 30 ABC + 1

35 ABC + 5* 111 ABCD* 103 ABCD +

40 ABCDE* 12 ABCDEF* 1C7 ABC . )

7 ABC ) 1* 4 ABC) .* 29 ABC—

110 ABC-116 ABC$

* 38 A B C $ . .* 37 ABC$S* 106 ABCS** 5 ABC$,* 23 ABC* 1* 18 ABC 124c 28 ABC/1* 108 ABC/ /* 6 ABC ( 1* 10 ABC ( )* 15 ABC( * I* 51 ALL

76 ALLLL27 A $ . , +•43 A*{ )

101 A LL41 A PP

* 46 ASSS

with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

NUMBERS

Page 155: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

14461 ASS{((41 AZX36 As.***.179 DOS179 GGGG* 42 HELP

3 Q»46 QQQ40 SSS* 21 TES1* 22 TES2* 80 TRAN2 X II </v N

100 x$*<* 1 Z * ( )$=180 zz

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 156: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

c. Assembled Legal Program

I

&

b

*-*

- A -V

❖*-

************❖❖

23A5678910 11 5

**

12131415161718

SIMULATE TEST .SYNTAX--------------------------------------------------LEGAL PROGRAM------------'------------- -------------EVERY STATEMENT BELOW IS SYNTACTICALLY LEGAL THIS PROGRAM WAS COMPILIED AND.EXECUTED ON AN IBM 7 0 9 4 / 7 0 4 0 DCS BY GPSS I I I

----------------------------- PERMISSIBLE STATEMENTS LABELSIT IS STATED IN THE G P S S I I I MANUALS ( P P . 19 AND 2 2 4 OF REF NO. 9 ) THAT A BLOCK SYMBOL (STM LABEL) MUST CONS ISTOF FROM THREE TO FIVE ALPHAMERIC, NON BLANK CHARACTERS, THE FIRST THREE OF WHICH MUST BE LETTERS. AN ADDITIONAL RESTRICTION IS THAT NONEUSED IN A BLOCK SYMBOL. + - $ / { . = * , ) . INADDITION, IT IS STATED IN THE MANUAL { P . 2 2 5 ,REF NO.9 ) THAT DOLLAR SIGNS MAY NEVER OCCURE IN THE- LOCATION F I E L D. IN THE MANUALS IT ISSTATED THAT LABELS MUST APPEAR IN COLUMNS 2 THROUGH 7 ( E . G . P . 224 OF REF 9 )NOTE THE VARIETY OF PERMISSIBLE STM LABELS FOUND BY EXPERIMENT BELOW. FOR PRECISE DEFINITION OF PERMISSIBLE STM LABELS CONSULT APPENDIX A.

SEIZE 1REFERENCED BY ENTER STM BELOW

SEIZE 1SEIZE 1SEIZE 1SEIZE 1SEIZE 2SEIZE 2SEIZE 2SEIZE 2SEIZE 2SEIZE 2 *SEIZE 2

NIZED AS THE SAME LABEL AS ABC ABOVE EVEN THOUGH THIS LABEL DOES NOT OCCURE IN COLUMNS 2 - 7

SEIZESEIZESEIZESEIZESEIZESEIZESEIZE

CORRECTLYSEIZEENTERENTERENTERSEIZESEIZESEIZESEIZESEIZESEIZESEIZESEIZESEIZESEIZESEIZE

3 3 3 3 66 3 .1

REFERENCED1111331111555121

IN FNC 88 BELOW

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

145

Page 157: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

IIi-i

34 SEIZE 135 SEIZE 136 SEIZE 437 SEIZE 438 SEIZE 139 SEIZE 140 SEIZE 141 SEIZE 242 SEIZE 1043 SEIZE 1ABC12 INITIAL X10

***

t******<=*

44

10NOTE STM LABEL I S PERMISSIBLE IN INITIAL CARO BUT IT IS NEVER ADOEO TO THE LIST OF SYMBOLS THEREFORE IT MAY NEVER BE REFERENCED

TERMINATE

--------------------------- PERMISSIBLE FUNCTION OATA CARO ARGUMENTSFOR PRECISE DEFINITION OF ALL PERMISSIBLE ARGU­MENTS OF FUNCTION DATA CARDS CONSULT APPENDIX A„NOTE THE READER SHOULD CONSULT SECTION B . 2 . B AND B ; 2 . C ,THE SYM TABEL AND THE ASSEMBLED PROGRAM,TO SEE HOW GPSS I I RECOGNIZED THESE REFERENCE LABELS

THE ABOVE FNC DATA CARD ARE A8CI*) , A8C+1 IS NOT A REL-

1 FUNCTION V10 D230 14 106 15

LABELS REFERENCED IN* ABC+1 ABC= • ( ABCS** ATIVE LABEL •

2 FUNCTION 25 D230 103 40 107

55 FUNCTION VI 029 12 50 9 0

6 FUNCTION VI E212 12 13 19

7 FUNCTION VI E214 12 15 50

88 FUNCTION P I C218 120 123 4 0 0* NOTE THE LABEL ABC 12

89 FUNCTION S10 D214 12 38 14

8 FUNCTION VI E25 6 8 10

66 FUNCTION X10 0229 30 40 5015 FUNCTION V12 E2

Q10 24 106 2510 FUNCTION V10 E2

24 103 33 111 .

IS REFERENCED IN THE ABOVE

*------------------------------------PERMISSIBLE*

VARIABLE ARGUMENTSNOTE THE READER SHOULD CONSULT SECTION B . 2 . B AND B . 2 . C , THE SYM TABLE AND THE ASSEMBLED PROGRAM,TO SEE HOW G P S S I I I RECOGNIZED THESE REFERENCE LABELS

VARIABLE VARIABLE VARIABLE VARIABLE VARIABLE

2 4 / 1 * 2 4 / 1 + 1 —32 * 3 92 4 * Q 102 * 2 517+1

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

146

Page 158: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

If;:?-•*

fct-K-r -

P

5 VARIABLE 36 + 113 VARIABLE 5+37+3

14 VARIABLE 2 4 / 1 212 VARIABLE 11 + 122 VARIABLE 5 + 123 VARIABLE 2 5+2

33 VARIABLE 1 + 2 0 + 2 543 VARIABLE 1 + 2653

uVARIABLE 4 + 1

r*L. PERMISSIBLE ARGUMENTSIt PRICISE DEFINITION OF PERMI SSIBLEc APPENDIX A. NOTE VARIETY OF PERM!«•fc

LABELS IN ARGUMENTS OF STATEMENTS

45 ENTER 22K • SEE SECTION B . 2 . B AND SECTION B . 2£ AND ASSEMBLE PROGRAM FOR GPSS I I I !46 ENTER 4647 PREEMPT 4748 EXECUTE 4849 EXECUTE 1250 EXECUTE 4951 RELEASE 2452 TRANSFER 2253 TRANSFER 1254 TRANSFER 2355 TRANSFER 6056 TRANSFER 6157 TRANSFER 7158 TRANSFER BOTH 7 6 5159 TRANSFER 7660 TRANSFER ALL 76 51 5

THE FIRST ALL IN ARG ABOVE I S NOT61 TRANSFER ALL 49 24 062 TRANSFER ALL 24 49 563 TRANSFER ALL 51 76 564 TRANSFER ALL 51 24 165 TRANSFER 5266 TRANSFER ALL 52 51 : 167 TRANSFER ALL 24 51 168 TRANSFER 5969 TRANSFER ALL 25 26 170 TRANSFER 4871 TRANSFER 5672 TRANSFER 5573 TRANSFER 5 474 TRANSFER 4375 TRANSFER 7776 TRANSFER 7777 TRANSFER 4878 TRANSFER ALL 51 51 579 TRANSFER BOTH 51 5480 TRANSFER 8081 TRANSFER 4282 TRANSFER 2383 t r a n s f e r 2584 t r a n s f e r 2485 TRANSFER 2586 t r a n s f e r 25

IS IN

, SYM TABLE RECOGNITION OF A80VE

A LABEL

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

147

Page 159: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

IfK ■

i:

87 SAVEVALUE 24 288 SAVEVALUE 24 189 SAVEVALUE 111 190 SAVEVALUE 127 191 ■ ASSIGN N2492 ASSIGN 24 193 ASSIGN 24 194 ASSIGN 51 195 ASSIGN P10 196 ASSIGN 24 197 ASSIGN 1+ 198 ASSIGN P10+ 199 PRINT 24 23

• 100 ASSEMBLE 24101 SEIZE 31 •102 SEIZE 25103 SEIZE 2104 SEIZE 104105 SEIZE 105106 SEIZE 106107 SEIZE 107108 SEIZE 108109 SEIZE 109110 SEIZE 25111 SEIZE 51112 SEIZE 111113 SEIZE 22114 SEIZE 31115 SEIZE 76116 SEIZE 60117 SEIZE 12118 SEIZE 25119 SEIZE 33120 QUEUE 40121 QUEUE 25 .122 QUEUE W40123 QUEUE N40124

ifRELEASE 24

*-------- PERMISSIBLE VOID ARGUEENTSNOTE A VOID ARG MAY BE RECOGNIZED AS DENOTING

* SEVERAL DIFFERENT VALUES. CONSULT SECTION B . 2 . C

125 ADVANCE126 ASSIGN 1127 DEPART 4128 GATE LS 4129 PRINT MOV130 PRINT FUT131 PRIORITY132 SAVEVALUE 1133 TEST GE134 TEST NE135 TRANSFER 136136 TRANSFER 137

* IMPORTANT - A VOID ARGUMENT MAY DENOTE DIFFERENT* VALUES TO GPSS I I I E . G . VOID ARG IN ADVANCE STM* DENOTES ZERO , VOID ARG IN TRANSFER STM DENOTES* NEXT BLOCK NUMBER’, VOID ARG IN SPLIT STM DENOTES* TEST IF BLANKS EXECUTE CORRECTLY

ONE

148

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 160: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

I

£

tK-¥■»V

137 GENERATE 1 1 1 1 1THE RECOGNITION OF VOID ARG IN INDEX AND

TO BE PRINTED. SEE END OF*SEC B . 2 . C138 ADVANCE •

139 ASSIGN 1 5140 INDEX 1 •

141 SAVEVALUE 1 PI142 PRINT 1 1143 ASSIGN 2144 SAVEVALUE 2 P2145 PRINT 2 2146 SAVEVALUE 3147 PRINT 3 3148 TERMINATE 1 -

ASSIGN STM

* -----* -------

******

-------------------------- PERMISSIBLE COLUMN FORMAT------------- PERMISSIBLE COLUMN FORMAT FOR LOGIC ATTRIBOR RELATIONAL MNEMONICS. IT IS STATED IN THEMANUALS ( E . G . P . 2 2 4 , OF REF NO.9} THAT WHEN A LOGICATTRIB OR RELATIONAL MNEMONIC I S NEEDED IN THE

GATEt AND LOGIC BLOCKS IT MUST BEGIN IN13 FOR GATE AND TEST BLOCKS AND INFOR LOGIC BLOCKS. '

AUX TEST, IN COLUMN COLUMN 14

149 LOGIC R 1150 LOGIC R 1151 LOGIC R 1152 LOGIC R 1153 LOGIC R154 TEST GE 12 12 1155 TEST GE 12 12 1156 TEST GE 12 12 111 VARIABLE VI11 STORAGE 20

TEST HOW LONG NUMBER CAN BE NOTE THE FORM OF NUMBERS PERMISSIBLE

JG STM,THESE NUM ARE NOT ALIN THE

RECOGNIZEDBY GPSS I I I AS THE NUM THEY DENOTE

157 t r a n s f e r 1 51 4 0158 TRANSFER 2 2 2 21 22

SEE SEC. B . 2: . c FOR RECOGNITION OF ABOVE NUMBERSINITIAL X10 1 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3INITIAL X15 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8

159 GENERATE 1 1 I 1 !RECOGNITION OF THESE LONG NUMBERS IN INITIAL STMTO BE PRINTED. SEE END OF SEC. B . 2 . C

160 PRINT 15 15161 PRINT 10 10162 TERMINATE 1

--------------------------- PERMISSIBLE AGUUMENTS FOR GENERATE STATEMENT

163 GENERATE164 TERMINATE165 GENERATE 2 1 10166 TERMINATE167 GENERATE 13168 TERMINATE

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 161: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

rfc--iS’'.

e:

169 GENERATE 10 2170 TERMINATE171 GENERATE 8 2172 TERMINATE173 GENERATE 12 3174 TERMINATE175 GENERATE VI 24176 TERMINATE177 GENERATE 10 3178 TERMINATE

10

24 2 4

**-*******

--------------------------- PSEUDO OPERATIONSIT IS STATED IN THE MANUALS THAT LOCATION El ELD MUST BE LEFT BLANK OF PSEUDO OPS ICT, ABS, ENDABS THIS STM IS NOT CORRECT. HOWEVER IF A STM LABEL IS USED IN THE LOC FIELD IT I S NOT ADDED TO THE LIST OF SYM. E . G . ACFV I S NOT IN LIST OF SYM SEC­TION B . 2 . B . HENCE MAY NOT BE REFERENCED

BLOCK

179 SEIZE 140 * SEIZE 6

* NOTE 8L0CK NUMBER OF ABOVE41 SEIZE 646 SEIZE 6179 SEIZE 646 SEIZE 53180 SEIZE 1 -

*START 2

SAVEX NR, VALUE NR,1 5

SAVEX NR, VALUE NR,15 2 0 3 7 7 5 7 4 0 1 9

SAVEX NR, VALUE NR,10 2 0 2 5 4 1 1 8 2 2 9

1 5 0

VALUE NR,

VALUE NR,

VALUE NR,

VALUE

VALUE

VALUE

IThe above six lines a re output resulting from the execution of

this program. This output contains the values of "savevalue" locations

initialized or indexed by the above program. Note, the numbers

recognized by GPSS a re not necessa r i ly the numbers mentioned in

the INITIAL cards.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

NR,

NR,

NR,

Page 162: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

*it,it

SIMULATE TEST SYNTAX ILLEGAL PROGRAM* EVERY^STATEMENT BELOW (EXCEPT THOSE SO NOTED ) IS SYNTACTICALLY AN ILLEGAL* THE READER MAY CONSULT APPENDIX A FOR CORRECT DEFINITIONS OF LEGAL* CONSTRUCTIONS, AND TO LEARN WHY THE FOLLOWING CONSTRUCTIONS ARE ILLEGAL

ORGI NATE* GPSS III WILL NOT RECOGNIZE THE ABOVE AS K STATEMENT, GPSS III MANUALS* STATE ORIGINATE IS A STATEMENT (E.G. PP.9 AND 5* OF REF NO.9)* IT IS STATED IN THE MANUAL REF NO. 10 , P.76 THAT BLANK CARDS ARE PERMISSIB BLANK CARD IS ILLEGAL (5) FOLLOWING CARD IS BLANKTESTGE 12,12,1 WHERE GE GOES* THE MNEMONIC GE CANNOT START IN COLUMN 12 THE MANUALS IMPLY THATTHIS* CONSTRUCTION IS NOT LEGAL. BUT THEY ALSO IMPLY THAT THE MNEMONIC CAN NOT* START IN COLUMN 14,-,18 WHERE IT WAS FOUND TO BE LEGALSE IZE 2 TEST IF BLANK SAACE IN OP FIELD* BLANKS ARE NOT PERMISSIBLE IN THE OPERATION

* IT IS STATED IN THE MANUALS THAT ANY CHARACTER IN COLUMN 1 WILL SUPRESS* BLOCK COUNT STATISTICS ,P. 46 OF REF NO. 9* WILL CAUSE THE ENTIRE PROGRAM TO BE REJECTED

*,it

ILLEGAL STATEMENT

*

it$ SEIZE 11 SEIZE 1 $ IN COLUMN 1

* ILLEGAL STATEMENT LABELS123A SEIZE 11 SEIZE 1ABCDEFGSEIZE 1ABCDESEIZE 2

TEST FORM OF STATEMENT LABELS PERMISSIBLE STATEMENT LABLES LABEL 7 CHARACTERS LONG LABEL IN COLUMN 7LEASE A£C12 LABELS CAN NOT b£ CHARACTER

Page 163: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

ILLEGAL VOID ARGUMENTSJOBTAPE VOID ARGUMENTTEST VOID TEST RELATIONAL MNEMONICSEIZE WHERE CAN VOID ARGUMENTS BESAVEVALUE ,1 WHERE CAN VOID ARGUMENTS BESAVEVALUE WHERE CAN VOID ARGUMENTS BERETURN WHERE CAN VOID ARGUMENTS BERELEASE WHERE CAN VOID ARGUMENTS BEQUEUE WHERE CAN VOID ARGUMENTS BEPREEMPT WHERE CAN VOID ARGUMENTS BELOOP WHERE CAN VOID ARGUMENTS BELEAVE WHERE CAN VOID ARGUMENTS BEGATHERGATE LS WHERE CAN VOID ARGUMENTS BECHANGE k, WHERE CAN VOID ARGUMENTS BECHANGE WHERE CAN VOID ARGUMENTS BEASSEMBLE WHERE CAN VOID ARGUMENTS BELINK WHERE CAN VOID ARGUMENTS BEASSIGN WHERE CAN VOID ARGUMENTS BEINDEX WHERE CAN VOID ARGUMENTS BE

ILLEGAL ARGUMENTSSPLITSPLITSPLITSPLITVARIABLEVARIABLEVARIABLEUNLINK

CAN C FIELD BE A SNASNA IN C FIELD

2,ABC,XI,XI3,ABC,X7 3,ABC,XI,15 A,ASS,X*2 $ABCDEF+1 1*AB123+13 LABEL IN COLUMN ONE1,1,ABC,ABC,ABC,ABC LABELS CAN NOT APPEAR IN C ANO 0 FIELDS MAY NOT USE REFERENCE LABELS IN C AND D FIELDS OF UNLINK STATEMENT INITIAL Q10,1 ANY SNAINITIAL 1,3 NO PREFIXINITIAL QIO,123^56709

Page 164: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

REFERENCE LABEL RECOGNIZED AS A AND NOT A» » »

INITIAL ABC INITIAL A-+12 SEIZE A+++B SEIZE A,,, SEIZE AS+S+ SEIZE SEIZE A++++ SEIZE A-+12 SEIZE ABC12* EXECUTE SEIZE QUEUE A-BC SEIZEASSS INITIAL XI2,1 LABEL ON INITIAL CARD GET REF* THE ABOVE TWO STM USE THE SAME CONSTRUCTION AS W$ABC OR N$ABC WHICH* ARE LEGAL . IT IS ILLEGAL TO USE THIS FORM WITH ANY OTHER STAN NUM ATTRIB* OTHER THAN W OR N.* THE ABOVE STM IS CORRECT BUT THE STM LABEL MAY NEVER BE REFERRENCED

X10,V1 V1,ABC A-+12 A+++B 1 1AS+S+ $A$.,+ SA++++ $A-+12 ABC12* ASSS SSABCDE P$ABC XI2,1

LABEL ON INITIAL CARD GET REF

**

TRANSFERTRANSFERTRANSFERTRANSFERTRANSFER

LABEL 7 CHARACTERS LONG,ABCDEFG ,ABC+1-1BOTH,ALL,3+ALL ADO IN REVESE BOTH,ALL,ALL+ALL ADD LABLES,A LL TEST IF BLANK IS PERMISSIBLE IN REFERENCE LABLE NOTE BLANK IS RECOGNIZED AS START OF COMMENT THEREFORE THE LABEL RECOGNIZE IS SIMPLY A WHICH DOES NOT OCCURE IN THIS PROGRAM A LL SEIZE 2 THIS STM IS CORRECT - IT IS USED TO SHOW ABOVE IS INCORRECT JOBTAPE SYS0U2,Q10,1,1 SNA IN 2 ARGINDEX QIO,1 STANDARD NUMBRICAL ATTRIBUTE PERRIMSIBLETRANSFER .UADVANCE 1,QIOADVANCE 1,RN1ASSIGN 1,NUADVANCE *1266 FUNCTION RN1,C1 12 30 COMMENTS ON DATA CARO* THE ONLY CARD ON WHICH COMMENTS ARE NOT PERMITTED* FUNCTION NUMBER IN COLUMN ONE NOT LEGAL

STANDART A NUMERICAL ATTRIBUTE PERMISSIBLE - NO RN1 PERMISSIBLE ~ NOSTANDARD LOGICAL ATTRIBUTE PERMISSIBLE - NO INDIRECT ADDRESS PERMISSIBLE - NO

Page 165: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

2 FUNCTION RN1,CAABC $ABC(* DOLLAR SIGN IN FRONT OF LABEL NOT PERMISSIBLE IN FNC DATA CARDS 3 FUNCTION RN1,C2$A1111 $ABC(5 FUNCTION RN1,C**12 30 1 201A1TRANSFER .1111111111 mkkkk, 123ALLLLLL, PPPPPU10123^5* IS COLUMN 72 USEDTRANSFER .11111111111111111111111111 111 11 111 11 111 1111,ABC,ABCDE* CONTI NOUS ARGUMENT THROUGH COLUMN 72 IS NOT PERMISSIBLESTART VI END

Page 166: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

Com parison of actual labo ra to ry events and t im es of occurence with those simulated

___________________ p.m.a. m.

OO

3.3"CD—iCD■oOQ.C£o'3-o— io

CDQ.

TIMS (hours) 8 8.5 9 9.5 10 10.5 11 ' 11.5 12 12.5 1 1.5 2 2. 5 3 3.5 4 4 ,5 5* * *

Number of samples a 0 22 41 53 65 97 124 129 134 13y 141 142 .144 152 157 164 166 166

given accession

number by spinners s 0 22 40 53 65 97 126 131 134 137 141 141 142 152 159 163 166 166

Number of samples 0 11 17 18 21 40 53 53 54 54 54 54 54 54 54 54 54 54 54

logged by nonelecto-

lyte spinner 8 0 11 17 19 22 41 54 54 54 54 54 54 54 54 54 54 54 54 54

Number of samples 0 11 24 35 44 55 71 76 80 85 87 88 90 98 103 110 112 112

logged by electro­

lyte spinner s 0 11 23 34 43 56 72 77 80 83 87 87 88 98 105 109 112 112

OC-oCD

(/>V)o3

Number of samples 0 4 29 43 52 65 85 106 117 117 121 121 132 141 155 165-166 166

spun and put in

ready rack s 0 4 29 45 52 64 84 103 117 117 121 121 131 142 155 163 163 166

UiIn

APPENDIX C

Page 167: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

GLUCCSaTIME(hours) *8 8. 5 9 9. 5 10 10,_5___11 11.5 12 12. 5 1 1.5 2 2.5 3 3.5 4 4.5 5

5ENumber of glucote a 0 0 15 20 27 45 65 65 71 71 71 74 75 75 75 80 84 84

samples given accession

number by glucose

technologist s 0 0 15 22 25 43 66 66 70 71 72 73 75 75 75 80 84 84

14 Nurrber of glucose a 0 0 0 0 15 32 43 64 66 68 71 72 72 72 72 80 80 84

in incubating rack s 0 0 0 0 14 31 43 66 66 70 72 72 72 72 72 80 80 84

16 Number of glucose 0 0 0 0 0 0 0 0 35 51 51 54 58 65 70 73 75 81 62

samples that have

been read s 0 0 0 0 0 0 0 0 40 51 51 52 58 64 69 72 74 80 81

UREA _ _ _ _ _Number of samples . 0 14 21 40 43 59 90 96 100 101 102 106 108 109 110 114 114 114

at urea bench s 0 14 24 41 44 59 90 97 100 102 103 105 108 109 110 113 113 1139

Number of urea 0 7 21 37 43 58 69 82 98 101 104 106 108 109 110 114 114 114

samples givenM

accession number s 0 5 21 38 43 56 67 85 99 102 103 105 108 10? 110 113 113 113 &

Page 168: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

a. m. p . m .

13

12

15

T7ME(hours) *8 8. 5 9 9. 5 10 10. 5 11 H . 5 12 12.5 1 1.5 2 2.5 3 3.5 4 4 .5 5

Number of samples a 0 15 57 74 110 120 170 172 200 214 250 270 280 282 285 205 285 285

and standards

entered hydrolysis s 0 16 58 78 120 126 172 172 206 214 258 274 280 282 284 290 290 290

TOTAL PROTEIN{ ALBUfoEft, GLOBULINNunber of samples a 0 0 0 0 23 28 34 41 43 43 43 43 43 43 43 43 43 43

reached total prctein,

albumen globulin

bench s 0 0 0 0 24 28 35 40 42 42 42 42 42 42 42 42 42 42

0 0 0 4 24 29 38 43 43 43 43 43 43 43 43 43 43Number total

protsins waiting

to be read s 0 0 0 0 4 24 30 40 42 42 42 42 42 42 42 42 42 42

20 Number of total a 0 0 0 0 0 0 0 0 0 0 0 0 .82 84 84 84

protein, albumon

globulin read including

duplicates s O O O 0 0 0 0 0 0 0 0 0 0 0 83 84 84 84

t-*Ulvj

Page 169: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

Reproduced

with perm

ission of the

copyright ow

ner. Further

reproduction prohibited

without

permission.

a .m . p.m.TIMe (hours) *8 8.5 9 9. 5 10 10. 5 11 l l . 5 lZ 12.5 1~ 1. b Z 275 3 3 , 5 T 4.S b~

ELECTROLYTES: SODIUM,POT ASSIUM, Cl LOR IDE B I C A R B O N A T E ____________

8 Number at sodium, a 0 0 12 24 32 45 50 57 62 62 65 66 75 80 83 83 84 87

potassium chlorideI

bench s 0 0 13 25 33 45 48 58 62 62 65 65 74 80 83 84 84 87i

17 Number read at 0 0 0 30 64 72 92 114 124 125 130 130 134 146 166 168 168 174 174

sodium and potassiumi

(one term for Nh, one

forK ) a 0 0 0 30 66 74 90 112 124 124 130 130 132 144 164 168 168 174 174

V

18 Number read at a 0 0 0 26 52 80 94 114 124 124 124 130 134 160 166 168 168 174

chloride test including

duplicates s 0 0 0 27 53 79 96 115 124 124 130 130 134 159 166 168 168 174

10 Number of samples 0 0 5 22 32 40 50 57 62 62 65 66 70 80 83 83 84 87 87

at bicarbonate

bench s 0 0 2 22 33 41 48 58 62 62 65 65 69 80 83 84 84 87 87 £00

Page 170: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

a# m. p. m,

■oCD

(/)(/)O3o

CDOO-ov<cq'

19

TIME (hours) *8 8,5 9 9.5 10 10. 3 11 11.5 12 12.5 1 1.5 2 2.5 3 3.5 4 4.5 5

Number of samples a 0 0 0 4 8 15 20 25 34 40 45 52 60 65 73 77 83 86

read at bicarbonate

test s 0 14 21 25 33 39 47 54 62 67 74 81 84 87

3-3CD-5 —iCDTDOQ.3ao3*0o

CDQ.

■oCD

’(‘Time (hours), topline, refers to the time the count of events was taken,

’•“('See Figure 1 for numbers in this column.

’(‘•‘•'Items in this column are descriptions of the number event**,

a refers to the number of events observed at the time noted,

s refers to the number of events determined by simulation.

C/) <f)

Page 171: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

161

If£;‘K”t;,

1

58

APPENDIX D GPSS MODEL OF CLINICAL LABORATORY

In this appendix is presented a version of the GPSS program that was

used to im plem ent a model of the Clinical C hem istry Laboratory of Yale-

New Haven Hospital on a digital com puter. The program is well

documented. The program may be used to study fu rth er the sim ulation

techniques presented in Chapter IV; or to study the organisation and p ro ­

cedures of a clin ical chem istry laboratory as was briefly discussed in

Appendix C; o r to be used as a reference of m ore conventional exam ples

of the syntax of GPSS than were presented in Appendix B. The form of a ll

of the constructions used in the program given in th is section have been

defined in Chapter III and Appendix A.

The version of the program given in this appendix im plem ents a model

of the clin ical laboratory for a particu lar day. The re su lts of the execution

of this program w ere used to give confidence in the validity of the model

(see Section IV. 14). The model generates (GENERATE section of program )

the same inputs as w ere recorded fo r a day in the laborato ry . At every

half-hour of sim ulation tim e the program will cause a sta tus of the model

to be given. These s ta tis tic s were com pared with s ta tis tic s taken of the

actual laboratory a t corresponding tim es. The re su lts of th is com parison

are presented in TableIV-1.This program was also used to observe the

response of a m odel of a p a rticu lar data processing configuration to

conditions prevailing in the labora to ry for a particu lar day.

An overall flow chart of the model of the labora to ry is depicted in

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 172: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

Figure D - l . The program is organized into sections corresponding to

the blocks of F igure D -l.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 173: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

Speclm on*Arrive

T in e S tom p

W hole B lood C e n tr ifu g e

• • Uric AcidB icarb P ro te inChlorideU reo Glucose

D a ta

P r o c e s s in g

S y s te m

IFigure D -l Flow chart of a simulation of the clin ical

chem istry labora to ry .

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 174: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

SIMULATE HOSPITAL THE FOLLOWING CAROS ARE COMMENTSPARAMETER PARAMETER PARAMETER PARAMETER PARAMETER PARAMETER PARAMETER PARAMETER PARAMETER PARAMETER PARAMETER QUEUE QUEUE QUEUE QUEUE QUEUE QUEUE QUEUE QUEUE QUEUE QUEUE QUEUE QUEUE QUEUE LOGIC LOGIC LOGIC LOGIC LOGIC LOGIC LOGIC LOGIC LOGIC LOGIC LOGIC LOGIC

IDENTIFYING THE VARIOUS ENTITIES USED

SWITCHSWITCHSWITCHSWITCHSWITCHSWITCHSWITCHSWITCHSWITCHSWITCHSWITCHSWITCH

12 NUMBER OF TUBES WITH SAMPLE13 NUMBER OF STORAGE READY RACK OR NO. OF AUTOCLAVE RACK14 NO OF UREA TEC SEIZED BY SET15 NO OF TECHNITION LOGING FOR BUN OR GLU TEST16 EMERGENCY IF EQUAL TO FIVE17 NO. OF SPINNER TEC, NO OF CENT SPIN18 NO. OF WAITING RACK WAITING TO ENTER CENT.20 a 25 IF SAMP HAS BEEN PROCESSED BY GLU TEC21 TIME FOR COMPUTER TO COMPUTE RESULT OF TEST ON SAMP22 « 5 IF CONTROL FOR GLU 6 FOR UREA, 7 IF STANOARD FOR UR24 NO OF LOGIC SWITCH PREVENTING SAMP ENTER SPINNING CENT2 WHOLE BLOOD LINE AT PUNCH BENCH3 SPINNER TO PROCESS - NON ELEC4 SPINNER TO PROCESS - ELECTROLYTE5 SAMP WAIT FOR COMPUTER TO COMPUTE RESULTS OF TEST6 SAMP WAIT FOR COMPUTER TO PRINT SAMP REPORT7 COMPUTER QUE WAIT TO PRINT WARD REPORT8 COMPUTER QUE WAIT TO PRINT SECTION REPORT9 DOCTOR REQUEST FOR PARTIAL REPORT QUEUE12 MICROTUBES13 WHOLE BLOOD LINE AT BENCH14 GLUCOSE LINE BEFORE PIPETING15 UREA LINE BEFORE LOGGED IN16 UREA WAITING TO BE PROCESSED3 1ST. SAMP GETS LOG REMAINING MUST SEIZE SAME TEC.4 LET NEXT SAMP SEIZE TEC ABOVE5 WAIT TO INCUBATE AT GLU6 LET REST OF SET SEIZE SAME TEC FOR UREA LOG11 FIRST OF SET SEIZE TEC FOR UREA LOG12 FIRST OF SET SEIZE TEC FOR UREA PIPETING13 LET REST OF SET SEIZE SAME TEC FOR UREA PIPETING14 FIRST OF SET SEIZE UREA TEC FOR ALKALINIZATI ON15 LET REST OF SET SEIZE SAME TEC FOR ALKALINIZATI ON16 FIRST OF SET SEIZE UREA TEC TO REMOVE FROM WHEEL17 LET REST OF SET SEIZE SAME TEC FOR REMOVAL FROM WHEEL18 FIRST OF SET SEIZE TEC FOR UREA READ

Page 175: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

mmmwww.

■oCD

c/j(/)

oo■Ocq‘

3.3CD—iCD■ooQ.CSo3"Oo

CDQ.

OC■oCD

C/5C/5o'o

* LOGIC SWITCH 19 LET REST OF SET SEIZE SAME TEC FOR UREA READ* LOGIC SWITCH 20 LET FIRST URICACID SAMP OF BATCH TEST FOR TOO LONG WAIT* LOGIC SWITCH 21 MAKE SURE FLAME PHOTOMETER IS CALIBRATED FOR NA K* LOGIC SWITCH 22 MAKE SURE GLU COLORMETER IS CALIBRATED FOR BATCH* LOGIC SWITCH 2? MAKE TOT PROT TEC PREPARE SODIUM SULFATE* LOGIC SWITCH 24 GLU MUST MAKE STANDARDS WITH EACH INCUBATION* LOGIC SWITCH 25 UREA MUST MAKE CONTROLS WITH EACH WHEEL* LOGIC SWITCH 26 PREVENT SAMP FROM ENTERING SPINNING CENT -NON ELEC★ LOGIC SWITCH 27 PREVENT SAMP FROM ENTERING SPINNING CENT -ELEC* SAVEVALUE 1 NO. OF TEC LOGGING★ SAVEVALUE 2 NUMBER OF INCUBATING RACK* SAVEVALUE 3 PROPER READY RACK FOR NON ELEC SPIN* SAVEVALUE k PROPER READY RACK FOR ELEC SPIN* SAVEVALUE 5 NO. OF UREA TEC SEIZED FOR LOG SETit SAVEVALUE 6 NO, OF UREA TEC SEIZED FOR PIPETING SETit SAVEVALUE 7 NO. OR UREA TEC SEIZED FOR A L K A L 1N 1Z A T 1ON SETit SAVEVALUE 8 NO, OF UREA TEC SEIZED FOR REMOVAL FROM WHEELit SAVEVALUE 9 NO. OF UREA TEC SEIZED FOR READ SETit SAVEVALUE 10 PRIORITY OF SAMPLEit SAVEVALUE 11 PRIORITY OF SAMPLEit SAVEVALUE 12 „N0. OF SAMP COMPUTER HANDELS TODAYit SAVEVALUE 13 -0 WHEN EVER STANDARDS MUST BE MAKE FOR GLU TESTit SAVEVALUE 14 KEEP TRACK OF NUMBER TO BE PROCESSED BY NA K TECit SAVEVALUE 15 KEEP TRACK OF NO. OF URIC ACID SAMPit SAVEVALUE 16 NUMBER OF ELECTROLITES LOGGED IN BY SPINNERit STORAGE 2 TIME PUNCH TRAY - UNLIMITEDit STORAGE 5-14 READY RACK 13 CAP. FOR ELEC SPINit STORAGE 15 MAGNETIC STIRRER FOR GLUCOSE - CAP. 8it STORAGE 16 CENTRIFUGE FOR GLU - CAP. 8it STORAGE 17 WAITING PLACE FOR CENTRIFUGE FOR GLU - UNLIMITEDit STORAGE 18,19.20 GLU RACK WAITING TO INCUBATE CAP. 114it STORAGE 29 AUTOCLAVE FOR GLUCOSEit STORAGE 30 WAITING RACK TO PIPET UREA - UNLIMITEDit STORAGE 31 UREA WHEEL N0.1- CAPACITY 30* STORAGE 32 UREA WHEEL NO.2- CAPACITY 30* STORAGE 33 WAITING RACK FOR UREA WHEEL FREE - UNLIMITEDit STORAGE 34 NESSLER BOTTLE BOX FOR UREA - UNLIMITED* STORAGE 35-44 READY RACK 13 CAP. FOR NON ELEC SPIN

Page 176: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

■o0>—i3&(j)o'3o

CDOO-ov<(Q

3CD

3-3CDCD■oOQ.Cao3*0o

CDQ_

■aCD

C/) (f)

* STORAGE 45 URIC ACIO RACK AT URIC ACID BENCHit STORAGE 46 URIC ACID REACTION RACKit STORAGE 47 CHLORIDE RACK AT BENCH* STORAGE 48 NA K CHLORIDE COLLECTING RACKit STORAGE 49 RACK AT NA K BENCHit STORAGE 50 CHLORIDOMETER - CAPACITY 1it STORAGE 51 CHLORIDE WAITING FOR CHLORIDOMETER - CAPACITY 1it STORAGE 52 WAITING RACK FOR CENT OF SPINNER-NON ELECTit STORAGE 5 ? WAITING RACK FOR CENT OF S P 1NNER~ELECT* STORAGE 54 CHLORID WAITING RACK FOR MACHINE TO EMPTYit STORAGE 55 POSITION IN READY RACK FOR BICARBONATEit STORAGE 56 WAIT RACK FOR POSITION IN AIRATOR* STORAGE 57 6ICARBINATE AIRATORit STORAGE 58 POSITION IN READY RACK FOR PROT ALBUMIN GLOBIUMit STORAGE 59 TOTAL P R O T 1EN ALBUMIN GLOBIUM RACK AT BINCHit STORAGE 60 TOT PROT ALBUMIN GLOBIUM FILTER RACK* STORAGE 61 SOOIUM POTASIUM RACK AT BENCH* STORAGE 62 URIC ACID CENTit FACILITY 1 TEC WHO TIME PUNCHESit FACILITY 2 TIME PUNCH MACHINEit FACILITY 3 NON ELEC SPINNERit FACILITY 4 ELEC SPINNERit FACILITY 5 CENTRIFUGE FOR SPINNERit FACILITY 7 GLU TEC. NORMALLY INCUBATEit FACILITY 8 GLU TEC, NORMALLY PIPETINGit FACILITY 9 UREA TEC, NORMALLY FOR LOGGINGit FACILITY 10 UREA TEC. NORMALLY OFR PIPETINGit FACILITY 11 COLORIMETER FOR GLUCOSEit FACILITY 12 CENT FOR URIC ACIO -it FACILITY 13 CHLORIDE TEC* FACILITY 14 SOOIUM POTASSIUM TEC* FACILITY 15 COMPUTER* FACILITY 16 BICARBONATE TEC WHO TITRATES AND REAOSit FACILITY 17 TOT PROT TEC ANO ALBUMIN GLOBIUM TECit FACILITY 18 BICARBONATE READ OUT MACHINEit FACILITY 19 COLORIMETER FOR URIC ACID AND TOT PROT A Git FACILITY 20 BICARBONATE TEC WHO PIPETS ANO BRINGS TO BENCH

Page 177: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

Reproduced

with perm

ission of the

copyright ow

ner. Further

reproduction prohibited

without

permission.

it USER CHAIN 1it USER CHAIN 2it USER CHAIN 3it USER CHAINit USER CHAIN 5it USER CHAIN 6it USER CHAIN 7it USER CHAIN 8it USER CHAIN 9it USER CHAIN 10it USER CHAIN 11it USER CHAIN 12it VARIABLE 2*********itititit

SAMPLES IN GLU SAKERSAMP WAIT TO BE TAKEN TO SPIN FOOM TIME PUNCHSAMP IN NON ELEC CENT WAITING TO SPINSAMP IN ELEC CENT WAITING TO SPINURIC ACID WAITING TO BE PROCESSEDWAIT FOR COMPUTER FREE OR DOING A LOS PRIORITY JOBSAMP WAIT TO GO TO WHOLE BLD BENCH FROM TIME PUNCHNON ELEC SAMP WAIT IN READY RACT TO BE BROUGHT TO BENCHELEC SAMP WAIT IN READY RACT TO BE BROUGHT TO BENCHWAITING PLACE FOR TOT PROT A G TO BE READ ON MACHINEWAITING FOR UREA WHEEL FREEALBIUM GOBLIUM WAITING TO BE READTEST FOR GLU OR BUNUNIT OF TIME ONE TENTH OF A MINUTE

GENERATE BLOOD SAMPLESTHE FOLLOWING SECTION GENERATES ALL BIOLOGICAL SAMPLES THAT ARRIVED FOR A PARTICULAR DAY. THIS DAY WAS DISCUSSED IN THE SECTION TITLED -VALIDITY OF MODEL* OF CHAPTER IV. EACH GENERATE STATEMENT CREATES A N-TUPLE REPRESENTING A BIOLOGICAL SAMPLE. THE FIRST TWO ARGUMENTS OF ALL THE GENERATE STATMENTS RES ULT IN AN INTERVAL TIME BETWEEN SAMPLES GENREATEO OF i'.ERO. THE THIRD ARGUMENT CORRESPONDS TO THE ARRIVAL TIME OF THE SAMPLE. THIS IS IN TENTH OF A MINUTE STARTING AT MIDNIGHT E.G. *»900 WOULD CORRESPOND TO 8-10 AM. THE NEXT ARGUMENT IS THE MUMBER OF N-TUPLES GENERATED BY THIS STATEMENT, THE NEXT ARGUMENT IS TH* PRIORITY OF THE N-TUPLE, THE NEXT IS THE NUMBER OF PARAMETERS ASSOCIATED WITH* THIS INSTRUCTION.* FOLLOWING EACH GENERATE STATMENT IS A TRANSFER STATMENT. THIS TRANSFERS TO* A ROUTINE BELOW THAT ASSIGNS THE CORRECT VALUES TO THE SCALARS OF THE N-TUPLE* GENERATED.*LOC NAME A.B.C.D.E COMMENTS0.0.^900,5,5,30 8-1OAM, 5 SAMP ARV, PRIORITY 5, 30 PARAM2,K|8 INITIAL VALUE OF INCUBATING RACK FOR GLU3,K5 INITIAL NO. OF READY RACK FOR NON-ELEC

INITIAL NO. OF READY RACK FOR ELEC

NAME GENERATE SAVEVALUE SAVEVALUE SAVEVALUE

167

Page 178: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

168

o © o o o o O O © o O O O O o o O OON CO co CO r r \ < o CO «*N CO CO CO co CO c*N CO CCN CO COat aa aa aa «* aa aa aa aa aa aa aa aa aa aa aa •

m u\ un UN UN UN UN UN UN UN UN UN UN UN UN UN UN UNat aa aa aa aa aa aa aa aa aa aa aa aa aa •a aa aa

«N SO —a —• —• CM a— a— a — co CM CM CM ON - 3 f*N CM - 3aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa

o o U\ o o o o O o o o o o o O o o om un «M UN UN UN UN o o UN UN UN UN o UN UN CM oo n on ON GNU) ONI— ON ON o o ON ON ON o n u i o e e on ON . ON - 3-3 - 3 -3 -a- © - a - l u - 3 o 4 ,o u \ 3 u n © - 3 - 3 - 3 -3" © UNU4- - 3 - 3 UNaJ «|jj ^ n oin «k||j «u «X •ktf «|jj ^3

^ U I O 3 O U l O J O < O < O t f O J O 0 . i 3 < O 0 . O 3 O J O a - O h O 3 O Q f O J O U J • > 3 * < 9 * > 3 *3 * 3 * 3 m « i *3 « u j » | - « o ^ C 9 * 3 * ( 9 * » 3

vO «o -© * o * o •*© « o *»© «o ■*© «o »o »Q *o «o •*© *0 »0 ftO *

U1SO fU loeuJtfbJtfU ltfbJtf b lf iC U tfU lflfU Jtfb ltfU JtfU itfU JtfU ltfb ltfU tfU tf U _JLlJ»—UIJ—Ltll—LUJ—UJH-UJI—UJ|—UJ|—UJ|—UJJ—UJ»—LUI—UJ|—Ul»—UJI—UJk—LU|—UJI— UJ < U .< U .< U .< lL < ti.< U .< U .< U .< b .< U .< lL < U .< U .< U .< lL < U .< U .< U .< U

U)OCV)oeV)OCV)(tV)tfV)tfV>tt(Afi:t/>oeV>0£(/>«Ma£(/>tf MU J Z U Z U I Z U Z U J Z U I Z l i J Z U Z l i l Z U Z U I Z b J Z b l Z U Z U Z h l Z U l Z U J Z U Z X Z < Z < Z < Z < Z < Z < Z < Z < Z < Z < Z < Z < Z < Z < Z < Z < Z < Z << a e u t o c u i t f w o e u i t f u t f t u f l e u a e u i t f h i t f u i a : i i i t f b i o e u i t f b j t f u t f u t t f u t f i u a f

H- O H=-U> H O H O H O H O K O h O h C lh O h O H O H O K O K W H O I—

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

W H o » -a

Page 179: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

Reproduced

with perm

ission of the

copyright ow

ner. Further

reproduction prohibited

without

permission.

GENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATE

0,0,5400,1,GUE 5,30 9.000,0,5400,2,ELE 5,30 9.000,0,5400,1,TPGUE 5,30 9.000,0,5400,1,TPUE 5,300,0,5600,2,GUR 5,30 9.200,0,5600,1,ELE 5,30 9.200,0,5600,1,TPA 5,30 9.200,0,5600,1 ,OTHER 5,30 P. 200,0,5860,7,GUE 5,30 9.460,0,6300,9,UEL 5,30 9.590.0,5990,4,ALL 5,30 9.590,0,5990,2,ELE 5,30 9.590,0,5900,3,TPUE 5,30 9.50

!f?duE°°’2 5,30 9500,0,5900,1,ALL 5,30 9.500,0,5900,1,ELE 5,30 9.500,0,5950,2,GLU0 5,30 9.550,0.5950,1,UAG 5,30 9.550,0,5950,1 5,30 9.55

- WB

169

Page 180: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

Reproduced

with perm

ission of the

copyright ow

ner. Further

reproduction prohibited

without

permission.

TRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATE

,GURO0,0,5950,A,5,30 ,TPA0,0,5950,10,5,30 ,OTHER0,0,5840,1,5,30 ,GUR0,0,5840,1,5,30,GLU0,0,5850,1,5,30,UEL0 , 0 ,6000, 2, 5,30,TPGUE0,0,6150,3,5,30 , GLU0,0,6240,2,5,30,UEL0,0,6240,3,5,30,GUE0^0,6240,1,5,306,0,6240,1,5,30,ALL0,0,6240,1,5,30,GLU00,0,6240,3,5,30,UAU0,0,6240,5,5,30,TPA0,0,6240,2,5,30,GUE0,0,6240,8,5,30 , OTHER0,0,6240,3,5,30,UEL0,0,6240,5,5,30,GUR0,0,6240,1,5,30

9.559.559.44 - WB9.44 - WB9.45 10.00

10.15- WB10.2410.2410.2410.2410.2410.2410.2410.24 GO WITH 3 ABOUE10.2410.24 GO WITH 2 ABOVE10.24- WB 10.24 - WB

Page 181: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

171

CO 00 CO CO 00 CO CO CO 003 : 3 3 3 3 3 3 3 3

1 1 I 1 1 1 1 1 1O o o O vO --- in VOon on* m cr\ y CM CM CM CM »■ W» u > U \ u \ m O -3* -3*

• Mi • • • •* Oh • • • -3- -3- -3r -3* -3- cn •—o o v V CM CM CM CM CM •— •V • • • • •t •*w— •— k— v— *■* »•— CM CM

O o o o o O o o o o o o o o O o o o oCA m o n c r \ (n c n Cf\ o n m m m m m m m m m o n o n«k «k M •» •* «% • •k a «k «k

m v n i n t ft m i n m i n i n i n i n i n i n m i n i n i n i n i n

CO CM m -a* *— C M * — T - ~ 0 \

g g § I 3 5 § * § I H I | g | | S S o S s is S S £ S '= c w - g o 3 o « 0*1 O*

K U C f b J Q ' U Q i U t f t U Q f U O f U J Q f U t f U t O f U l C f U J O f U J Q £ U a C U t f U O £ U l Q £ U J o ; b J t f U li U J I — U J l — UJJ— U J I — U J » — LU»— U 1 J — l l J J — U l t - U J J — U J J — L U F - U J H - U J » — U J » — U- »W- LU»— IjJ | — UJ H -

V ) Q ; V ) o e V ) o e M Q f ( / ) o ; M t f V ) Q £ V ) 0 £ M t f (A o cZUIZblZUZl t lZUZUZUZUlZUZblZUZUZUZUZUZUJZUJZUZ 111'

k; < 2 < 2 < Z < Z < H < Z < 2 < Z < Z < Z < Z < 2 < Z < 2 < 2 < 2 < Z < 2 < Ztf U Q fU tfU jQ fh ie e u itfU tfu jtfU tfu itfU c fu tfb itfb ii tu jtf u o c i u ^ u t f u a : ui■1: l - O t - O H O h - O I - O l - U H O t- O H tf t - O t- O H O H O l- O h - O H O l- O I - O t- O

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 182: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

ALLTPGUEGUEUELELETPUEUAGUEUAUET

TRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERGENERATETRANSFERASSIGNASSIGNASSIGNASSIGNASSIGNTRANSFERASSIGNTRANSFERASSIGNTRANSFERASSIGNASSIGN

,ELE0,0,8740,1,5,30 ,UEL 2,340,0,8920,1,5,30,GUE 2,520,0,8920,1,5,30,TPUAU 2,520,0,8920,2,5,30,UAC 2,520,0,8920,2,5,30,TPUA 2,520,0,8920,1,5,30 ,OTHER 2,520,0,9120,1,5,30 ,OTHER 3,120,0^9120,1,5,30 3.120.0,9120,4,5,30,GLU 3 . U0,0,9400,4,5,30,GLU 3.400,0^9520,2,5,30 3,520,0,9520,1,5,30,TPE 3,525,1 URIC ACID7,1 TOT. PROT ABIUM AND GLOBIUM1,1 GLU2,1 UREA3,1 ELECTROLITE,ENTER7,1 TOT. PROT ABIUM AND GLOBIUM,UEL5,1 URIC ACID,GUE5,1 URIC ACID7,1 TOT. PROT ABIUM AND GLOBIUM

Page 183: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

TRANSFER ,UEL4,1GURO ASSIGNTRANSFER ,GUR4,1UREO ASSIGNTRANSFER ,URETPGU ASSIGN 7,1GUR ASSIGN 1,1URE ASSIGN 2,1TRANSFER .ENTER4,1GLUO ASSIGNGLU ASSIGN 1,1TRANSFER ,ENTERUAGU ASSIGN 5,1TRANSFER ,GURTPE ASSIGN 3,1TPA ASSIGN 7,1TRANSFER .ENTER4,1OTHER ASSIGNTRANSFER ,ENTERUAG ASSIGN 5,1TRANSFER ,GLUTPUAU ASSIGN 7,1UAU ASSIGN 5,1TRANSFER ,URETPUA ASSIGN 7,1UAC ASSIGN 5,1TRANSFER ,ENTERENTER TRANSFER ,ENTER+1ASU12 ASSIGN 12,FN60

TIME PUNCHEDTIMPU ENTER 2PRIORITY if,BUFFERSEIZE 1SEIZE 2

LEAVE 2

OTHER TEST REQOTHER TEST REQTOT, PROT ABIUM ANO GLOBIUMGLUUREAOTHER TEST REQ GLUURIC ACID ELECTROLITETOT, PROT ABIUM AND GLOBIUMOTHER TEST REQUESTEDURIC ACIDTOT. PROT A G URIC ACIDTOT, PROT A G URIC ACID

NUMBER OF TUBES

WAIT IN TRAY TO BE TIME PUNCHED WAIT FOR ALL SAMP THIS DELIVERY TECHNITION THAT TIME PUNCHES TIME PUNCHLEAVE TRAY AND BE PUNCHEO

Page 184: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

AOVANCE RELEASE RELEASE TEST E PRIORITY TRANSFER SEItZ SEIZE ASSIGN TRANSFER SEIZE ASSIGN TRANSFER SEIZE ASSIGN TRANSFER SEIZE ASSIGN TRANSFER SEIZE ASSIGN TRANSFER LINK2 LINK WBLD1 AOVANCE RELEASE UNLINK WBLD QUEUEPRIORITY PRIORITY TRANSFER SPINR TEST LE SPIN2 TEST E ASSIGN ASSIGN ASSIGN*

TRANSFER SPIN1 ASSIGN

212V1,KO,SPINR 0,BUFFERALL,SEI1Z,LINK2,315,1,WBLD1715.7 .WBLD1815.8 ,WBLD1 9

1015,10 ,WBLD1 7,FIFO 10 P157,WBLD,ALL 2 k3,BUFFER ,WBLDBV10,K6600,SPIN1P3,K0,SPIN1

Z k \ z 6

,SEIZ1-1 17, b

TIME IT TAKES TO PUNCH AND STORERELEASE TEC. THAT TIME PUNCHESRELEASE TIME PUNCHTEST TO SEE IF GO TO SPINNERLET ANY OTHER IN SYSTEM SEIZE TEC<®SSEIZE ANY ONE OF 5 TECTEC WHO TIME PUNCHESPAR 15 « NO. OF TEC SEIZEDGLU TEC NORMALLY INCUBATE PAR 15 * NO. OF TEC SEIZEDGLU TEC NORMALLY PIPETING PAR t * o NO. OF TEC SEIZEDUREA TEC NORMALLY FOR LOGGING PAR 15 » NO. OF TEC SEIZEDUREA TEC NORMALLY FOR PIPETING PAR 15 « NO. OF TEC SEIZEDWAIT HERE TIL TEC FREE TIME TO BRING TO WB BENCH TEC SEIZEDALL IN LINK ABOVE GO TO WB BENCH WHOLE FLOOD WAIT TO BE PROCESSEDTREAT AS SETGO TO WHOLE BLOOD BENCHIF CLOCK TIME LESS THAN 11 2 SPITEST IF ELECROLYTESNO. OF NON ELECT SPINNERNO. OF WAIT RACK NONELEC CENTNO. OF SWITCH PREVNETING SAMP FROMENTERING SPINNING CENTNO. OF ELECT SPINNER

Page 185: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

ASSIGN 18,53ASSIGN 24,27PRIORITY 0,BUFFERTRANSFER ALL,SEIZ!,LINK1SEIZ1 SEIZE 1ASSIGN 15,1TRANSFER ,QUP16SEIZE 3ASSIGN 15,3TRANSFER .QUP16hSEIZEASSIGN 15,^TRANSFER ,QUP16LINK1 LINK 2,FIFOQUP16 ADVANCE 2UNLINK 2,QUP17,ALLRELEASE P15QUP17 QUEUE P17ASSIGN 15,P17PRIORITY k** SAMPLE GETS SPINEOic* NOTE PARAMETER 17 IS EITHER 3 FORPRIORITY 3,BUFFERSEIZE P17DEPART P17ADVANCE FN72TEST E P3,K1,N0TE+1NOTE SAVEVALUE 16+, 1TEST G V2,K0,N0Bri1ADVANCE 5SPLIT 1.WBPRP11,K0,BABYN0BG1 TEST ETRANSFER BQTH,INCEN,INUSEINCEN GATE LR ?2k

TRANSFER B0TH,ENTP7,INUS1

NO. OF WAIT RACK ELEC CENTNO. OF SWITCH PREVNETING SAMP FROMLET ANY OTHER IN SYSTEM SEIZE TEC@SSEIZE ANY ONE OF 3 TECTEC WHO TIME PUNCHESPAR 15 - NO. OF TEC SEIZEONON ELEC SPINNERPAR 15 » NO. OF TEC SEIZEDELECTROLYTE SPINNER PAR 15 - NO. OF TEC SEIZEDWAIT HERE TIL TEC FREE TIME TO BRING TO SPINNING BENCH TAKE ALL WAITING IN LINK TO BENCH TEC SEIZEDENTER EITHER QUEUE NO. k OF 3 PAR 15« NO OF SPIN TEC

NONELEC OR A FOR ELEC TREAT AS SETSEIZE EITHER ELEC OF NON ELEC TECEITHER ELEC OR NONELEC QUETIME TO MAKE SEPARATE TUBES, LOG INKEEP TRACK OF HOW MANY ELEC ARE LOGGEDNUMBER OF ELEC LOGGEDFAIL GO TO NO BUN OR GLUYES, THAN TIME TO MAKE WB TUBESEND ONE TUBE TO WHOLE BLOODTEST FAIL GO TO MICROTUBEIS CENTRIFUGE IN USEIF CENT IS SPINNING OON0T ALLOW SAMP ENTE WILL SAMP FIT IN CENT

175

Page 186: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

ENTP7 ENTER ADVANCE GATE SF TEST GE UNLINK TRANSFER NOELS ASSIGN TRANSFER UNLIN UNLINK SPIN RELEASE LOGICS FULL ADVANCE PRIORITY SEIZE LOG ICR PRIORITY LEAVE ASSIGN CENT ENTER ADVANCE

P17,P12FN50P17,NOFUL V10,K6900,UNLIN 3,NOELS,ALL ,UNLIN17,4.FULLP17,FULL,ALL P17 P24 55 6P17P240P17,P1213,X*17P138

YES, THEN ENTER CEN ALL TUBES OF SAMP TIME TO ENTER CENT.IS CENTRIFUGE FULLIS ONLY ONE SPINNER WORKINGYES, SPIN NON ELEC SAMP IN WITH ELEC SAMP

TEC PUTS SEPARATE TUBES TEST ESPLIT TEST2 TEST E TEST LE SPLIT TEST3 TEST E TEST LE SPLIT TEST4 TRANSFER GATE SF BENCH AOVANCE ASSIGN TEST GE UNLINK UNL UNLINKASSIGNRELEASE

P3,K1,TEST2 1,NAPCL P5,K1,TEST3 V10,K72Q0,TEST3 1,UR IAC P7,K1,TEST4 V10.K7100,TESTA 1.TPRAG .TEST4+1 P13,RNOFU 1015+, 5V10,K6900,UNL 8,READY,ALL P15,READY,ALL13+,K1 P17

ELECT SPINNER NOW HANDELS THESE AMP SPIN THESE IN CENT TAKE ALL SAMP OFF OF CHAIN 3 OR 4 SPINNERPREVENT SAMP ENTERING SPINNING CENT SPINNING TIMESPINNER MUST UNLOAD BEFORE ANYTHING ELSE SEIZE PROPER SPINNER -ELEC OR NON ELEC LET SAMP ENTER CENTONCE SAMP HAS SPINNER GIVE LOW PRIORITY LEAVE CEN NO TUBES WITH SAMPLE INITIAL NUMBER OF READY RACK ENTER PROPER READY RACK TIME TO PUT SAMP IN RACK IN RACK FOR EACH TESTIS AN ELECTROLYTE TEST REQUESTED PART OF SAMPLE FOR NA,K,CL.IS URIC ACID REQUESTED IS IT AFTER 1200 YES - DO TOMORROW PART OF SAMPLE FOR URIC ACID IS TOT PROT ALBUMIN GLOB IN REQUESTED IS IT AFTER 11.50 OCLOGK PART OF SAMP TO TOT PRO ALBUMIN AND GIS READY RACK FULL YES, TIME TO BRING RACK TO BENCH MAKE SAMP LEAVE PROPER WAIT PLACE IS ONLY ONE SPINNER WORKING SEND ALL SAMP IN NON ELEC READY RACK TO B SEND ALL SAMP IN RACK TO BENCHMAKE NEW READY RACK SPINNER

Page 187: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

Reproduced

with perm

ission of the

copyright ow

ner. Further

reproduction prohibited

without

permission.

SAVEVALUE P17,P13 VALUE OF PROPER READY RACKATBEN TRANSFER ,TERM PART OF SAMP LEFT OVER0T0M0 TRANSFER ,TERM DO THESE TOMORROWBABY QUEUE 12 LINE OF MICROTUBESRELEASE P17 RELEASE PROPER SPINNERTERM* TERMINATE TERM ONE BUT DON@T HAVE IT COUNT IN TERMI* CENTRIFUGE* IN USEINUS1 RELEASE P17 SPINNERPRIORITY 6TEST E V21,K0 WAIT HERE TIL TEC TRIES ALL ENTER SAMP

* CENTENTER P18,P12 PROPER WAIT RACK FOR CENTTRANSFER .WAI17+2INUSE ADVANCE FN50 TIME TO PREPARE WAITING RACKPRIORITY 6 TO GO WITH BUFFER BELOWWAI17 ENTER P18,P12 PROPER WAIT RACK FOR CENTRELEASE P17 SPINNERGATE SE P17 WAIT FOR CENT EMPTYPRIORITY 5,BUFFER ALL REACH THIS POINT* HIGH PRIORITY TO SEIZE TEC,SEIZE P17 PROPER SPINNERLEAVE P18,P12 PROPER WAIT RACK FOR CENTi

4 .TRANSFER , INCEN-1

* CENTRIFUGE NOT FULL4,NOFUL TEST E V5,KO,WATE ARE SAMPLES WAITING

TRANSFER .SPIN-1 START CENTRIFUGEWATE RELEASE h i SPINNER* LINK P17,FIF0 WAIT TILL CENT FULL OR NO SAMP#v★ IS READY RACK NOT FULLRNOFU RELEASE PI7 SPINNER

Page 188: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

ASSIGNLINKREADY TRANSFER ADVANCE TRANSFER

15+, 5 P15,FIF0,READY+110,ATBEN

MAKE SAMP ENTER PROPER WAIT PLACE WAIT TIL READY RACK FULL OR NO MORE IN SYSTEM FOR SPINNERSTIME SPENT GOING TO BENCH

* INITIALIZE GLUCOSE AND UREA*WBPR ADVANCE FN73 TIME SPENTTRANSFER ,WBPR1 WBLDB DEPART 2* NOTE ONLY GET A LOGER THAT ISWBPRf QUEUETRANSFER CNLOG GATE LS PRIORITY SEIZE ASSIGN TRANSFER BELOG GATE LR TRANSFER GLBAK SEIZE ASSIGN TRANSFERBNLOG SEIZE ASSIGN TRANSFER GLPIP SEIZE ASSIGN TRANSFER BNP IP SEIZE ASSIGN CNTN1 SAVEVALUE LOGICS LOGICS

13BOTH,BELOG,CNLOG A 6 XI15,XI.OEPAR3ALL,GLBAK,BNPIP,;715.7 ,CNTN1915.9 .CNTN1815.8 ,CNTN11015.10 1,P15 3k

WAIT AT SPIN BENCH TO GO TO WBLEAVE WHOLE BLOOD QUE NOT OOING ANY IMPORTANT SINCE PR I 3 LINE OF WHOLE BLOOD AT BENCH EITHER GO TO BEGIN LOG OF CONTINUE MAKE NEXT SAMP SEIZE SAME LOG TEC AS GROU DON(®T INTERUPT LOGGER LOGING TECPAR. 15 = NO. OF LOGGING TECADMIT ONLY THE BEGIN LOG SAMP.SEIZE ANY ONE OF A TEC GLUCOSE TEC WHO AUTO CLAVES PAR. 15 NO. OF TEC SEIZEDBUN TEC WHO NORMALLY LOGS PAR.15 NO. OF TEC SEIZEDGLUTEC WHO NORMALLY PI PETS PAR. 15 NO. OF TEC SEIZEDBUN TEC WHO NORMALLY PI PETS PAR. 15 NO. OF TEC SEIZED SAVE NO. OF TEC SEIZED MAKE REST OF SAMP SEIZE SAME TEC LET REST OF SAMPLES GO TO CON LOG

DEPAR DEPART 13 DEPART WHOLE BLOOD QUE AT BENCH

Page 189: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

PRIORITY TEST E ADVANCE RELEASE TEST E TEST GE TEST G TEST L TRANSFER LGLIN TEST E LOG ICR LOG ICR

2,BUFFER PI,K1,UREA 5P15P2,K1,LGLIN V10,K50*»0,URQUE Q 1 M 8 , LGLIN Q15,K10,LGLIN ,URQUEQ13,KO,NOEM13k

TEST IF ONLY UREA TEST REQ.TIME TO LOG IN GLU BOOK ANO MAKE DECISIONRELEASE LOGGING TECTEST TO SEE IF UREA TEST REQUESTEDIF BEFORE 8-AO UREA TEC GETS FIRSTIS GLUCOSE LINE LONGIS I'REA LINE SHORTIF SO, SEND TO UREA PEOPLE FIRSTIF LOGGING LINE EMPTYHAVE NEXT GROUP OF SAMP SEIZE PROPER TEC.LET REST OF NEXT GROUP SEIZE SAME TEC.**

GLUCOSE TESTNOEM1 TEST GE QUEUE GATE LR LOGICS TEST LE SPLIT TRANSFER COTGL ASSIGN QUEUE SEIZE DEPART ADVANCE TRANSFER SEIZ8 SEIZE

DEPART ADVANCE ASSIGN TEST NE TEST E TEST NE SPLIT

NOBN1 ENTER

V10,K5030 GLU TEC READY FOR DAY1*1 WAIT IN LINE TO BE PIPETED2*l,SEIZ8 MUST MAKE STANDARDS2*1 BUT ONLY WITH EACH INCUBATIONV10,K7200,SEIZ8 IF AFTER 12 NO CONTROLS WITH EVERY ENCUBE6,COTGL , SEIZ8 22,5 1**81*410.N0BN18

6 STANDARDS - 5 AND 1 BLANKPAR 22 - 5 IF SAMP IS A CONTROL FOR GLULINE TO BE PIPETEDGLU TEC WHO PI PETSLINE TO BE PIPETEDTIME TO PREPARE STANDARDS •GLUCOSE TEC WHO PI PETS

620,25P22,K5,N0BN1 P2,K1,N0BN1 P19,K20,N0BN1 1,URQUE15,2

LEAVE PIPETING LINETIME DECISION IF GLU, PIPET AND PLACE IN NOTE THAT SAMP BEEN PROCESSED BY GLU IS THIS A STANDARD -YES GO TO STIRRER IS UREA TEST REQUESTED HAS SAMP ALREADY GONE TO UREA REMAINING SAMPLES TO UREA LINETAKE UP TWO SPACES IN STIRRER (DUPLICATE)

Page 190: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

GATE SNF 15,YESF1TEST NE V8,KO,YESF1RELEASE 8ASSIGN 15,2»

LINK 1,FIFOYESF1 UNLINK 1,ASS50,ALLASS50 ADVANCE •

15TEST NE P15,K2,RELA1RELEASE 8RELA1 LEAVE 15,2TRANSFER BOTH,INCN1,WAIT1WAIT1 ENTER 17,2PRIORITY 5GATE SE . 16PRIORITY 2,BUFFERLEAVE 17,2TRANSFER ,RELA1+1INCN1 ENTER 16,2GATE SNF 16,SPINTTRANSFER BOTH,TES21,TES22TES21 TEST E V17,KOTRANSFER ,SPINTTES22 GATE SF 16SPINT ADVANCE koPRIORITY UTEST GE V10,K5550SEIZE 7LEAVE 16,2AOVANCE 3ASSIGN 13,X2ENTER X2,2ASSIGN 26,P13PRIORITY 5TEST NE P16,K5,INCUBGATE SNF P13,INCUBTEST G V10,K7200,RELEA

IS SHAKER FULLANY SAMP IN WB OR PIPITING LINEGLU TEC WHO PI PETSNOTE THESE SAMP RELEASED TECWAIT ON USER CHAIN 1 UNTIL SHAKERFULL OR NO MORE IN SYSTEMTAKE ALL SAMP OFF USER CHAIN 1TIME TO AOO ZINK TO ALL SAMP IN STIRRERANO PLACED IN CENTDID SAMP ALREADY RELEASE TEC NO 8RELEASE GLU TEC THAT PI PETSLEAVE STIRRERIS CENTRIFUGE FILLEDWAITING PLACE FOR GLU CENTRIFUGE EMPTYHAVE ALL TRANS LEAVE CENT TOGETHERWAIT UNTIL CENTRIFUGE IS EMPTYTECHNIQUE USED TO TREAT AS SETLEAVE WAITING PLACEDUPLICATES ENTER CENT.IS CENTRIFUGE FULLANY MORE OT BE PROCESSEDWAIT UNTIL GLU CENT FULL TIME TO SPINHIGHER PRIOR, THAN WHEN LOGGEDWAIT ARRIVAL OF GLU TEC THAT AUTOCLAVESSEIZE GLU TEC WHO AUTO CLAVESLEAVE CENTRIFUGETIME TO PI PET AND MIX COPPERNO OF INCUBATE RACK NOW IN USEENTER RACK WAIT TO INCUBATEPAR 26 b NO OF INCUB RACK ENTEREDDON@T INTERUPT PREP FOR INCUBATIONTEST FOR EMERGENCYIS INCUBATE RACK FULLIS IT AFTER 12 OCI.OCK

Page 191: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

TEST NE V7,KO,INCUB ANY MORE WORK IN SYSTEMRELEA RELEASE 7 GLU TEC WHO AUTOCLAVESGATE LS 5 WAIT TO INCUBATEASSIGN 15,4 MAKE NOTE SAMP RELEASED TEC.TRANSFER ,MARLEINCUB LOGICS 5 READY TO INCUBATE ALL SAMPLES IN RACKLOG ICR 24 MAKE TEC MAKE NEW CONTROLS FOR NEXT INCUBMARLE AOVANCE V 9 TOTAL TIME TO PUT MARBLES ON ALL SAMP. IN★ RACKLOG ICR 5 PREVENT FUTURE SAMPLES FROM INCUBATINGASSIGN 13+,K1 MAKE NEW INCUBATE RACKSAVEVALUE 2,P13 MAKE NEW INCUBATE RACKTEST NE P15,K4,ADVA HAS SAMP RELEASED TECRELEASE 7 GLU TEC WHO ATUO CLAVESADVA ENTER 29 AUTOCLAVEADVANCE 250 TIME TO INCUBATESEIZE 7 GLU TEC WHO AUTOCLAVESLEAVE 29 AUTOCLAVEADVANCE FN51 TIME TO REMOVE MARBLES,COLD WATER BATH,AD* REAGENT AND BE SHAKENSEIZE 11 COLORIMETER FOR GLUCOSEGATE LR 22,READG FIRST SAMP CAUSES CALIBRATIONLOGICS 22 MAKE NEXT SAMP JUST BE READ AND NOT CALIBADVANCE 50 TIME TO CALIBRATE INSTRUMENTREADG ADVANCE 4 TIME TO READ A SAMPLE AND RECORD RESULTLEAVE P26,2 INCUBATE RACKRELEASE 11 GLU COLORIMETERRELEASE 7 GLU TEC WHO AUTOCLAVES.TEST E S*13,K0,ASCOM HAVE ALL BEEN READLOG ICR 22 MAKE TEC RECALIBRATE COLORIMETER FOR NEXT

ASCOM ASSIGN 16,4 PAR 16 s* PRIORITY OF SAMPASSIGN 21.1 TIME FOR COMPUTER TO COMPUT RESULT OF THIS TEXTTRANSFER ,COMPT GO TO THE: COMPUTER

*

* UREA

Page 192: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

UREA AOVANCE FN51 TIME TO MAKE DECISIONRELEASE P15 RELEASE LOGGING TECURQUE QUEUE 16 UREA QUEUEf NOTE PRIORITY OF TRANSACTION IS 3UREAB TRANSFER COULO GATE LS PRIORITY SEIZE ASSIGN TRANSFER BEULO GATE LR TRANSFER TEC1A SEIZE ASSIGN TRANSFER TEC2A SEIZE ASSIGN CONT2 SAVEVALUE LOGICS LOGICSDEPAU DEPART ADVANCE ENTER TEST E LOG ICR LOG ICR REP 1*1 RELEASE

BOTH,BEULO,COULO BEGIN LOG OR CONT LOG6 5X514,X5 ,DEPAU 1 1

MAKE NEXT SAMP IN BATCH SEIZE SAME TECDON@T INTERUPT TECPROPER UREA TECPAR 14 NO, OF LOG TEC SEIZEDFIRST IN SET GO HEREB0TH,TEC1A,TEC2A9 UREA TEC NORMALLY LOGS14.9 NO. OF TEC SEIZE ,CONT210 UREA TEC NORMALLY PI PETS14.10 NO. OF TEC SEIZE5,P14 SAVE VALUE OF UREA TEC. SEIZED6 LET REST GO TO CONTINUE LOG11 MAKE REST GO TO CONTINUE LOG

16 UREA QUE3 TIME TO GET LOGGED IN30.2 RACK WAITING TO BE PIPETEOQ16,K0,REP14 ARE THERE ANY MORE SAMPLES TO LOG 6 LET FUTURE BATCHES SEIZE FREE TEC1 1P14 LET FIRST OF NEXT SET RELEASE TEC SEIZED SEIZE FREE TEC

**

UREA GET PIPETEDGATE LRLOGICSTEST LESPLITTEST ESAVEVALUESPLIT

25,URGPI MAKE CONTROLS FOR UREA25 BUT ONLY 2 CONTROLS WITH EACH WHEELV10,K6300,URGPI AFTER 10.30 OON^DT MAKE STANDARDS EVERY 32,C0TUR 2 CONTROLSX13,K0,URGPI ARE STANOAROS NEEOEO13,1 YES6,STAND MAKE 6 STANDARDS WITH EVERY 3 RD WHEEL

WHEE

Page 193: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

Reproduced

with perm

ission of the

copyright ow

ner. Further

reproduction prohibited

without

permission.

TRANSFER ,URGPI STAND ASSIGN 22,7TRANSFER ,C0TUR+1 COTUR ASSIGN 22,6PRIORITY 5SEIZE X6ASSIGN 1A.X6ADVANCE 10TRANSFER ,DEPAP+1 URGPI PRIORITY 1TRANSFER BOTH,BEUPI,COUPI BEGIN PIPETING OR CONTINUE PIPCOUPI GATE LS 13 MAKE NEXT SAMP IN BATCH SEIZE SAME TECPRIORITY ff DON0T INTERUPT TEC SEIZEDSEIZE X6 PROPER UREA TECASSIGN 1 M 6 PAR Iff NO. OF READING TECTRANSFER ,DEPAPBEUPI GATE LR 12 FIRST SAMPLE GETS PIPETEDTRANSFER B0TH,TEC1P,TEC2P ATTEMPT TO SEIZE EITHER OF TWO TECTEC1P SEIZE 10 UREA TEC NORMALLY PI PETSASSIGN Iff,10 NO. OF TEC SEIZETRANSFER ,C0NT3TEC2P SEIZE 9 UREA TEC NORMALLY LOGSASSIGN Iff,9 NO. OF TEC SEIZECONT3 SAVEVALUE 6,P1ff SAVE NO. OF UREA TEC. SEIZEDLOG ICR 13 LET FUTURE BATCHES SEIZE FREE TEC.LOG ICR 12 LET FIRST OF NEXT SET SEIZE FREE TECDEPAP LEAVE 30,2 WAITING RACK TO BE PIPETEDADVANCE 10 TIME TO BE PIPETED ANO PUT IN WHEEL OR WAIT RACKTEST E S30.K0,ADVCO IS WAITING RACK FOR PIPETING EMPTYLOG ICR 13 LET REMAINING OF BATCH GET TO CONTINUELOG ICR 12 LET FIRST OF NEXT SET SEIZE TECADVCO TEST E PI,K1,WHEEL TEST FOR GLUTEST NE P20,K25,WHEEL HAS SAMP BEEN PROCESSED BY GLU TEC.TEST NE P22,K7,WHEEL IS THIS A STANDARD - YES GO TO WHEELTEST NE P22.K6,WHEEL IS THIS A CONTROLD - YES GO TO WHEELPRIORITY 3 GIVE GLU PART-SAME PRIORITY AS OTHER GLU

PAR 22 • 7 IF SAMP IS A UREA STANDARDPAR 22 o 6 IF SAMP IS A UREA CONTROLHIGH TO SEIZE TECSEIZE PIPETING TECPAR Iff « NO OF TEC SEIZEDPREPARE CONTROLSLOW PRIORITY DON@T INTERUPT LOGGER

ASSIGN 19,20 NOTE THAT SAM HAS GONE TO UREA

183

Page 194: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

SPLIT 1,NOEM1 SEND A PORTION TO GLUWHEEL TRANSFER ALL,ENWH1, ENWAT,3 ENTER WHEEL 1 OR 2 OR WAITING RACKENWH1 ENTER 31,2 UREA WHEEL NO ENTER TWO SAMPLESASSIGN 15,31 NO. OF WHEEL ENTEREDTRANSFER ,WHEFUENTER 32,2 UREA WHEEL NO 2 TWO SPACESASSIGN 15,32 NO, OF WHEEL ENTEREDTRANSFER ,WHEFUENWAT ENTER 33.2 WAIT FOR FREE WHEELRELEASE Pl4 PIPETING TECPRIORITY 5 HIGH PRIORITY SO THAT GET IN WHEEL FIRSTLINK 11,FIFO WAIT HERE FOR UR 1A WHEEL FREEUNLI7 SEIZE X8 TEC THAT JUST EMPITIED WHEELASSIGN 1*, X8 NO. OF TEC JUST SEIZEDADVANCE 3 TIME TO GET PLACED IN WHEELLEAVE 33,2 WAITING RACK FOR WHEELTRANSFER .WHEELWHEFU TEST NE P16.K5.TURN TEST FOR EMERGENCIESGATE SNF P15.TURN IS WHEEL FULLTEST G V10,K7200,RELEI NO IS IT AFTER 12 OCLOCKJ E S T NE V12.KO.TURN ANY MORE IN SYSTEMRELEI RELEASE P1*f TEC THAT PI PETGATE LS P15 WAIT TO TURN IN PROPER WHEELASSIGN 17,10 NOTE SAMP. RELEASED P P TECTRANSFER ,TURN2TURN LOGICS PI 5 LET REST IN THIS WHEEL TURNLOG ICR 25 MAKE TEC MAKE CONTROLS FOR NEST WHEELSAVEVALUE 13+, 1 NOTING ONE WHEEL IS COMPLETETEST E X13.K4.TURN2 ARE STANDARDS NEEDEDSAVEVALUE 13,KO YES, MAKE TEC MAKE STANDAROS WITH EVERY 3 RTURN2 PRIORITY 0,BUFFER WAIT FOR ALL BEFORE CONTINUINGLOG ICR P15 MAKE INCOMING SAMP WAIT TO TURNTEST NE P17.K10.ADVA1 HAS SAMP. RELEASE PIPETING TEC.RELEASE P11f RELEASE PIPETING TECADVA1 ADVANCE 160 TIME TO TURN ON WHEEL

* GET ALKALINIZED

WHEEL

Page 195: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

TRANSFER BOTH,BESQU,COSQU BEGIN ALKALINIZATION OR CONTINUECOSQU GATE LS 15 MAKE NEXT SAMP IN RATCH SEIZE SAME TECASSIGN 14,30 NOTE THAT SAMP DID NOT SEIZE TECTRANSFER ,ADVSQBESQU GATE LR 14 HAVE FIRST SAMPLE ENTER HERETRANSFER 80TH.TEC1S-TEC2STEC IS SEIZE 9 UREA TEC NORMALLY LOGSASSIGN 14,9 NO. OF TEC SEIZETRANSFER ,C0NT4TEC2S SEIZE 10 UREA TEC NORMALLY PI PETSASSIGN 14,10 NO. OF TEC SEIZECONT SAVEVALUE 7,P14 SAVE NO. OF UREA TEC SEIZEDLOGICS 15 LET REST OG TO CONTINUE ALKALINLOGICS 14 MAKE REST GO TO CONTINUE ALKALINADVSQ ADVANCE V13 TOTAL TIME TO GET ALKALI. IN ALL SAMPLOG ICR 15 LET FUTURE PATCHES SEIZE FREE TEC.LOG ICR 14 LET FIRST OF NEXT SET SEIZE FREE TECTEST NE P14.K30.NOTSZ DID SAMP SEIZE TECRELEASE P14 RELEASE TEC SEIZEDNOTSZ ADVANCE 250 TURNING TIMEGET TAKEN iOUT OF WHEELPRIORITY 6 MUST EMPTY WHEELTRANSFER BOTH,BETKO,COTKO TAKE OUT OF WHEELCOTKO GATE LS 17 MAKE NEXT SAMP IN BATCH SEIZE SAME TEC.ASSIGN 14,34 NOTE THAT SAMP DID NOT SEIZE TECTRANSFER ,ADVTKBETKO GATE LR 16 HAVE FIRST SAMPLE ENTER HERETRANSFER B0TH.TEC1T.TEC2T SEIZE EITHER OF 2 TECTEC1T SEIZE 9 TEC NORMALLY LOGSASSIGN 14,9 NO. OF TEC SEIZETRANSFER ,C0NT5TEC2T SEIZE 10 UREA TEC NORMALLY PI PETSASSIGN 14,10 NO. OF TEC SEIZED

CONT 5 SAVEVALUE 8,P14 SAVE NO OF UREA TEC SEIZEDLOGICS LET REST GO TO CONTINUE TKOLOGICS 16 MAKE REST GO TO CONTINUE TKO

Page 196: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

ADVTK LEAVE P15,2 LEAVE WHEEL ENTEREDADVANCE VIA TOTAL TIME TO TAKE OUT ALL SAMPLESLOG ICR 17 MAKE NEXT XACTO OF NEXT SET NOT SEIZE T *LOG ICR 16 LET FIRST OF NEXT SET SEIZE TECUNLINK 11,U N L 17.ALL LET SAMP WAIT FOR WHEEL ENTER WHEELENTER 34.2 NESSLER BOTTLE RACKTEST NE P14,K34 ,N0SZ1 DID SAMP SEIZE TECRELEASE P14 RELEASE TEC SEIZEDNOSZ1 ADVANCEk 50 WAIT AT LEAST 5 MIN BEFORE PROCEEDINGGET READk ON COLORIMETER

TRANSFER BOTH.BERD,CORO BEGIN TO GET READ OR CONTINUE READCORD GATE LS 19 MAKE NEXT SAMP IN BATCH SEIZE SAME TEC,PRIORITY 6 DON@T INTERUPT TECSEIZE X9 PROPER UREA TECSEIZE 12 COLORIMETER UREAASSIGN 14,X9 PAR 14 NO.OF READING TECTRANSFER .ADVRDBERD GATE LR 18 HAVE FIRST SAMPLE ENTER HERETRANSFER B0TH.TEC1R.TEC2R SEIZE FREE TEC.TEC1R SEIZE 9 UREA TEC NORMALLY LOGSASSIGN 14,9 NO. OF TEC SEIZETRANSFER ,C0NT6TEC2R SEIZE 10 UREA TEC NORMALLY PI PETSASSIGN 14,10 NO. OF TEC SEIZEDCONT6 SAVEVALUE 9,P1A SAVE NO, OF UREA TEC, SEIZEDLOGICS 19 LET REST GO TO CONTINUE READLOGICS 18 MAKE REST GO TO CONTINUE READSEIZE 12 COLORIMETER FOR UREAAOVANCE 20 TIME TO CALIBRATE INSTRUMENTADVRD AOVANCE 2 TIME TO READ A SAMPLE - NOT DUPLICATETEST E S34.K0.REL14 is a r e m o r e m o r e s a m p o t b e r e a oLOG ICR 19 LET FUTURE BATCHES SEIZE FREE TECLOG ICR 18 LET FIRST OF NEXT SET SEIZE FREE TECREL14 RELEASE P14 RELEASE TEC SEIZEDRELEASE 12 COLORIMETER UREA

Page 197: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

*****

ASSIGN 16,4 PAR 16 « PRIORITY OF SAMPASSIGN 21,1 TIME FOR COMPUTER TO COMPUT RESULT OF THIS TEXTTRANSFER ,COMPT GO TO THE COMPUTER

LUNCH ROUTINE TO SIMULATE TEC LUNCH PERIOD

LUSE9

LUS13

GENERATE 0,0,7200,1,6 SIGNAL FROM CONTROL SYS. TO ISPLIT 1,LUSE7SEIZE 3 NON ELECT SPINNER - SEIZE WHENAOVANCE 30 TIME FOR LUNCHRELEASE 3 NON ELECT SPINNERTRANSFER ,LUADVSPLIT 1,LUSE9SEIZE 7 GLU TEC WHO NORMALLY INCUBATESADVANCE 30 TIME FOR LUNCHRELEASE 7 GLU TEC WHO NORMALLY INCUBATESTRANSFER ,LUADVSPLIT 1,LUS13SEIZE 9 UREA TEC WHO NORMALLY LOGGINGAOVANCE 30 TIME FOR LUNCHRELEASE 9 UREA TEC WHO NORMALLY LOGGINGTRANSFER ,LUADVSPLIT 1,LUS16SEIZE 13 CHLORIDE TECADVANCE 30 TIME FOR LUNCHRELEASE 13 CHLORIDE TECTRANSFER ,LUADVSEIZE 16 BICARBONATE TEC WHO TITRATESADVANCE 30 TIME FOR LUNCHRELEASE 16 BICARBONATE TEC WHO TITRATESTRANSFER ,LUADVGENERATE 0,0,7500,1 ,6 HUNGER SECOND PERIODSPLIT 1,LUSE8SEIZE 4 ELECTROLITE TECAOVANCE 30 TIME FOR LUNCH

Page 198: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

RELEASE 4, ELECTROLITE TECTRANSFER ,LUADVLUSE8 SPLIT 1.LUS10SEIZE 8 GLU TEC WHO NORMALLY PI PETS

S- ADVANCE 30 TIME FOR LUNCH* RELEASE 8 GLU TEC WHO NORMALLY PI PETSTRANSFER ,LUADVLUS10 SPLIT 1,LUS20SEIZE 10 UREA TEC WHO NORMALLY PI PETSADVANCE 30 TIME FOR LUNCHRELEASE 10 UREA TEC WHO NORMALLY PI PETSTRANSFER .LUADVLUS20 SEIZE 20 BICARBONATE TEC WHO PI PETS AND BRINGS TO BENCHADVANCE 30 TIME FOR LUNCHRELEASE 20 BICARBONATE TEC WHO PI PETS AND BRINGS TO BENCHLUADV* TRANSFER ,TERM*** URIC ACID*

GENERATE 0,0,6600,31,0,30 SAMPS LEFT OVER FROM PREVIOUS DAYURIAC SAVEVALUE 15+, 1 SAVE NO, OF URIC ACID SAMPLESLINK 5,FIF0,TES11 FIRST SAFP TEST 11,NEXT GOES ON CHAIN 6TES11 TEST GE V10,K6600 IS IT PAST 11 0CL0CK-N0,THEN WAITPRIORITY 3 DON(S>T INTERUPT SPINNER IF BUSYSEIZE 3 SEIZE THE NON ELEC SPINNER WHO DOES THE URIC ACIDADVANCE 30 AVG TIME TO FIND AND COLLECT ALL U.A, SAMPRELEASE 3 RELEASE THE NON ELEC SPINNERUNLINK 5 .ENTUA,ALL AKE SAMP OFF THE USER CHAIN 6 AND SEND IT TOENTUA ENTER 45 URIC ACID RACK WAITING TO START PROCESSINGSAVEVALUE 15-, 1 NO, OF SAMPLES YET TO FINDTEST E X15.K0 ARE ALL URIC ACID SAMPLES COLLECTEOSEIZ3 SEIZE 3 URIC ACID TECAOVANCE 10 TIME TO PIPET AND MIX PLACE IN RACKLEAVE 45 URIC ACIO RACK

RELEASE 3 URIC ACIC TEC.PRIORITY 2,BUFFER

Page 199: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

ENTERSEIZEAOVANCELEAVERELEASEGATE SEENTERTRANSFERSEZ12 SEIZE SEIZE AOVANCE RELEASE RELEASE TRANSFERADSUA ADVANCEkS E 133 SEIZE ADVANCE ENTER LEAVE RELEASE GATE SE SEIZE AOVANCE LEAVE

RELEASE GATE SE MARK AOVANCE SEIZE GATE LR TEST LE LOGICSSEZ31 SEIZE AOVANCE RELEASE RELEASE

453104534562

URIC ACIO RACK URIC ACID TEC.TIME TO PI PET URIC ACID RACK URIC ACIO TEC,WAIT UNTIL ALL ARE DONE URIC ACIO CENTBOTH,SEZ12,ADSUA LET BATCH SEIZE TEC12 3 300 3 12, SE133 300

CENT FOR URIC ACID SEIZE URIC ACIO TEC TIME TO SPIN ANO LOAO ANO UNLOAO RELEASE U.A. TEC CENT URIC ACIDTIME TO SPIN BATCH - WHILE SPIN THE TEC IS PREPARING RACK ADDING CARBONATE TO RECEPTOR TEST TU 3 URIC ACID TEC7 TIME TO PI PET ADO CARB AND SHAKE46.2 URIC ACIO RECEPTOR RACK62 URIC ACID CENT3 RELEASE URIC ACID TEC.62 WAIT UNTIL ALL ARE TAKEN OUT OF CENT3 SEIZE URIC ACID TEC7 TIME TO ADD COLOR REAGENT46.2 URIC ACID RECEPTOR RACK

3 RELEASE URIC ACID TEC46 WAIT UNTIL ALL ARE PROCESSEDSET TRANSIT TIME TO ZERO 300 SIT FOR HALF HOUR19 COLORIMETER20,SEZ31 LET FIRST SAMPLE TEST TIMEMl,K4500,PANIC HAS IT PEEN WAITING MOR THAN 45 MINUTES20 PREVENT FUTURE SAMP FROM TEST TIME3 SEIZE URIC ACID TEC4 TIME TO READ19 COLORIMETER3 RELEASE URIC ACID TEC

Page 200: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

Reproduced

with perm

ission of the

copyright ow

ner. Further

reproduction prohibited

without

permission.

PAR 16 o PRIORITY OF SAMPTIME FOR COMPUTER TO COMPUT RESULT OF THIS TEXT GO TO THE COMPUTERASSIGN 16,AASSIGN 21,1TRANSFER ,C0MPTPANIC TRANSFER ,TERM*PANIC MEANS SAMPLE HAS BEEN WAITING MORE THAN 1*5 MINUTES

*** ELECTROLYTES - SODIUM - POTASSIUM - CHLORIDE**

ENTER 48 SODIUM POTASSIUM AND CHLORIDEPRIORITY 5 MUST COLLECT SLL SAMP BEFORE CONTINUETEST GE V 10,K 5 120 NA K CL TEC ARRIVE AT 0,32SEIZE 14 SODIUM POTASSIUM TECADVANCE 5 TIME TO FIND AND COLLECT A SAMPLE FOR CL,NA,PLEAVE 48 SODIUM POTASSIUM AND CHLORIDERELEASE 14 SODIUM POTASSIUM TECGATE SE 48 WAIT UNTIL ALL ARE COLLECTED IN THIS SETSPLIT 1,B 1CBE SEND TUBE TO BARCARBONATE TESTSPLIT 1,CHLOR SEND PART OF SAMPLE TO CHLORIDE RACKENTER 49 SODIUM AND POTASSIUM RACK AT BENCHPRIORITY 3,BUFFER HAVE ALL IN SET ARRIVE AT THIS POINTPRIORITY 6 ONCE TEC AT BENCH KEEP HIM THERESEIZE 14 SODIUM POTASSIUM TECADVANCE 2 TIME TO PI PET AND SEND REMAINING TO CHLORIDELEAVE 49 SODIUM AND POTASSIUM RACK AT BENCH

**★

SODIUM POTASSIUMRELEASE GATE SE SAVEVALUE TEST LE TEST GE IGNOR ENTERPRIORITYSAVEVALUE

14 SODIUM POTASSIUM TEC49 WAIT UNTIL ALL PIPETED14+,1 ADD ONE TO SAVEVALUE 14V10,K6600,IGNOR IS IT AFTER 12 OCLOCK ,YES -GO TO IGNOR X14,K3 D0N@ T CONTINUE UNTIL AT LEAST 3 SAMP HERE61,2 SODIUM AND POTASSIUM RACK AT BENCH2,BUFFER HAVE ALL IN SET ARRIVE AT THIS POINT14-, 1 SUB ONE TO SAVEVALUE 14

190

Page 201: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

* *

SEIZE 14 SODIUM POTASSIUM TECGATE LR 21,READF FIRST SAMP. CAUSES CALIBRATIONLOGICS 21 MAKE NEXT SAMP JUST BE READ ON FLAME PHOTOMETERADVANCE 50 TIME TO CALIBRATE FLAME PHOTOMETERREADF ADVANCE 6 TIME TO READ ON FLAME PHOTOMETERTEST NE V15.K0,RELSP ANY MORE NA P CL TO PROCESSADVANCE 60 TIME TEC SPENDS TO CHECK ALL ELEC RESULTSRELSP RELEASE 14 SODIUM AND POTASIUM TECLEAVE 61,21,NAK SODIUM AND POTASSIUM RACK AT BENCHi

SPLIT MACHINE GIVES INFOMATION TO COMPUTER ABOUT BOTH SODIUM AND POTASSIUM FROM ONE SAMPNAK TEST E S61.K0,COMPS HAVE ALL BEEN READLOG ICR 21 MAKE TEC RECAL FLAME FOR NEXT SETCOMPS ASSIGN 16,4 PAR 16 o PRIORITY OF SAMPASSIGN 21,1 TIME FOR COMPUTER TO COMPUT RESULT OF THIS TEXTTRANSFER .COMPT GO TO COMPUTER

*CHLORIOECHLOR ENTER 47 CHLORIDE RACK AT BENCHTEST GE V10,K3480 TEC uOl AVAILABLE TIL 98,58PRIORITY 0 LOW PRORITYTRANSFER SIM.GAT54.GAT54 SET DELAY INDICATOR TO ZEROGAT54 GATE SE 54 NO SAMP WAITING IN WAIT RACK FOR MACHINEGATE NU 13 DON@T CONTINUE IF TEC IS BUSYGATE SE 50 WAIT UNTIL TEC HAS EMPTIED MACHINETRANSFER SIM,SEICH.GAT54 SIMULTANIOUS STORAGE MACH ,WAIT MACH EMPTISEICH SEIZE 13 CHLORIDE TEC

LEAVE 47 CHLORIDE RACK AT BENCHADVANCE 2 TIME TO PI PET AND MAKE DUPLICATE PLACE IN MACHINESPLIT 1,DUPWA MAKE DUPLICATE AND PUT ASIDE

ENT50 ENTER 50,1 CHLORIDE MACHINERELEASE 13 CHLORIDE TECADVANCE 8 TIME SPENT ON MACHINESEIZE 13 CHLORID TECADVANCE 2 TIME TAKE" JT OF MACHINE AND RECORD

Page 202: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

LEAVE RELEASE ASSIGN ASSIGN TRANSFER DUPWA PRIORITY ENTER GATE SE SEIZE LEAVE ADVANCE TRANSFER****

BICARBONATE

BICAR ENTERPRIORITYSEIZELEAVEADVANCERELEASEPRIORITY PRIORITY BICBE SEIZE ADVANCE ENTER RELEASE PRIORITY if PRIORITIES GATE SNF LEAVE SEIZE ENTER ADVANCE

50,11316,421 ,1.COMPT454.1 50 1354.1 FN71,ENT50

55120553020

CHLORIDE MACHINE CHLORID TECPAR 16 « PRIORITY OF SAMPTIME FOR COMPUTER TO COMPUT RESULT OF THIS TEST GO TO COMPUTERHIGH PRIORITY - NEXT SIEZEO BY TEC CHLORIDE WAITING RACK FOR MACHINE TO EMPTY WAIT UNTIL CHLORIDE MACHINE IS EMPTY CHLORIDE TECCHLORIDE WAITING RACK FOR MACHINE TO EMPTY TIME TO GET PLACED IN MACHINE ENTER MACHINE

POSITION IN READY RACK FOR BICARBONATE SAMPBICARB TEC WHO PI PETS AND BRINGS SAMP TO BENCH POSITION IN READY RACK FOR BICARBONATE SAMP TIME TO COLLECT SAMP AND BRING TO BENCH BICARB TEC WHO PI PETS AND BRINGS SAMP TO BENCHLET NEXT SAMP COME TO BENCHBICARB TEC WHO PI PETS AND BRINGS SAMP TO BENCH TIME TO PIPETWAIT RACK FOR POSITION IN AIRATORBICARB TEC WHO PI PETS AND BRINGS SAMP TO BENCH

0,BUFFER 2 20 1056 20 5ARE TO INSURE PROPER OROER OF EVENTS57 WAIT FOR POSITION IN AIRATOR56 WAIT RACK FOR POSITION IN AIRATOR16 BICARBONATE TEC WHO TITRATES AND READS57,2 BICARBONATE AIRATOR SAMP NAD ITS DUPLICATE2 TIME TO PUT IN AIRATOR

RELEASE 16 BICARBONATE TEC WHO TITRATES AND READS

Page 203: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

ADVANCE 30 A IRATELEAVE 57,2 BICARBONATE AIRATOR SAMP AND ITS DUPLICATESEIZE 16 BICARBONATEADVANCE 1 TAKEN OUT OF AIRATORRELEASE 16 BICARBONATE TEC WHO TITRATES AND READSPRIORITY 3.BUFFER 16 ALLOW TEC TO PUT A NEW SAMP IN AIRATORSEIZE BICARBONATE TEC WHO TITRATES AND READSADVANCE 1 0 TIME TO TITRATE AND READADVANCE 30 TIME TEC TAKES TO CALCULATES RESULTSRELEASE 16 BICARBONATE TEC WHO TITRATES AND READSASSIGN 1 6 , b PAR 16 - PRIORITY OF SAMPASSIGN 2 1 , 1 TIME FOR COMPUTER TO COMPUT RESULT OF THIS TES1* TRANSFER ,C0MPT GO TO COMPUTER*■* TOTAL PROT9* ALBUMIN GLOBIUM*

GENERATETRANSFER 0,0,5700,13,0,30 SAMPS LEFT OVER FROM PREVIOUS DAY •TPGATTPRAG ENTER 58 POSITION IN READY RACK FOR PROT A GTEST GE PRIORITY V10,K53905 MUST WAIT FOR TEC TO ARRIVE IN LABSEIZE 17 TOT PROT AND ALBUMIN GLOBIUM TECLEAVE 58 POSITION IN READY RACK FOR PROT A GADVANCE 2 0 TIME TO COLLECT SAMP AND BRING TO BENCHRELEASE 17 TOT PROT AND ALBUMIN GLOBIUM TECTPGAT GATE SE 58 LET TEC GET ALL SAMPPRIORITY h HIGH TO KEEP TEC AT BENCHENTER 59 TOTAL PROT A B RACK AT BENCHGATE LR 23,P 1 PAG LET FIRST THROUGH HERE-MUST PREPARE NA SULFATELOGICS 23 MAKE REST GO TO PI PAGSEIZE 17 TOT PROT AND ALBUMIN GLOBIUM TECADVANCE 50 TIME TO PR 1 PARE SODIUM SULFATERELEASE 17 TOT PROT AND ALBUMIN GLOBIUM TEC

PI PAG SEIZE 17 TOT PROT AND ALBUMIN GLOBIUM TEC

Page 204: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

LEAVE 59 TOTAL PROT A G RACK AT BENCHADVANCE 5 TIME TO PI PET INTO TUBE OF NA SULFATE-HAND PI PETRELEASE 17 TOT PROT AND ALBUMIN GLOBIUM TECGATE SE 59 WAIT UNTIL ALL AT BENCH ARE PIPETEDSEIZE 17 TOT PROT AND ALBUMIN GLOGIUM TECADVANCE 5 TIME TO PI PET PART OFF FOR TOT PROT REMAINDER FOR ASPLIT 1,TPRO SEND PART TO TOTAL PROTINEENTER 60 BICARBONATE FILTER RACKRELEASE 17 TOT PROT AND ALBUMIN GLOBIUM TECPRIORITY 0 DON^T CONT UNTIL ALL OTHER WORK DONEASSIGN 15,2 NO, OF TIMES NEED TO ADD MORE SAMP TO FILTERFILTE ADVANCE 300 BE FILTEREDSEIZE 17 TOT PROT AND ALBUMIN GLOBIUM TECADVANCE 3 TIME TO ADD MORE SAMP TO SAMP IN FILTER RACKRELEASE 17 TOT PROT AND ALBUMIN GLOBIUM TECLOOP 15,FILTE ADD MORE SAMP TO FILT AGAINTEST GE V10,K6900 WAIT UNT JUST BEFORE LUNCHADVANCE 300 BE FILTEREDSEIZE 17 TOT PROT AND ALBUMIN GLOBIUM TECLEAVE 60 BICARBONATE FILTER RACKAOVANCE 20 TIME TO TAKE OUT OF FILTER RACK AND PEP CLEAR PORTIRELEASE 17 TOT PROT AND ALBUMIN GLOBIUM TECADVANCE 300 WAIT 1/2 HOURTEST E V6,K0,LIN11 ARE THERE ANY SAMP WAITINGUNLINK 10.SEI19iALL NO, THAN START READING SAMP WAITINGLIN11 LINK 12.FIFO YES, THAN WAIT HERE TO BE READTPRO TEST NE V6.K0,UNLTP ARE MORE SAMP STILL TO BE PROCESSED BY TECLINK 10,FIFO YES, WAIT HERE TO BE READUNLTP UNLINK 10.SEI19.ALL NO, THAN ALL SAMP ARE TO BE READSEI19 SEIZE 17 TOT PRO AG TECADVANCE 5 TIME TO ADD BIURETRELEASE 17 TOT PRO AG TECADVANCE 300 WAIT 1/2 HOURPRIORITY 7 HIGH PRIORITY TO KEEP TEC READINGSEIZE 19 TOT PRO AG READ MACHINESEIZE 17 TOT PRO AG TECTRANSFERS ,ADRR

Page 205: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

ADRR

*itititit

SEIZE 19 TOT PRO AG READ MACHINESEIZE 17 TOT PRO AG TECADVANCE 5 TME TO READ AND RECORDUNLINK 12.SEITP.ALL WHEN ALL TOT- PROT READ - READ AGRELEASE 17 TOT PROT AND ALBUMIN GLOBIUM TECRELEASE 19 TOT PRO AG READ MACHINEASSIGN 16,A PAR 16 ■ PRIORITY OF SAMPASSIGN 21,1 TIME FOR COMPUTER TO COMPUT RESULT OF THIS TESTTRANSFER ,COMPT GO TO COMPUTER

COMPUTER COMPUTES RESULTS OF TESTS

COMPT QUEUE 5 COMPUTER QUEUE WAIT FOR COMPUTE RESULTS OF TESTSSAVEVALUE 12+.K1 ADD ONE EACH TIME SAMP ENTERS HEREASSIGN 16,6 PAR 16 * PRIORITY OF SAMPPRIORITY 6 1NFOMAT1 ON MUST ENTER COMP OR BE LOSTCOMP2 GATE NU 15,YESCU IS COMPUTER IN USESEIZE 15 NO, THAN SEIZE IT 1SAVEVALUE 10,P16 SAVE PRIORITY OF SAMPLESAVEVALUE 11,X10 SAVE PRIORITY OF SAMPDEPART 5 COMPUTER QUE FOR COMPUTING RESULTS OF TESTSCOMPU ADVANCE P21 TIME TO COMPUT AND STORE RESULT OF TESTADVANCE FN70 TIME TO CHECK IF ALL TEST ON SAMP ARE DONERELEASE 15 COMPUTERTRANSFER .UNLI6YESCU TEST L P16.X10,NOWAC IS PR1. LESS THAN THAT OF SAMP THAT HAS COMPUTERLINK 6,P16 YES, WAIT HERE FOR COMP FREE - IN ORDER OF PRINOWAC PREEMPT 15 NO, PREEMPT COMPUTERDEPART 5 COMPUTER QUEUE FOR COMPUTING RESULTS OF TESTSSAVEVALUE 10,P16 SAVE VALUE OF PRI IN SAVEVALUE 10ADVANCE 1 TIME TO UNLOAD COREADVANCE P21 TIME TO COMPUTE AND STORE RESULT OF TESTADVANCE FN70 TIME TO CHECK IF ALL TEST ON SAMP ARE DONERETURN 15 RELEASE COMPUTERSAVEVALUE 10,X11 RESTORE PRIORITY OF PREEMPTED SAMP

Page 206: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

NffS.iVv*?/** •:’. --- •.■■■ '■ '’S .K‘J flW w.<t t

***

UNLI6 UNLINK PRIORITY TEST NE ASSEMBLE6,C0MP2,1 SEND WAITING SAMP TO COMPUTER FOR PROCESSING 5 HIGH PRI MUST PRINT REPORT WHEN READYV3,KO,TERM DOES MODEL PROCESS THIS SAMP - CONTINUE IF IT DOES V3 WAIT HERE TIL ALL TEST OF SAMP ARE DONE

COMPUTER PRINTS PATIENT REPORTQUEUE 6 COMPUTER Q WAITING FOR PRINTSAMP REPORTSEIZE 15 COMPUTERSAVEVALUE 1 0 ,K4 ONLY LET COMP BE INTURUPT TO ACCEPT RESULTS 01AOVANCE V4 TIME TO PRINT PATIENT REPORT

* RELEASE 15 COMPUTER* COMPUTER COMPUTES AND PRINTS WARD REPORTPRIORITY 3QUEUE 7 WAIT TO PRINT WARD REPORTGATE LR 22,TERM LET FIRST SAMP THROUGH - REST GO TO TERMLOGICS 2 2 PREVENT REST FROM COMMIMG HERETEST G V10,9600 IS IT AFTER k OCLOCKSEIZE 15 YES, THAN SEIZE COMPUTERDEPART 7 WAIT TO PRINT WARD REPORTAOVANCE V19 TIME TO PRINT WARD REPORTSRELEASE 15 COMPUTER* PRIORITY 1,BUFFER LET COMPUTER BE SEIZED BV ANY WAITING SAMP** COMPUTER COMPUTES AND PRINTS SECTION REPORTw%

) QUEUE 8 COMPUTER QUE WAIT TO PRINT SECTION REPORTSEIZE 15 COMPUTERDEPART 8 COMPUTER QUE WAIT TO PRINT SECTION REPORTADVANCE V19 TIME TO PRINT SECTION REPORTRELEASE 15 COMPUTER* TRANSFER ,TERMW* DOCTOR NEEDS REPORT BEFORE ALL TEST ON SAMP ARE DONE

GENERATE 3 0 0 ,1 0 0 ,A800 , , 6 REQUEST FOR REPORTS - ONE EVERY 1/2 HOURv£>O'

Page 207: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

QUEUEGATE NUSEIZEDEPARTAOVANCEADVANCE9130BASED ON PRINTING 3 15RELEASE TERMINATE PRE1C PREEMPT DEPART ADVANCE

AnVANPF' BASED ON PRINTING RETURN 15 TERMINATE

9 DOCTOR REQUEST FOR PARTIAL REPORT QUEUE15.PRE1C IS COMPUTER BUSY 15 NO, THAN SEIZE ITDOCTOR REQUEST FOR PARTIAL REPORT QUEUETIME TO GATHER INFO FROM STORAGEAVG TIME TO PRINT RESULTS ON AN AVG SAMP LINES FOR A PARTIAL REPORT AT 1 LINE PER MINUTE COMPUTERTERMINATE REQUEST FOR RESULTS PREEMPT COMPUTERDOCTOR REQUEST FOR PARTIAL REPORT QUEUE TIME TO INTURUPTAVG TIME TO PRINT RESULTS ON AN AVG SAMP LINES FOR A PARTIAL REPORT AT 1 LINE PER MINUTE RELEASE COMPUTERTERMINATE REZUEST FOR FRESULTS OF TEST

159130

56

1 VARIABLE P3+P4+P5+P6+P7+P8+P9+P10+P11 INDICATES ANY TEST EXCEPT URE GLU2 VARIABLE P1+P2 INDICATES UREA OR GLU TEST3 VARIABLE P1+P2+P3*4+P5+P7*2-1 N OF PARTS OF SAMP COMP ASSEMBLES FOR REP* EITHER — GLU, UREA, CL, NA, K, URIC ACID , TOT PROT, AG, BICAR4 VARIABLE V1*10 TIME TO PRINT RESULTS OF TEST - 1 LINE PER INIT* V4« NO. OF TEST OF SAMP * TIME TO PRINT ONE LINEQ*17+S*18 Q WAIT SPIN +WAIT STORAGE FOR CENT+S58+S59+S60 NO OF SAMP THAT TOT PROT A G TEC YET TO PROCESS7 VARIABLE Q13+Q1^+S15+S16+S178 VARIABLE Q13+Q14 NO OF XACT IN WB AT BEN AND PIP GLU LINES*13*K1/K2 TIME TO PROCESS MARBLES N RACKC 1+4600 CLOCK TIMEV1+V2 SUM OF PAR FROM 1 TO 11S33+Q16+Q13+Q14 CONTENTS OF WAITING RACK UREA QUE ETC 1*S*15 TIME TO SQURT WHEEL TOTAL1*S*15 TIME TO TAKE OUT AND SWIRL ROD S49+S48 NO. OF NA P ,CL SAMPLES LEFT IN SYSTEMV8+S17+S15 V8+GLU CENT + GLU SHAKER V5+S*17 V5+ CONTENTS OF CENT

VARIABLE VARIABLE VARIABLE VARIABLE 9 VARIABLE10 VARIABLE11 VARIABLE12 VARIABLE13 VARIABLE14 VARIABLE15 VARIABLE17 VARIABLE18 VARIABLE

Page 208: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

19 VARIABLE V19- NO* OF 21 VARIABLE*

*1 FUNCTION 0 93. .252 FUNCTION 0 99. .753 FUNCTION

0 102. *54 FUNCTION 0 114. *255 FUNCTION 0 126. 1*6 FUNCTION 0 138* 1*10 FUNCTION 0 28. 1*11 FUNCTION 0 100. 1*12 FUNCTION0 33. 1.

13 FUNCTION 0. 33. 1.50 FUNCTION 0 2. .851 FUNCTION 0 1. .960 FUNCTION .3 1. .670 FUNCTION .9 0. 1.71 FUNCTION 4800. 1* 6600,72 FUNCTION 5700. 8. 7200.

73 FUNCTION

XI2*10 TIME TO PRINT WARD REPORTSAMP * AVG NO. OF TEST PER SAMP * TIME TO PRINT ONE LINE Q*17+S2 QUE WAIT SPIN + STORAGE FO TIME PUNCHRN1.C3 93.RN1,C3 96. H R S T DELIVERY 745• SECOND DELIVERY 815

830♦ 101. THIRD DELIVERY75 103. 1. 103.FOURTH DELIVERY 930115.3 1030 DELIVERY

RN1,C4 102. ,RN1,C3 115.3 1 RN1,C2 126,RN1,C2138;RN1,C2 30.RN1,C2 140.RN1,C237.RN1,C238.'RN1,D3 2. 1.RN1,D3 1 . 1 .RN1,04 2. ,8RN1.02V10,C3 TIME TO GET PLACED IN CLORIDE MACHINE2 10200 2Cl,03 TIME TO MAKE SEPARATE TUBES8 LIG IN FOR SPINNER11. 10200.12.C1,D2 TIME SPENT FOR WB AT SPIN BENCH TO GO TO WB

1130 OELIVERY NUMBER OF TEST ARRIVE AR 730NUMBER OF TEST ARRIVE AT 815NUMBER OF TEST ARRIVE AT 830NUMBER OF TEST ARRIVE AT 930 TWO TENTHS OF A MINUTE

2. ONE TENTH OF A MINUTE1 . NUMBER OF TEST TUBES WITH A SAMPLE 3. 1 4.ONE ONE HUNDRETH OF A MINUTE

198

Page 209: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

Reproduced

with perm

ission of the

copyright ow

ner. Further

reproduction prohibited

without

permission.

—:— ....

5100. 100. 10200.150.*** STORAGE DEFINITION*

3 STORAGE 124 STORAGE 125 STORAGE 136 STORAGE 137 STORAGE 138 STORAGE 139 STORAGE 1310 STORAGE 1311 STORAGE 1312 STORAGE 1313 STORAGE 1314 STORAGE 1315 STORAGE 816 STORAGE 818 STORAGE 11419 STORAGE 11420 STORAGE 11431 STORAGE 3032 STORAGE 3035 STORAGE 1336 STORAGE 1337 STORAGE 1338 STORAGE 1339 STORAGE 1340 STORAGE 1341 STORAGE 1342 STORAGE 1343 STORAGE 1344 STORAGE 1350 STORAGE 1

CARDSCAPACITY OF SPINNER<S>S CENTRIFUGE CAPACITY OF SPINNER@S CENTRIFUGE CAPACITY OF READY RACKCAPACITY OF READY RACK - ELECT SPINNERCAPACITY OF READY RACK - ELECT SPINNERCAPACITY OF READY RACK - ELECT SPINNERCAPACITY OF READY RACK - ELECT SPINNERCAPACITY OF READY RACK « ELECT SPINNERCAPACITY OF READY RACK - ELECT SPINNERCAPACITY OF REAOY RACK - ELECT SPINNERCAPACITY OF REAOY RACK - ELECT SPINNERCAPACITY OF READY RACK - ELECT SPINNERCAPACITY OF MAGNETIC STIRRER FOR GLU CAPACITY FOR CENTRIFUGE FOR GLUCAP OF GLU WAIT RACK TO INCUBATECAP OF GLU WAIT RACK TO INCUBATECAP OF GLU WAIT RACK TO INCUBATECAPACITY OF UREA WHEEL N0.1 CAPACITY OF UREA WHEEL NO 2 CAPACITY OF READY RACK-NONELECT SPINNER CAPACITY OF READY RACK-NONELECT SPINNER CAPACITY OF READY RACK-NONELECT SPINNER CAPACITY OF READY RACK-NONELECT SPINNER CAPACITY OF REAOY RACK-NONELECT SPINNER CAPACITY OF READY RACK-NONELECT SPINNER CAPACITY OF READY RACK-NONELECT SPINNER CAPACITY OF REAOY RACK-NONELECT SPINNER CAPACITY OF READY RACK-NONELECT SPINNER CAPACITY OF READY RACK-NONELECT SPINNER CAPACITY OF CHLORIDE MACHINE

Page 210: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

57 STORAGE 6 CAPACITY OF BICARBONATE AIRATOR** METHOO OF STARTING PROGRAM*

GENERATE 0,0,4800,1 GENERATE RESET TRANS AT 8.00TERMINATE 1 A MEANS OF RESET ING STATISTICS BEFORE WORKSTART 1RESET* TIME* FOR SNAPSGENERATE 300,0,0 GEN EVERY 300 UNITS OF TIME - STARTING NOW (8-OOAM)* NOTE RELATIVE TIME IS 0 WHERE ABSULTE TIME IS 4800 OR 8.00 OCLOCKTERMINATE 1START 18,,1 SNAP EVERY 1TERN (1/2 HOUR) TILL 5 OCLOCKENO

200

Page 211: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

r2 0 1

LIST OF PRINCIPAL SYMBOLS AND ABBREVIATIONS

symbol

n

A

#

t*

H-

%

S,.

'q r

m

Tr m

pa-ge

14

22

2222

23

26

36

45

67

76

77

T r[c ^ j,k , substitution ru le ] 78

79

80

in terp retation

replaced by

denotes n spaces, where n is some number

null string , void

end of card

asse rtio n sign

punctuation used in the contraction of rem ark s ' -

a sse rtio n sign of canonic system of canonic system of lim ited FORTRAN

denotes the le tte r 1 as in label, as distinguished from the number ’I 1 one.

end of card

se t of n-tuples corresponding to elem ents of an object system

denotes an n-tuple, where q denotes a p a rticu lar subset and r the m em ber of that subset

denotes a tran sla tio n . Cj,; denotes the n-tuple to be operated on, k the sca la r of that n-tuple, j the n-tuple, and i the subset

se t of n-tuples of the model

transla tion among the n-tuples of the model

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 212: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

A b b re v ia t io n s

a r g

def

info

loc

num

op

pref stand nu.m a ttr ib

ref

sna

sna*

stand num a ttr ib

stm

sym

var

argum ent

definition

inform ation

location

number

operation

prefix standard num erical a ttribu te

reference

standard num erical a ttribu te

standard num erical a ttribu te ■with ind irec t addressing

standard num erical a ttribu te

statem ent

symbol

variable

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 213: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

203

B IB U O G R A PH Y

1. L ackner, M ichael R. , "The dependency of a sim ulation language

on a theory of system s, " System Development Corp. • Document

No. T M -602/400 /00; January, 1963.

2. Jacobson, R obert V. , "D igital sim ulation of large-scaled system s, "

P roc . Spring Joint Com puter C o n t., Spartan Books, B altim ore ,

Md. . vol. 28, pp. 159-164; 1966.

3. G reenberger, M. , "A new methodology for com puter sim ulation, "

MIT P ro jec t MAC, Document No. M AC-TR- 13.

4. Clancy, J . J. and F ineberg , M. S ., "Digital sim ulation languages;

A critique and a guide, " P ro c . F a ll Joint Com puter Cont. ,

Spartan Books, B altim ore , Md. , vol. 27, pp. 23-36; 1965.

5. Lackner, M. R . , "Toward a general sim ulation capability , 11

Proc. Spring Joint Com puter Cont. , Spartan Books, B altim ore , Md. ,

vol. 21, pp. 1-14; 1962.

6. McMillan, C. and Gonzales, R. F . , "System s A nalysis, "

R ichard D. Irw in, Inc. , Homewood, 111. , Chapter 14, p. 323; 1965.

7. Sprowles, C . , "Sim ulation and m anagem ent control, " in "Management

contro ls: new d irections in basic re s e a rc h , " M cG raw -H ill, New

York, N. Y. , pp. 146-148; 1964.

R eferences [1 -7 ] a re concerned with the sim ulation of complex

system s. Some of the needs and deficiencies of ex isting sim ulation

methodology a re d iscussed in Cl, 23. The title s ox [3 ,4 ,5 3 e re

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 214: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

204

self-explanatory . R eferences [6. 73 a re text books dealing with sim ulation.

The term inology of this d isse rta tio n is for the m ost part consistent with

that used in these re fe ren ces . This d isse rta tio n is an a ttem pt to fulfill

some of the needs and deficiencies of existing sim ulation methodology

discussed in [ l -7 ]. In th is d isse rta tio n is presented a different view­

point of system s than is put fo rth in these re fe ren ces.

8. Church, Alonzo, "Introduction to m athem atical logic, 11 Princeton

U niversity P re s s , P rinceton , New Je rsey , vol. 1; 1956.

The subject of refe rence C83 is fo rm al logic. P re c ise definitions

of many of the te rm s used in the presentation of the com plete syntactical

specification of com puter languages found in this d isse rta tio n (Chapters

II and III) a re given by Church, (e. g. syntax, sem antics, p rem ise).

9. "G eneral Purpose System s Sim ulation III u sers m anual, " IBM

Data P rocessing Div. , 112 E ast Post Road, White P la in s, New York,

IBM F o rm No. H 20-0163-0.

10. "G eneral Purpose System Sim ulator III introduction, " IBM Data

P rocessing D iv ., 112 E ast P ost Road, White P la ins, New York,

IBM F o rm B20-0001-0.

R eferences [ 9 , 103 a re the m anuals of GPSS III. GPSS III is a

sim ulation language. In th is d isse rta tio n is p resen ted a com plete syntactical

definition of GPSS III and a d iscussion of its use . The syn tacticalA

constructions that a re am biguously o r in co rrec tly defined in these m anuals

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 215: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

205

have been co rrec tly defined in this d isserta tion . GPSS III is also used in

this d isserta tion to dem onstrate some techniques used in digital sim ulation.

11. Irons, E. T. , "A syntax d irected com piler for ALGOL. 60, 11 Comm.

ACM, vol. 4, pp. 51-55; January, 1961.

In reference [ l l ] is presented one of the f ir s t a ttem pts a t syntax

directed compilation. The specification presented in th is d isse rta tio n

may sim ilarly be used to make the syntax phase of com pilers independent

of the ir source language. It is im possible or difficult to exp ress many

of the constructions of existing com puter languages in the specification

used in C ll] . Using the specification presented in th is d isse rta tio n it

may be possible to achieve that aim of making the syntax phase independent

for any com puter language since the' specification may be applied to any

computer language.

12. Backus, J . W ., MThe syntax and sem antics of the proposed in te r ­

national a lgebraic language of the Z urich ACM-GAMM conference. n

P roc. In te rn a*1. Conf. Inform ation P ro cessin g , UNESCO, P a r is ,

pp. 125<rl.32j June, 1959.

13. Knuth, D. E . , "B ackus-norm al-fo rs vs. B ackus-N aur-fo rm , "

Comm, ACM, vol. 7, p. 735; D ecem ber, 1964.

14. B urkhardt, W. H . , "Metalanguage and syntax specifica tion ,"

Comm. ACM, vol. 8, pp. 304-305; May, 19 65.

15. Iverson, K. E . , " A method of syntax specification , " Comm. ACM,

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 216: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

2 0 6

vol. 7, pp. 588-589; O ctober, 1964.

16. Berm an, R. , Sharp, J . , and Sturges, L. , "Syntactical charts of .

COBOL 61, " Comm. ACM, vol. 5, p. 260; May, 1962.

17. Huskey, H. D. , Love, R. , and W irth, N. , "A syntactic descrip tion

of BC NELIAC, " Comm. ACM, vol. 6, pp. 367-375; July, 1963.

18. Naur, P. , e t a l . , "Revised rep o rt on the algorithm ic language

ALGOL 60, 11 Comm. ACM, vol. 6, pp. 1-7; January, 1963.

19. Rabinowitz, I. N ., "Report on the algorithm ic language FORTRAN II, "

Comm. ACM, vol. 5, pp. 327-337; June, 1962.

20. Shaw, C. J . , "A specification of JOVIAL, " Comm. ACM, vol. 6,

pp. 721-736; D ecem ber, 1963.

21. Taylor, W. , T urner, L. , and Waychoff, R. , "A syn tactical ch art

of ALGOL 60 ," Comm. ACM, vol. 4, p. 393; Septem ber, 1961.

22. W irth, N. , "A generalization of ALGOL, " Comm. ACM, vol. 6,

pp. 547-554; Septem ber, 1963.

23. 'COBOL 61, rev ised specifications fo r a common business-o rien ted

language, " U. S. Govt. P rin ting Office, W ashington, D. C. ,

0-598941; 1961.

24. Brown, S. A ., D rayton, C. E. , and M itt m an, B . , "A descrip tion

of the APT language, " Comm. ACM, vol. 6, pp. 649-658;

November, 1963.

In re fe ren ces C l2-243are a ttem pts to fo rm ally specify portions of

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 217: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

207'Zv•/S

the following languages by g ram m ars which a re equivalent to a context

free phrase s tru c tu re g ram m ar; ALGOL, JOVIAL, FORTRAN, NELIAC,

APT, COBOL, BALGOL. These rep resen ta tions a re useful; however,

many constructions of ex isting com puter languages a re difficult or

im possible to express in them , and in some cases sim ply have not been

defined in them . E.g. , column form at, the re s tric tio n s that a ll statem ent

labels m ust be d ifferent, that a ll reference labels m ust correspond to

statem ent labels in the same program , a ll subscrip ted variab les m ust

be declared. The specification presented in th is d isse rta tio n can be used

to express a ll of these constructions.

Sammet, J. E . , "B asic elem ents of COBOL 61, " Comm. ACM,

vol. 5, pp. 237-253; May, 1962.

M cCracken, D. D. , “A Guide to COBOL Program m ing, " John

Wiley and Sons, Inc., New York, N. Y. ; 1963.

Nauer, P . , "A C ourse of ALGOL 60 P rogram m ing , " R egnecentralen,

Copenhagen, Denm ark; 1961.

Bottenbruch, H. , "S tructure and use of ALGOL 60, 11 J . ACM,

vol. 9, pp. 161-221; A pril, 1962.

Schwarz, H ., "An Introduction to ALGOL, " Comm. ACM, vol. 5,

pp. 82-95; F eb ru a ry , 1962.

Knuth, D. E . and M erner, J . N ., "ALGOL 60 confidential, " Comm.

ACM, vol. 4, pp. 268-272; June, 1961.

Reference M anual, 709/7090 FORTRAN P rogram m ing System ,

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

25.

26.

27.

28.

29.

30.

Page 218: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

IBM F orm No. C28-6054-2.

32. Huskey, H. D. , H alstead, M. H. , and M cArthur, R. , "N eliac—-

a dialect of ALGOL., " Comm. ACM, vol. 3, pp. 463-468; August,

1960.

33. D ijkstra , E . W. , "A p rim er of ALGOL 60 program m ing, M Academic

P re s s , New York, N. Y. ; 1962.

R eferences [25-333 a re expositions of the languages which had

portions of th e ir syntax form alized in [12-24 3-

34. B rooker, R. A. and M o rris , D. , "A general transla tion program for

p h rase -s tru c tu re languages," J. ACM, vol. 9, pp- 1-10;

January, 1962.

35. Cheatham, J r . , T. E . and Sattley, K. , "Syntax-directed compiling, "

P roc . Spring Joint Com puter Conf. , Spartan Books, B altim ore,

Md. , vol. 25, pp. 31-57; 1964.

36. Conway, M. E . , "Design of a separable tran sitio n -d iag ram com piler,

Comm. ACM, vol. 6, pp. 396-408; July, 1963.

37. Irons, E . T. , "An e rro r -c o r re c tin g parse a lgorithm , " Comm. ACM,

vol. 6, pp. 669-673; November, 1963.

38. Ledley, R. S. and W ilson, J . B. , "A utom atic-program m ing-

i language tran s la tio n through syntactical an a ly sis , " Comm. ACM,

vol. 5, pp. 145-155; M arch, 1962.i

L

39. Mayoh, B. H. , " Iro n s’ procedure DIAGRAM, " Comm. ACM

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 219: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

(letter of correction), vol. 4, p. 284; June, 1961.

40. W arshall, S. , "A syntax-d irected generator, " P roc . E aste rn

Joint Computer Conf. , Spartan Books, B altim ore, Md. , vol. 20,

pp. 295-305; 1961.

R eferences [34-40] a re studies in syntax directed compilation.

The aim of these works was to investigate ways to design com pilers whose

syntax phase was independent of its source language. That is, sev era l

source languages could be used with the sam e com piler. This aim was

not reached for existing com puter languages. Using the specification

presented in th is d isse rta tio n it may be possible to achieve that aim for

any com puter language since the specification m ay be applied to any

computer language. If a program w ere w ritten to accept any specification

of the form presented in this d isse rta tio n and then to proceed to recognize

strings of the language defined by the specification, the syntax phase of

any com piler could be independent of its source language.

41. Ginsburg, S. and R ice, "Two fam ilies of languages re la ted to

ALGOL, " J. ACM, vol. 9, pp. 350-371; 1962.

42. Ginsburg, S. and Ullian, J . , "Ambiguity in context free languages, "

J. ACM, vol. 13, pp. 62-89; January , 1966.

43. Ginsburg, S . , "Quotients of con tex t-free languages, " J . ACM,

pp. 487-492; 1963.

44. B ar-H ille i, y . , P e r le s , M. , and Sham ir, E . , "On fo rm al p roperties

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 220: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

210

46

47.

48.

49.

50.

51.

R eproduced with

of simple phrase stru c tu re g ram m ars , " Applied Logic Branch,

Hebrew Univ. of Jerusa lem , Tech. Rept. No. 4; I960. Z eitsch rift

fur Phonetik, Sprachw jssenschaft und Kommunikationsforchung,

vol. 14, pp. 143-172; 1961. Sum m arized in Comp. Rev. , vol. 4,

pp. 213-214; Septem ber-O ctober, 1963.

Cantor, D. G. , "On the am biguity problem of Backus system s, "

J. ACM, vol. 9, pp. 477-479; O ctober, 1962.

Chomsky, N. , "On ce rta in fo rm al p roperties of g ra m m a rs ," Inf.

and Control, vol. 2, pp. 137- 167; June, 1959. (Addendum) "A

note on phrase s tru c tu re g ram m ars, " Inf. and Control, vol. 2,

pp. 393-395; D ecem ber, 1959.

Chomsky, N. , "F orm al P ro p e rtie s of G ram m ars, " in "Handbook

of M athem atical Psychology, " John Wiley and Sons, In c ., New

York, N. Y. , vol. 2, pp. 323-418; 1963.

Floyd, R. W. , "On the non-existence of a phrase s tru c tu re gram m ar

ALGOL 60, " Comm. ACM, vol. 5, pp. 483-484; Septem ber,

1962.

Floyd, R. W. , "On am biguity in phrase s tru c tu re languages, "

Comm. A CM, vol. 5, pp. 526, 534; O ctober, 1962.

Gorn, S. , "Detection of generative am biguities in context- free

m echanical languages, " J. ACM, vol. 10, pp. 196-208; A pril,

1963.

G reigach, S. A. , "The undecidability of the am biguity problem for

m inim al lin ear g ram m ars . " Inf. and Control^ vol. 6, pp. 119-125;

June, 1963.

perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 221: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

211

52. Landweber, P . S. , "Three theorem s on phrase structu re g ram m ars

of type 1, " Inf. and Control, vol. 6, pp. 131-136; June, 1963.

53. Matthews, G. H. , "Discontinuity and asym m etry in phrase s tru c tu re

g ram m ars, " Inf. and Control, vol. 6, 137-146; June, 1963.

54. Schutzenberger, M. P. , "On context-free languages and pushdown

autom ata, " In f. and Control, vol. 6, pp. 246-264; Septem ber,

1963.

55. Oettinger, A. G. , "Automatic processing of natural and form al

languages," P ro c . IF IP C ongress, pp. 1-16; 1965.

56. F isch er, P . C. , "On form alism fo r T uring M achines, J . ACM,

vol. 12, pp. 570-580; 1965.

57. Samelson, K. and B auer, F . L. , "Sequential form ula transla tion , "

Comm. ACM, vol. 3, pp. 76-83, F eb ru ary , I960.

58. Floyd, R. W. , "The syntax of program m ing languages - a survey, "

IEEE T ran s , on E lectron ic C om puters, pp. 346-353; August, 1964.

59. H artm anis, J. and S tearns, R. E . , "On the compututational com plexit

of a lgorithm s, " T ran s , of the A m erican Math. Society, vol. 117,

Issues, pp. 285-306; 1965.

60. Wang, H. , "F orm alization and autom atic theorem -proving , "

P roc . IF IP C ongress, pp. 51-58; 1965.

61. Matthews, G. H ., "D iscontinuity and asym m etry in phrase s tru c tu re

gram m ars, Inf. and C ontrol, vol. 6, pp. 137-146; 1963.

R eferences [41-54] a re studies in the genera l theory of phrase

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 222: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

struc tu re g ram m ars, [55-613 a re studies in the theory of languages and

autom ata. These w rite rs have presented proofs of insolubility and

am biguities associa ted with phrase struc tu re g ram m ars . They have

studied the construction of parsing system s. The m ost valuable th eo re tica l

insight gained into these d iverse system s is the rea lisa tio n that th e ir

d iversity is, in a sense, only superfic ial. Many of these system s have

been shown to be equivalent to context free phrase s tru c tu re g ram m ars .

This rea liza tion of equivalence among these g ram m ars is used in th is

d isserta tion to c lassify a ll the specifications of [12-24] as context free

phrase struc tu re g ram m ars . Hence, these specifications cannot com pletely

classify the syntax of a ll com puter languages because many com puter

languages a re context sensitive [65, 66].

If a link between Chom sky's work [46 ,47] and the specification

presented in this d isse rta tio n could be estab lished many of the theorem s

stated and proven in the above w orks would become applicable to the

specification. This d isse rta tio n uses Chom sky's [46 ,47] definition of

phrase stru c tu re g ram m ars .

62. Van W ijngaarden, A ., "R ecursive definition of syntax and sem antics,

IF IP Working Conf. , Baden; Septem ber, 1964.

63. Feldm an, J. A . , "A fo rm al sem antics for com puter languages and

its application in a co m p ile r-co m p ile r, " Comm. ACM, vol. 9,

pp. 3-9; January, 1966.

64. W irth, N. and W eber, H ., "EULER, a generaliza tion of ALGOL

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 223: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

r213

and its form al definition, PART I , " Comm. ACM, vol. 9,

pp. 13-23; January, 1966; PART II, Comm. ACM, vol. 9, pp. 89-

99; F ebruary , 1966.

These works [62-64] a re approaches to the problem of form alization

of the sem antics of com puter languages. If the sem antics of a computer

language is form alized, then the syntax should also be form alized. The

above works use a context free phrase struc tu re g ram m ar to specify

the syntax of com puter languages and thus suffer the lim itations and

difficulties of [ 12-24] - [65-66]. Namely, many syntactical constructions

of existing computer languages a re difficult or im possible to express

in them. The specification presented in th is d isse rta tion may be used to

express these constructions.

65. G ilbert, P. , "On the syntax of algorithm ic languages, " J. ACM,

vol. 13, pp. 90-107; January, 1966.

66. D iForino, A. C. , "Some rem ark s on the syntax of symbolic

program m ing lan g u ag es ," Comm. ACM, vol. 6, pp. 456-460;

August, 1963.

C ontext-free g ram m ars have been used in attem pts to describe

languages such a s ALGOL. D iscrepancies a r is e in such use; ALGOL,

for example, is not context free because it contains data-defining

statem ents as well a s definition-dependent data use. The above a rtic le s

[65, 66] and that of Floyd [58] point out such d iscrepancies in the use of

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

r

L

Page 224: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

214

context free g ram m ars to describe com puter languages. Using the

specification presented in this d isse rta tio n it is possible to exp ress the

constructions that these re fe ren ces state a re not expressib le in context

free g ram m ars and, hence, not expressib le in any known specification

for computer languages.

67.. More, T. , "Relations between sim plicational c a lcu li," P h .D .

d isserta tion , MIT, Cam bridge, M ass. ; May, 1962.

68. Smullyan, R. M. , "Theory of F o rm al System s, " P rinceton

U niversity P re ss , P rinceton , New Je rsey ; 1961.

69. Post, E. L>., "Form al reductions of the general com binatorial

decision problem , " A m erican Journal of M athem atics, " vol. 65,

pp. 197-215; 1943.

70. Rosenbloom, Paul C. , "The E lem ents of M athem atical Logic, "

Dover Publications, Inc. , 1780 Broadway, New York 19, N. Y. ;

1950.

This d isse rta tio n has applied known m ethods of recu rsiv e definition

to the development of a com plete syntactical specification of a com puter

language. The specification is a m odification of the work of [6 7 ], The

modifications have made th is work applicable to program m ing languages.

M ore’s work is an applied varian t of Smullyan*s e lem entary fo rm al system s

[683 and Po&to canonical system s fiS93. P o s t 's w ork is explained in [7 0 ].

These works a re the basis of the specification p resen ted in th is d isse rta tio n .

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 225: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

215

71. Gordon, G. , "A general purpose system s sim ulation program , 11

AFIPS, vol. 20, pp. 87-104; 1961.

72. M arkowitz, H. M. , H ausner, B . , and K arr, H. W. , "SIMSCRIPT,

P ren tice-H all, In c ., Englewood C liffs, N .J . ; 1963.

73. Donovan, John J. , "GPSS under Yale DCS-IBSYS, " M emorandum

No. 70, Yale Computation C enter, Septem ber, 1965.

R eferences C71-723 a re expositions of two sim ulation languages,

GPSS and SIMSCRIPT. These languages a re the m ost widely used

languages for digital sim ulation of complex system s. This d isse rta tio n

presents a d iscussion of the use of these languages and an analysis of the

syntax of GPSS. An example of a digital sim ulation using these languages

is given.

In reference [73] is presented the system s program that m ust be

placed before every GPSS III program that is to be executed on an IBM

DCS 7094-7040.

74„ Donovan, J. J. f McKay, D ., Seligson, D ., and Wogrin, C. A .,

"An analysis of a c lin ical chem istry lab o ra to ry using sim ulation, "

subm itted for publication; 1966.

In reference C74j is presented an analysis of the organization,

procedures, and future configuration of a c lin ica l chem istry labora to ry .

This analysis was perform ed using sim ulation. Insight into the many

problems of introducing data processing equipm ent is presented in th is

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.

Page 226: Investigations in Simulation and Simulation Languages …web.mit.edu/jjd/www/documents/Donovan,_John_J... · DONOVAN, John Joseph, ... INVESTIGATIONS IN SIMULATION AND SIMULATION

2 16

reference. In this d isserta tion portions of the sim ulation of a c lin ica l

laboratory are used to dem onstrate the d igital sim ulation techniques

presented.

75. More, Trenchard, Class notes Applied Discrete Mathematics, Yale University, New Haven, Connecticut,; spring 1965, fall 1966.

76. Oettinger, A., "The Uses of Computers in Science," Scientific American, Vol. 215, p. 160; September 1966.

R eproduced with perm ission of the copyright owner. Further reproduction prohibited without perm ission.