-
THE LATTICE
OF
FLOW DIAGRAMS
by
Dana Scott
Oxford University Computing Laboratory
Programming Research Group
セON|IGZ
iセB
,
I
...
.
....,""",..,..:4"
セGB N L
. "!,
'>
I '''''I It11
J
C",
THE LATTICE
OF
FLOW DIAGRAMS
by
Dana Scott
Princeton University
Technical Monograph PRG-3
November 1970
(l'epl'illttod
u」エッ「セャG
1Y7l:;)
Oxford University Computing Laboratory.
Programming Research Group,
4S Banbury Road,
Oxford.
';l-...,
UA, ::'UQ
HBGセ」イZoヲスャ
© j970 Dana Scotr
Depar;::;;Jent of Philosophy,
1879 r:211,
Prir.ceton Uni versi ty,
Princeton, New Jersey 08540.
This pa.lJer also appears in Symposiu.m on Semantics
QョセeZ
leI' (ed.), Lecture
Notes in Ma.thematics Volume 188, s ー イ ゥ ョ セ ・ イ M B ・ i G ャ 、 F L
lleidelberg, 1971, and appeilrs as a TechniCdl Monograph
by special arrangement with the publishers.
of A Zgol'i thmic Langu.agQs, 1t'W'in
References in tile lirerature sbe ld be ;:jade to
t"he Springer Series, as rhe texts are dentical and the
Lecture Notes are generally 。 カ ゥ ャ 。 「 セ ・
n libraries.
ABSTRACT
This paper represents a continuation of the program sketched
in Outline of a Mathematical Theory of Computation (PRG
The language under consideration is the elementary
2),
ャ。ョァオ。ァセ
flow diagrams where the level of analysis concerns the
of
ヲャッGセ
of control but not any questions of storage, assignment. block
structure or the use of parameters.
A new feature of the
approach of this paper is the treatment of both syntax dnd
semantics with t-he aid of complete lattices.
This provides
considerable unification of methods (especially in the use tf
recursive definitions) which can be applied to other languages.
The main emphasis of the paper is on the method of semanticcl
definition, and though the notion of equivalence of diagrams
is touched upon a full algebraic formulation remains to be done.
CO:-iTIl\TS
Page
o.
Introduction
1.
Flow 8iagrar::s
2•
cッョウエイオ」エゥョセ
3.
Completing the
4 •
The
s.
Loops alld Other Infinite
6.
The Semant ics of Flow Diagrams
7.
The ,'1eaning of a
Lattices
aセァ・「イ。
of
8.
Equivdlence of
9.
Conclusion
References
12
lセエ ゥ」・
19
dゥ。ァイセュウ
?\
セゥ。^[イ。ュウ
セZ[lゥャ・
l」セI_
セゥ。ァイ。ョjウ
i1
38
4
セL
48
55
57
TilE LATT! CE
OF
FLOi', DlAGR.!I.MS
O. INTRODUCTION
This pLlper represents an initial chaptu
in a development of a mathemaTical theory of computation bdsed
))1
la1:tice theory and especially on 1:he use "f con1:inuous functior,s
defined on complete la1:tices.
may consult Scott
Le1: D he a
For a general
ッイゥ・ョエ。 ゥHセイ
•• the
イセ。、・イ
(1970).
complete lattice.
l;,
.1,
We use the symbols:
T,u,n,U,n
to denote respectively the partial Opde1'7:ng, the "Least element, the
greateEit element,
the joi7l of two element;,;, the meet of two elenents,
the join of a set of elements, and the meet of the se1: of elements.
The definitions and mathematical properties of these notions ca: he
found in many places, for example Birkhoff (1957).
Our notatiOll is
a bi1: altered from the standard notation to avoid confusion wit e the
differently employed notations of set theory and logic.
2
The main reason for attempting to use lattices systematically
throughout the discussion relates to
following well-known result
セィ・
of Tarski:
THE FIXED-POINT THEOREM.
Let l:O .... 0 be a monotonic fu.nction
0
defined on the complete lattice
and taking values also in
D.
Then
f has a minimal fixed point p = f(p) and in fact
=
p
nCr
E
xl .
D:f(x) !;
For references and a proof see Bir-khaff (1970), p. lIS, and Bekic
A function is called monotonic if whenever x. y E D and
(1970).
:r!; y, then f(x)!; fCy).
Clearly, from the definition of p the
element is !; all the fixed points of f
(if any).
The only trick is
to use the monotonic property of f to prove that p is indeed a fixed
point.
In the case of continuous functions we can be rather more
specific.
Continuous functions preserve limits.
It turns out that in
complete lattices the most useful notion of limit is that of forming
A subset X
the join of a directed subset.
セ
0 is called
、ゥセ・。エ・、
if
every finite subset of X has an upper bound (in the sense of !;)
belonging to
empty.
x.
This applies to the empty subset, so X must be non-
This also applies to any pair x. y ex. so there must exist
an element B e X with x U Y
セ
B.
An obvious example of a directed
set is a chain:
X = LrO,xl, •••• xn, .•.
l
where
:1: 0
セ
xl!; .,. !;
:1:
n
セ
..•.
The limit of the directed set is the element
Ux.
In the case of a
chain (or any sequence for that matter) we write the limit (join) as:
O:1: n
n=O
,
A function f: D -
0
is called
contin<.<ol.<s
if whenever xeD is directed,
then
f<UX)
セ
Ulf(x)"
E
xl
It is easy to show that continuous functions are monotonic.
Note,
too, that the definition also applies to functions !:D --. 0' between
two different lattices; in which case we read the right-hand side of
the above equation as the join-operation in the second lattice 0',
In the case of continuous f: 0 ... D, the fixed point turns out to be:
p
Of"<»
11=0
where fO(J:) =
J:
and [''1+1(J:) :: !(/n(;r;)).
This all seems very abstract, but there is a large variety of
quite usefUl complete lattices, and the fixed-point theorem is exactly
the right way in which. to introduce functions defined by recursion.
This has been known
for a long time, but the novelty of the present
study centers around the choice of the lattices to which this idea may
be applied.
In particular, we are going to show that the familiar
flow diagrams can be embedded in a useful way in an interesting complete lattice, and
エィ・セ
that the semantics of flow diagrams can be
obtained from a continuous function defined with the aid of fixed
points.
Of course. t::his is only one small application of the method,
but it should be inst::ructive.
1 ,flOW DIAGRAMS,
like Figure 1.
Intuitively, a flow diagram looks very roughly
There is a distinguished
input information "flows" and an s.:dt
or output will (hopefUlly) come.
goes on inside the "black box·'.
tive
ッー・イ。エゥッセ
ーッゥセエ
・セエャGy
ーッゥセエ
into which the
out of which the result
The main question. then, is what
Now, the box may represent a primi-
which we do not analyze further, or the box may be
compounded from other diagrams.
A trivial example of compounding may be the combination of
diagrams whatsoever.
セ」
The result is the "straight arrow" of Figure Z.
4
⦅Nセ
セ
Fioure
I
Fioure
THE
A FLOW DIAGRAM
2
IDENTITY
r----------...,
-.,..;·1
d
H I;·
d'
JI
L
Fioure
3
Fioure
A PRODUCT
r--------,
I
I
I
1
I
I
1
-7"'1セ
I
I
I
I
I
1
_
I
I
I
1
I
J
L
Fioure 5
A
SUM
・イオセHゥf
A
4
A SWITCH
6
LARGE DIAGRAM
5
The in1oI'::Jdtion flowing a:ong SLch Oi.:::'hanr.el exits untransformed;
and
so
that diagram represents the identity function.
trivial compound is
a
ーイッ、セ」エL
shown in Figure 3.
セョ
A non-
this combination, called
ゥセᆳ
the output of the first box is fed directly into the
put of the second with the obvious result.
'tJith products
mation flows,
alone
not much useful could be done.
As infcr-
it must be tested and switched into proper channels
according to the outcomes of the tests.
For these switches
we shall
aSS'-.lme ::'or simplici ty in this paper that a fixed stock of primitive
ones are given.
This
is not a serious restriction, and the method
can just as well be applied when various forms of compounding of
switches are allowed.
We shall assume, by the way, that information
flowing through a switch, though tested, exits untransformed.
In
diagrams
イ・セ
a switch is represented as in Figure 4.
In case the
suIt of the test is pQsitive, the information flows out of the top;
if negative, from the bottom.
gram because it has
two exits,
A switch by itself is not a flow diaIf these "wires" are attached to the
inputs of the two boxes, and then if the outputs of the two bOxes
are brought together, we have a proper flow diagram.
in Figure 5.
It is shown
We call this construction a sum (of the two boxes) :or
short, but it is also called a oonditional because the outcome is
conditional on the test.
Sums and products are the basic compounding operations for
flow diagrams; iterating them leads to large diagrams such as the one
shown in Figure 6.
Here, the primitive boxes and switches have been
labeled for reference and to distinguish them.
The attentive reader
will notice that we have cheated in the diagram in that the (-) and
(+) leads from b
l
and b
2
have been brought together.
for doing this was to avoid duplicating box [4'
such shortcuts are not allowed:
The reason
Strictly speaking,
all repetitions must be written vut.
The diagrams will thus have a "tree" structure with switches at the
6
セゥエィ
branch points and
along
tl'€
strings of boxes
Hセ・
branches.
、イ。セ
of the tree all the lea;Js
H。セケ
these trees
nur.ber including zero)
ウゥ、・セ。ケウNI
:Oro'.1ght together fo:- the output.
d.c€
What is wrong in figure 57
セウ
That is to say, what
:::cr.o,
Obviously, the ans'.·wr is that there are no
grams permit feedback around loops.
セウ
At the "top"
The proper
all
good ::'101.' ,jia-
to allOW looping
lHy
discussed in the next section; first, we must connect
grams in the intuitive sense '..,lith the mathemac.ical
Some notation (.Jil1 help.
lacking?
エセl・ッイO
T",'e. helve already used
セャッキ
diaセエB
lattices.
the notation
D ,D ,b , · · ·
2
O 1
Zセッ⦅Lヲj
lor the switches and
「ックセウL
or binary; while the
"F"
oセ
tions
';'-"2""
information.)
recalls
bセッャ・。ョ
is used because the boxes represent .r"uncFor the identity (or "d'J;nmy") diagram we may
Suppcse J
use tne notation I.
(The "]"
res?ectively.
。セ、
d' are two diagrams,
then the
product is denoted by:
U.;d' )
where :he order is the saIT.e left-right order as ill rigure 3.
The
sum is written:
U'J ..... :i,d')
whi::,; is the familiar "C8nditional expression" used
tセ
form for diagrams.
OlO'-> (fO;(I1;(b
here in an adapted
djagram of Figure 6 may now be written as:
l
..... .r'3,i 4 ) ) ) , ( f 2 ;(b
2
....
,.f'4,t S ) )
':"his expression has molLY too :;lany parentheses, bU1: we shall have to
ーイッ「ャ・セウ
of
case, it is clear
エセ。
discuss
・セ ゥカ。セ・ョR」
before we can eliminate any.
5U1";'_
a
of diagrams we may talk of expressions
ゥセウ ・。、
gene:ated from the .-I'i and
i
,md product operations.
b:t
セッイ・
In any
by repeated applications of the various
The expressions may get long, but it is
obvious what we are talking about.
7
The totality of all expressions obtained in the way described
above is a natural and well-determined whole, but just the same, "e
are going to embed i t in a much larger complete lattice by a methcd
similar to the expansion of the rationals to the reals.
The firs1
step is to introduce a sense of approximation, and the second ster
is to introduce limits.
In our particular case, a very convenient
way to achieve the desired goal is to introduce approximate (or:
partiaL) expressions
which interact with the "perfect" expressions
we already know in useful ways not directly analogous to the common
notion of approximation in the reals.
way to treat reals,
however.)
(There is an exactly parelJel
Existing between approximate expresセ
sions is a partial ordering relation
which provides the requirec
sense of approximation of one expression by another.
the details of setting up
We now turn to
this relation.
If the relationship
d i; d'
between partial diagrams is to mean that d approximates d', then
it seems very likely that in a large number of cases d can approximate many different; d'.
In particular, we may as well also assullie
the existence of the worst (or most incomplete) diagram
セ
which
approximates everything; that is,
.1
will hold for all d'.
i; d'
In pictures we may draw
whose contents are undetermined.
.J.
as a "vague" box
Now, these incomplete boxes may
occur as parts of other diagrams, as has been indicated in Figure 7.
The expression for Figure 7 of course would be written as:
(b
O
..... (fO;.J.).(f1;(b
l
-->
f
2
,I)))
If we are going to allow incomplete parts of diagrams, then we
must also allow ourselves the option of filling in the missing parts.
5
r
I
- --,
I
1
IL
Figure
I
..J
7
r----,
I
I
AN INCOMPlE,E DIAGRAM
I
+
r---'
I
I
I
IL..
⦅QセM
..J
Figure
8
1
L
I
..J
r---'
r
IL
I
I
I
oJ
r---,
A PRODUCT OF
TWO INCOMPlETES
I
I
1
I
I
..J
L..
Figure
9
A SUM OF TWO
INCOM PlETES
セ
Figure
10
THE OVERDETERMINED
DIAGRAM
9
Thus, if d is incomplete, then a more precise reading of the reld-
tionship
d
is that d
t
is like d
.1
!;;;" d'
d'
except that some of the parts left vague in ,1
have been filled in.
ship
セ
rhat reading is quite correct for the relation-
that must always hold.
the desired results
In compound cases we can assure
by assuming that sum and product formations dre
monotonic in the following precise sense:
i f dO
セ
d 1 and Qセ
(dO;d O) セ
(oJ.
セ
then
(d 1 ;di) and
-+
ell,a:!)
。ウ セュ・、
must be
Hセ
itive, and antisymmetroic
di.
,1 ,d ) !;;: (b
j
0 O
--->
Besides this, the relation
セ
to be reflexive, tro,zrrB-
is a partial ordering).
As an illustration we could fill in the box of figure 7 anj
prove by the above assumptions that:
(b
O
-
(fO,.l),(f1;(b
l
--->
f
2
,I))) セ
(b
O
.... (fO;(!l;fO»,(fl;(b
l
..... f
2
,I»)
In working out these relationships it: seems reasonable to assume in
addi tion that:
;.L)
(.1
but: riot to assume that:
(b
U
.....
.1,.1)
セNQ
as may be appreciated from the pictures in figures 8 and 9.
for the sake of mathematical symmetry (and to avoid making exceptions in cert:ain definitions) we also introduce an except:ion21
diagram denoted by
T about which we assume:
d [;:
for all d.
and
T
We can
think of
.1
as being overdetermi'ied.
T
as being the
The diagram
オイャ、・イ、・エ イュゥtャセj
diagram,
T
is something like a
short circuit -- we will make its "meaning" quite precise in the
section on semantics.
We assume that
10
( T ; T )
T,
b'..lt no t :hat
(bj"'T,T)"'T,
Other equa-
again fc;, reasons that will be semantically motivated.
tions tr1at might seem reasonable (say, (d;T) '" T) are postponed to
the disclJssion of equivalence.
Taking stock of where
are now, we can say that we begin with
WE
certain "atomic" symbols (representing elementary diagrams); namely:
fo,f 1'"
.1,
•
,fn"
•• ,1 • T
T:'len, we form all combinations generated from these using:
and (b
H、[ セjM
j
-. d,d').
These ex:Jressions are partially ordered by a relation
セ
about which
we demand first that
1.1;dr;T
for all di and then which we subject to the reflexive, transitive,
。セ、
monotonic laws (the so-generated relation will automatically be
d:1tisymmetric) .
This is the "symbolic" method which is quite reasonable and is
well motivated by the pictures.
We could even pursue it further and
make the totality of expressions into a lattice in the following way.
tセ・
join and meet operations must satisfy these laws:
dUd'
d n d'
d' U d
=
d' n d
=
n d
d
d
d
d U
.1
=
d
d
n ,
,
d
T
-
T
d n ,
d
dUd
U
In addition for the atomic expressions other than
st ipulate:
fi
f.,
U
U
f
I
.,
j
=
,
f·1, n f·J •
.f., n
I
'"
,
,
.1
and
T
we
11
where i
f.
For the case of products we have:
j.
=
(.L ,1-)
(T; T)
.1
:::
1
and in the following assume that the pair J,d'
exceptional pairs
f. i
(b
f
i
or T,T:
1- ,.1
=
U (d;J')
....
J
do,d
U (b
)
O
dO
-+
3
f i n (d;d ' ) :::
T
U
(J;d')
,dO) =
(b
r.i
T
where do,d
O
-+
j
,
dO ,do)
is arbitrary.
セ
j
dO,d
n
(b
n
I
(OJ
.L
o) n
.... do,d
j
In Cd;d')
IUCd;d')=T
I U (b
is not either of the
-+
Cd;d'l :::
O
)
=
1-
1
-=.L
do
Moreover, for any two pairs J
,do)
L
u ,d6 and
dl,di we assume:
(dO;d
DU d l )
(do n dl;d Dn di)
O) U Cd l ;di)
(dO U dl;d
(dO;db) n Cd l ;di) =
Cb
Cb
J
J
-+
dO,d o) u ,<'?J
.... dO ,dO) n
(b
j
,J
l)
=
H「セャ
-->
d
-+
dl,di) = (b
1
.... dO U dl,d O U
j
.... dO
dU
n dl,d O n di)
Finally, it" m"ight seem reasonable "to assume;
,
(b . -dO,db)U (b
k .... d1,dU
J
(b.
J
when J
f. k; but we
---.. dO
,dO) n
(I:;/<
-->
dl,dU
セ
セ
,
postpone this decision.
This large number of rules allows us to compute joins and meets
for any two expressions (in a recursive way running from the lor.ger
to the shorter expression), and it could be shown that in this
セ
the expressions do
indeed fcrm a lattice with the
parcial ordering.
The proof would be long and boring,
always the case with symbolic methods.
relation as the
however, as is
The reasons one must exercise
care in chis approach are in the main these two:
that all cases are
セ。ョ ・イ
one must be sure
covered, and one must be certain that different
orders in oarrying out symbolic operations do not lead to inconsistenT
12
Now, it would be quite possible to do .:ill this for our con-
results.
struction of the la.ttice of diagrams. but it is quiTe
unneoessary
because s better method is available.
The ideil. of the better approach is to work wi th
a.re knowM to be lattices from the very start; hence
haVe to :heck th", lat:-i::e laws except in SOIT.e trivial
structures that
we shall never
cases.
Next,
some operations on structures art:' carried out wr:ich are known to
transforrl lattices int<:;1 lattices (in our case this '.. i l l correspond
TO the fermat ion of compound expressions).
finally,
main vir:ue of the approach) the extensiun tc a cO"lplete
Njセウ」イゥ G・、
f:lay be
セィ・
in a neat way.
extent :,) which it has been
。、ェオョ」エゥセtBゥ
。ー ャGッNセィ・ョ、・
lattice
lattice of expressh·ns to the
up "':0 t:Jis point is not com-
plete;
、セ
the
"are:
:1€
structural 0.pp::ooach will make the exercise
of limi t8 requires
more or 1<:::55 dutomat ic.
this is the
(ane
I t must
tie stressed,
J. ョ ゥ 。 エ イ ・ セ
ar::OG.nt cof
of this care
that after
ィッキ・カセイ_
the desired structures are creclted as lat"tices a certain amount of
drgUr:lent is required to see thaT the STrUC'·'.;res con:orr:' to our ir!t.Jitiv€ ide'!.s about eXFressions.
Though necessary, this
will n0t be
difficult, as we demonstrate in the next section.
RNセonstructing
are
エイyセZQァ
and I.
ate I
LATTICES.
to construct
The initial part c:f the lattice we
」セIイ ・ウーッョ、ウ
to the atomic symbols. 0': 1"
.
3ince these symbols play slightly different roles, we separfrom the others.
;Jow, all we really knew abOlt
t":1ey are pairwise distin::T; 'lenc",
them by elements
0:
セ
it will be
ウオヲセゥ」 ・ョエ
is that
to represent
lattice illustrated in figure l l .
tures of lattices the partial ordering is represented
Ii
the
In s·.Jch pic-
by the ascend-
ing lines, the ·..."'aker (smaller) element.:; are below and the stronger
(larger) elements are above.
(By the way, a lattice
is not a flow
diagram; the two kinds of pi:='tures should not be confused.
trying to make flo·... Jid8rams eLements of a lattice.)
We are
What the
m
rl
,..-.
......
..........
w
U
1-0
0
0--<
i=
N
セ
I;i
--'
セ
I-
w
セ
セ
ii:
i=
VI
w
u
i=
••
•
lL
...
ヲMセ
0
w
i=
--<
j
!,
セ
ii:
w
J:
I-
...J
0
セ
l-
U
I-
I;i
II
セ
+
:::E
:::>
セ
VI
セ
セ
セ
ii:
w
F
14
pict'-.lre :£ ':ne
ッイ、・イゥョセ
la""[<::i::e F :..., ?ig'.lr'€ 11 sno.... s is
セィ。エ
the 'J::1y par1:ial
relations allOWed are:
セ
_'"' !;;:
T
for '" 11
IrJ figurL' 12 '.,;e
セ・ウゥェeZ
:k
1
anc
T
have a representalion of '[he
ャ。エ ゥLセ・
[I}
eler.lents has only one main eler:1er.t
which
i-o: should
I.
be menti"ned in setting up these partial orderings that to check that
ヲoセGャ
they
comp12"te lattices means that every subset of the partially
ordered 5et must have a least upper bound (its join)
セョ
far t'he reS'.Jlt
In the two cases we have so
of the p:lrtial ordering.
the sense
is abv le..ls.
SU;Jpose now that
partial orderings セ
D and 0' are two given complete lattices with
and i;::
T.
respectively.
Inasmuch as
structur2 that is important. we Day assume as sets :;f
o
and 0' are disJ"oint.
unified lattice:
it is only
elellents that
'"Ie wish to comt-ine 0 and 0' together in une
it '..... ill be called the sum :Jf the :wo lattices and
will be jenoted 1y
0+0'
Z ウ ・ョエセ]NセャケL
it is just the
ZLPQセ G BA
of the two sets s:ruct;Jred by the
"union";:Jf the two parrial order'ing relations.
is
This
partial ordering
not a lattice, however, hecause there is no largest and no small-
es t
e le;r,ent.
These could be adjoined from the outside, but a more
convenient and more "economical" procedure is as follows.
Let T,T'
and 1,1' be the largest and smallest elements of 0 and 0'
respec-
tively.
o
'we have been regarding them as distinct
(ai?
the elements of
were to be distinct [rom the elements of D'), but now j'Jst these
two pa:r5 will be r.la::'.e eq'-.lal.
。ョセ
r=T'
イ・ウオャエゥセァ
The
13 .
ihat is, '.....e s)-,all de::ree for 0+0'
1=1'; though all the other elements are i<:e;Jt
separate.
that
The
partial orcering is easily see!! to te a. c::Jmplete lattice.
ーイ」 ・セU
of forrr.ing
エIセゥウ
SUI':"L
of lattices is
ゥセャlNウエイ。エ・、
in figure
lS
The initial lattice of atomic expressions (diagrams) we wish
to consider, then,
is the lattice:
F+{I}
It will be noted that the notion of sum just introduced could easily
be extended to infinitely many factors.
Thus, if we considered Lat-
tices {fi} that structurally were isomorphic to {I) (but with different elements),
then the lattice F could be defined by:
F = {fo}+{f1)+ ... +{f )+ •••
n
Though they are not by themselves atomic expressions, the symbols
b, will diso be thought of as elements of a lattice B defined by:
B = {bO}+{ol}+' .. +{b
The lattices F, B,
different because
n
}+ •..
and F+{IJ are all isomorphic as lattices but are
they have different elements.
These, however, are
very trivial lattices, and we need much more complicated structures.
Suppose D and D' are lattices whose elements represent "dia_
grams" we wish to consider.
If we want to form products of diagrams.
then according to the intuitive discussion in the last section, the
partial ordering on products should be defined
(dO;d
O
) セ
that
(dl;di) if a'1d o'1ly if dO!; dl'and dO!;'
for all dO' d l E D and all dO' di ED'.
< dO,d
セッ
di
Abstractly. we usually write
> as an ordered pa-£r in place of (dO;d O)' and then write:
O
D::.:D'
for the set of all ordered pairs < d,d' > with d E D and d' E Dr.
The above biconditional defines a partial ordering on D::.:D' called
the (cartesian) product ordering. and, as is well known. the result
is again a complete lattice.
The largest and smallest elements of
D::.:D' are the pairs < T,T' > and <
セLG
Let the lattice
DO = F+{I}
>, respectively.
16
b€ the 1attic:e of atomic expressions.
Then the lattice
°o+(OOXO o )
c8uld
セ・
regarded
。Nセ
1::te lattice
キィゥセィ
。、gゥエセ」ョ
in
1:)
the aTa:;,i:::
expressicns has compound expressions which can be thought of as prQducts of t·.... CI atomic expressions.
エィ・セ
In fact,
is no
rea::,']n tc use the abst:"act notation < d ,1' >;
'..Je can
」dセー・ャ ゥョァ
use 'the more
suggestive (d;d') remembering that latticetheoretically this is
セ」エゥ」・
just an ordered ?air.
in this regard thaT: b;: our
」・ヲゥョ エゥセI[ Z
of sums -wd products of lattices we have the equations
( .1 ;.1.)
=
( T ; T)
.1
=
T
.'3.utOr.Lat.:._a::'ly.
Wh:l.t about diagra.ms?
\o,Te11
, even though we wrote
(b,-i --.. d,d')
。「ウエイ。」Zセケ
all we have is an ordered triple
<
is just an element of the
tィゥセ
> .
ィセ[L、G
ゥ。エ ゥ」セ
BxDxO .
(if the reader wants to be especiallY pedanti,:: he
to
B,(OxO) and < b"d,d' >
イセ・
b.;'< d,d'
an independent notion of ordered triple.
give isomorphic lattices.)
sider
GセBjuャ、
or he
take BxO"'O
car. introduce
Structurally, all approaches
Hence, the next
ャ。エセゥ」・
we wish to con-
be
01
セ
0o+COOxOO)+(BxDOxDo)
Again, :here is no reason to
H「セ
»,
Cd.O
セS・
the abs1:ra:::t noc:ation so that
.... ,::',i') can just as "'ell stand for an :)rd.ered
triple.
;lotice
t),o]t we have in this way introduced SO.Tle eler.,ents noT c0:1sidered as
d セ\ャァイ。ZMNS
bef:)"e:
(T'"
d,J') c:.r.d (.1 .... d,d')
but we shall fir,d that iT is e"1Sy tc interpret the:\
ウ・ュ。イNエゥ」セ ャケL
s',: tha: this extra generality costs us no special effort.
I f
we
17
liy.e, we can also use the more suggestive notation for the lattices
themsel yes and wri te:
01 = 00+(OO;Oo)+(B
0 0 ,0 0 )
4
but for the time being it may be better to retain the abstract notation to emphasize the fact that we know all these structures as
lattices.
Clearly, 01 contains as elements only very short diagrams.
To obtain the larger diagrams we must proceed recursively, iterating
our compounding of expressions.
Abstractly, this means forming
ever more complex lattices:
0n+l
DO+{OnxDn)+(BxDnxDn)
The way we are construing the elements of these lattices, 00 is
セ
Bubset of each 0 :
"
DO C On
and, in fact, DO is a 8ltbZatti<:€.
on
This means that partial ordering
DO is the restriction of the intended partial ordering on On (res-
tricted to the subset).
And r..esicJes I
the join of any SUI.H.t=t or" 00
formed within the lattice 0D is exactly the same as the join formed
within
goes
°.
(This last is very important to remember.)
"
for meets,
The same
but this fact is not so important.
Consider that
DO c 0 1 '
and that this implies that
O'oxOo c 0 1 xOl
both as a subset and as a sublattice.
Similarly, we have;
BxOOxOD C BxOlxOl .
It then follows that
00+(ODxDO)+(BxODxOO) C 00+(OlxOl)+(BxOlxOl)
both as a subset and as a sublattice.
By definition we have:
18
D1 C 02
'
and continuing in this way, we prove:
D>J セ
D'1 + 1 •
Therefore,
c D'!'l
D
11
whenever n .; m .
What we have just done is to take advantage of general properties of t:te sum
lattices,
セョ、
preduct constructions on lattices as regards sub-
These general properties atollt "the comparisons of the par-
tial orderings and thf' joins and_
ュセ・エ⦅ウ
are_ very simple to prove ab-
stractly, and the reader is urged to work out the details for him-
As a result of
self inc:uding the asserti'7ns of the last paragraph.
these considerations it '.... ill be seen that the union set
セdョ
coセ・イョエ
has a
partial ordering.
complete lattice (we shall see why, later).
joins and meets do
C'n the other hand, many
exist; in particular, the join of
every finite
(The reason is that any finite subset is
subset exists in the union.
wholly contained in one of the D .)
n
is a
It is not a
Is this a lattice?
So, the union of
the lattices
finitely complete lattice (a kind of struoture that is ordiJJarily
セオウエ
called
wセ。エ
a lattice).
are the elements of this union lattice?
セ・
all the finite combinations
They are exactly
desired generated from
grams by means of the two 1':10des of compositi:)n.
the atomic dia-
Furt hermor€, the
abstract lattice structure obtained in this way provides perfectly
all
the laws of computation we listed in the last section.
abstract approach gives us
2.
structure which we know
is a
Thus, the
(finiTely
complete) lattice on the basis of simple, general principles.
Then,
by reference to the construction, the laws of computation are worked
19
oat.
Having worked
them out in this case, we can see by inspecti:m
of cases that we have all we need beca..lse there are only a limi'.:El
number of types of
ste;J is to cOJ.lplete
elements formed in an iterative fashion.
The next
the lattice and the:1 "to figure out what is
obtained.
3.CDNPLETING
in birkJlOft (19£7).
flow diagrams in a
THE LATTICE.
p126),
Every lattice can be completed (as
but we shall want to complete the
」セ
special way that allows "..IS to apprehend the nature
of the limit elements very clearly.
approximation will
ャ。MZ セゥ」・
In particular, the notion 0:
be made quite precise.
Roughly speaking, theelements of the lattice On are diagrams
of "length" at most
n.
generators by nesting the
most n.
セ
imation,
t\.w
modes of composition to
Consider DO and
D or it may not.
l
Dl
If
.
a
E 01'
.1.
at
then it may belong
If d E DO, then it is iTS own best
。ーセイックᆳ
If d If- DO, then since the elements of DO are not compounds
(except in a trivial sense) the best we can do in DO is to
d by
0:
a level
This suggests that the elements of 0n+l might be approximable
by elements of On'
to DO
セAj・
More exactly, they can be obtained from
。ー イッセゥュ。エ・
In other words, wc have defined a mapping
lfO:Dl
-->
DO '
where for d E D1 we have:
'fO(d)
{:
if d
E
DO
if not.
As can easily be established this mapping is
」ッセエゥョオッ ウ
(in fact,
a more general theorem relating to sum formation of lattices is
provable), and this
is important as all the
fll.lf,pin£G we Ciliploy ought
to be con:i<1uo'..ls.
Now, consider
0n+2 and 0n+l'
We wish to define
f,!+1:On+2 .... 0"+1 .
20
for d E 0>;+2' the eler.tent
oJ
+ (d) \0,1::11 be the best ap;oroxima::ilJn
n 1
Recall that
tc, d by ar, element in 0>:+1'
oセKャ
0 +(0 "0
Dr.+:::'
00+(0r.+l"Dn+l)+(BxDn+lxDn+'.)
0
セ
n
)+(8)(0
n
セd
)
セ
and
Inductively, we may assume that we have already defined the marring
v" ·0
0:'
Clearly, what is called for is
..... 0
r;+ 1
エセゥウ
'"
definiti0n:
LldED
d
HセG、MIj「
III r.+ l Cd)
1
n
n
(b ..... セ
Now,
Cd"))
(d')'iJ;
n
'n
(d"»
O
;
if d
Ci' ',d")
,"r
(b ... d' ,d")
d
these three Cdses are strictly speaking rict mutua,lly exclusive,
but on the only possibilities of IJverlap we fine: agreement because
l/J
n
::: rand
(T)
iJ; (.1) :::
3y a proof that need not detain us here, we
.1.
rt
Note aIsQ that we may prove inductively
show that iJ.'n+l is continuous.
for all n that for dE 0n+l we have:
dE 0
tセ・
if
n
mapping セ ョ Z o ョ K Q
セ
'J,J
n
(d)
::; d
""S
.
Dr. is easily illustrated.
the first belongs to 0
two diagrams are given:
the reslJI t of applying
a'Jd only -Lf
to the first.
5
In figure 14
and the Second is
I1: will be not:ed trlat drawn
diagr.J.::1' are slightly ambiguous; this d.rohiguit:y is removed when one
chases an expression for the
Z ャゥセァイ。ュN
In this example we chose to
associate to the right and to .interpret a long arrow without boxes
as a single occurrence of I and not as a product of severa.l
['5.
The lJHer diagral'7l is c.:Jmplete; 'dhile I.'h'"'t we !':light call its pl'oj;;ctiQn from 06 into 05 is necessarily
ゥョ」ッューャ・セ N
Clearly, we can
recapture the upper figure by removing the vagueness
of the IOl.'er figure.
a
very simple idea.
in one position
This is the way a:;::.proximation works.
I t is
--,
I
<
I
I
__ J
:::Ii
c<:
Q:
'"Cc<:
c<:
'"z
"i=
セ
f
lrl
..,
'"
Q:
lL
セ
;;:
0
22
Suppose d' E 0"1+1 and dE Dr. and d セ
c')ntinLlOUS, but also monotonic.
";'r;CdJ セ
d
vie have therefore showr. thiit
3.'.
Now
if",
is not only
Thus,
If"Cd') !; d'
セ
(d')
is the z.argest elerr.ent of 0
"
which approximates d'.
n
This reinforces our conception of
"
n
a, a
projection of 0n+1 upon On; the idea will now be carried a step
further.
Assume that we already knew how to complete the union
セdョ
to a
」ッューセ・エ
lattice Om'
If we were to be able to preserve relation-
ships, we ought to be able to project DID successively ante each On'
say by a mapping
" "'n
,DO セOD
n
But these projections really should fit hand in glove with the projections we already have.
One way of expressing the goodness of fit
is by the functional equation
ifron :: lbn°'foo(n+l)
セ・。ョウ
which
ーイッェ・」エセッョ
that the projection from
from
o
00
onto 0 n .
セッキL
Dn + l
onto
oセ
onto D +
n l
followed by the
On ought to be exactly the projection from
Suppose this is so.
let d E
Om be any element of this ultimate lattice.
Define a sequence of elements in the known lattices by the equation:
dn
for all n.
"Cd)
mn
By what we have conjectured
1f',/d n + l ) = dn
holds for all n, and so
、oセ、ャA[
!; d n !; d n + l セ
23
How does the limit element d fit into the picture?
Since
If",,"
Well. since Do<> is
n
ュゥセャ」
n= 0 n
is a projection. we at least have d
the limit of the d
We
Od
セ
d
Easy.
must also approximate d.
n
!;;: d for all n; thus,
But why the equality?
to be the completion of the union, each element
of D", is determined as the directed join <limit) of all elements of
the union
セ
it.
(All elements of 0", must be approximable as closely
as we please by elements from the union lattice.)
If d
1
belongs to
the union and d' !; d, then since d'E On for some n we must have
d' !; d ,
n
ilence ttle ..:quality.
We have seen
that each element d E D", determines a sequence
< d n >n='" 0
such that
Ibn (d"n)
holds for all n.
Furthermore, distinct elements of
distinct sequences.
(Because each d
its corresponding sequence.)
of elements d
n
= dn
D.o"
determine
is determined as the limit of
Suppose conversely that such a sequence
E On is given and we define d E 0", by the equaticn
d Ud
n= 0 n
We are going to prove that for all n:
d n = """'nCd)
In the first place. sinc:e these projections are continuous we have:
l/I"'n
For m ..; n. since d
m
(d)
=
Utn(d m)
m=O
E On' it follows that
l/I"'n U m ) = d m
24
For
1"1
>
Gセ ・
>1,
are going to prove thaT
I/;",,"l
7his is L:'':= for",:
\o,'e .ugue by inducticn on t!1e .::jClanti*:.y
"'!
ゥセ
Having JUST: checked
Cd",) :: i n
:or the value 0, suppose '(he value is [Josiei';e
and that \o,'e know the result for ':::;'e previous value.
:Jse the
BL [ZGセ。エゥッョ
("1-n).
イ・ャ。Qセゥョァ
>
Thus, m
n.
:""8
the \/d['ioI15 projections d'ld compute:
V
-n
(l)
1,!;n("vooCn+l) (d"1)
m
vn(d n + 1 )
d
Trv.on
"
:oince the required eq'.ldtio:1 is proved ',.Ie see:
>J;
oon
セ[ェ
(ei)
U ell U •.. U d
U d
n
U
n
c:>j
U
•.•
1
'i
That is
d
>'
to say, in the infiniTe join all the
。ョセ
but the previous ones
r;;; d
n
after n
エ・イセウ
ッョ・MセBGャ
which
ウSセゥウヲケ
cot't'es00
Do;<> d.nd the sequences < dJ'J>';::O
LBIセ
pondence he Tween "Lie ele:nents
dI'E'
anyway.
In Ocher words, we have shown that there is a
セ
Lセ
the equations
¢'"Cd"q) :: d'1
Lカャ 、」ゥエ。ュ・ョ セ
this is
カ・セケ
satisfactory
「・」。セウ・
it means that
instead of a.ssll..,i"g t:'at we knol>.' D"" we can 」ッBNセエ Gオ」エ
being :he set of these sequences.
。セ・
In this
sho'"rn "'[0 be mathematically consistent.
it as actually
セ。ケL
ッオセ
intuitive ideas
This construction is par-
ticularly pleasant hecallse the partial ordering on Dc<> has this easy
sequential definition:
d
The
ッエセ・イ
sequences.
we
セ
d'
i f a.nd ody
if d n
セ
、Lセ
fop aU
"l.
lattice operations also have easy definitions based on Hie
But for the moment; the details need not deto'lin us.
really need to know is that the desired lattice
exist and tho'lt the projections behdve nicely.
dセ
All
does indeed
In fact, it can be
25
ーL・ョ イ。jNセGO
proved qllite
・ScセN
U.at
is additive in the
,jl=r!
for all X
エセ・
C
r.OL
AセャョIG
セIオエ
con'CinClous
セ sイG
sense that
l./!"'nrUX) '"
of
"0;
スNセ
U{I;",r;iX);:: E'
Hence. we Ci'ln ottai.rl a reas(mably clear picture
000'
lattice structure of C",_
But 000 has
Bセャ ・「イ。ゥ」B
structGre as
well, and we no\o,' turn to its examination.
4.
il
THE ALGEBRA OF
special '.·.. ay, the
Nsセmrgaid
Because tre 0
n
were cor.s1:ructeG in
complete lattice 0", is much more than just a l:ltrlce.
Since we want to interpret the elerr.ents of 0"" as diavral'1s,
the !:1(Jre abstr<Jct
notation of the previous section by our earlier al-
notation.
ァ・エイセゥ」
イ・セQ 。」eG
\..'€
Thus. by construction, if d. d' E On and if , E B.
then bot;'
(,l;d ' ) and (b ... d,d')
are elements
(j
f 0
nn
.
Fhat if d,
Will these
d' ,:; Den?
。ャセ・「イ。ゥ」
cor-
binations; of elements Il'Clye sense!
In order to answer this in"terestinv question, we shall employ for
elements d ED"" this abbreviated notation for project jon:
dn
=
Femember that we regard each D
n
W""n(dl
c;: D"" and so d
is the largest element
n
If dE D + , then'
n 1
Of On l,)hich approximates d.
d
n
=
1i-'n(d)
also,
Using these convenient SUbscripts, we may then define for
d. d' ED",,:
(d'd') =
,
lJ"" (d n'-d')
n
ond
(b
+
n=O
d ,d') = Q(b
n=O
+
Iセ、LNイ
The idea is that the new elements of 0"" will have the following
projections:
(d;e' )n-tl =
H、ョ[セI
and
(b
+
d.d' )n-tl
(b
+
Iセ、B
26
(The projections onto DO behave differently in view of the special
nature of
セo
as defined in Section 3.)
It can be shown that these
operations (d;d') and (b - d,d') defiDed on 0"" are not Dnly contin(This answers the question at the end of Section
uous but acditive.
2.)
Hence, 0", is a lattice enriched with algebraic operations
(called products and Bums and not to be confused with products and
sums
of IJflOle 'Lattices.)
Let (0",;0",,) be the totality of all elements (d;d') with
dセN
d, d' E
This is a sublattice of 0"",
a sub lattice of 0",
Similarly, (6
0"",0",,) is
In view of the cOnstruction of 0n+l from On
we can show that in faeL:
セ
0""
Because if d E 0
d'
d"
"' "
E
0
"
セ
and
bHセIL Bd[L HKッP
0""0,,,)
4
if d €I DO, then we can find elements
such that either for all n:
d n " l = H、セ[I
or there is some b E B such that for all
d
"'1
セ
(b
+
I[ 、Lセ
Setting
d'
Ud '
"0
and d"
n::O 7l
.
u、セ
n::O
we find that either
d:: (d';d") or d = (b ..... d',d ll
(One
ュセウエ
also check that the T and
1
)
elements match.)
Since there
can obviously not be any partial ordering relationships holding between the three different types of elements, we thus
see why Om
decomposes into the sum of three of its sublattices.
Inasmuch as Om is our ultimate lattice of expressions for diagrams, it will look neater if we call it E from now on.
Having ob-
tained the algebra and the decomposition, we shall find very little
need to refer back to the projections.
Thus, we can write:
27
E
an equation which
F+([)+(E;E'+(B
ca.n be read very
Ev;:cr!i erpressio01.
or is
the
E;E)
s/lloothly in words:
eir;;het' a funcr;ion symbol,
{$
ゥ、・Gャエゥ セ
セ
8;.-:t::OZ,
of
01'
is
the produ.ct
01'
is
the sum of two erpt'essions.
tUG
e:rpt'essions,
These words are very suggestive but in a way are a bit vague.
lie
sho\ol ne>1t how to specify additional structure on E thdt will turn
the above sentence into
To carry out
lattice:
15.
o
d mathematical equation.
this last program we need to use a very important
the lattice T of truth values.
Aside from the ubiquitous
(false) and 1 (true).
operations
fI
(and).
II
.1
It is illustrated in Figure
and T it has two special elemerts
Defined on this lattice are the Boolear
(or), I
(not) give.n by the tables of Figure 15.
For our present purposes, these operations are not too important
however, and we discuss them no further.
What is much more impor-
tant is the conditional.
Given an arbi tra['y lattice 0, the conditional is a functicn
:l:TxDxD ..... 0
such that
:l(t,d,d')
,
r"
i
,r'
T
,
·if
d'
if t
,
if
t
0
.=
,
The reason for the choice of this definition is to make J an add£.-
tive function on TxOxD.
ing us to test t.
of the conditional.
result of the test
tional.
Intuitively, we can read
セHエL、 GI
as tell-
If the result is 1 (true), we take d as the value
If the result is 0 (fa 1 se)
we take d'.
I f the
is underdetermined, so is the value of the condi-
If the result is overdetermined, we take the join of the
"""",-ot-
>
Ot-Ot-
t-
0000
0
"""",-ot"""","""",00
"
J> .0.
en セ
セ
!l::
."
-l .0.
I
'"
-l
"セ
I
"""",-Ot-
セ
III
:;;
-l
0
0
0>
<
'"
--I-t-
t-
In
-1- Ot-
0
."
0
-l- -l-
-I
r
r
0
0
J>
Z
."
'"J>
;0
:::l
0
zen
セ
"""",O-t-
'"
r
セ
セ
0
'"
I
:!1
'"セ
0
セ
u;
t-<>-l
29
values we would
have obtained in the selfdetermined cases.
This
last is conventional, but it seems to be the most convenient convention.
It will be easier to read if we write
(t
:J
d,d')
:J{t,d,d'),
and say in words
if t
It is common to
write
then d else d'
in place of
but we have chosen the latter
:J,
to avoid confusion with the conditional e:r:pres8io'fi. in E.
Returning
now to our lattice E there are four fundamental
functions:
func:E
-->
T
idty:E .... T
prod:E
-+
T
sum:E .. T
All of ' these func-:ions map
with d 1- T and d
#
.J.
T
to T and
to
.1
.1.
For elements
we have
i.f d E F
''''Cd)
0
idty(d) =
prod Cd) =
sum (d)
These functions
。セ・
=
{
:
{:
:
{:
{
if d
e
F
if
E
en
d
ifdfi{J}
if
d E
(E;E)
e
(E;E)
if d
i f d E ( B ..... E,£)
if d II: (B .... E, E)
all continuous (even: addi tive).
They are the
functions that correspond to the decomposition of E into four kinds
of expressions.
30
Besides these there are five other fundamenTal functions:
first:E
E
secnd:E
E
left:E
E
right:£
>
E
bool:E
+
B
In case d E (E; E), we helve:
d'"
(firstC:D;secnd(d»
otherwise:
secndU)
first(d)
L
In case dE (8 ..... E,U, we have:
:i = (bool(d)
-+
leftCd),rightCc:.'»
otherwise:
left(,l)
r;ghtU) "
.1
(:in E)
and
bool
(d)
1
(in B)
These functions are all continuous.
These nine functions together with the notions of products and
sums of elements of E give a complete analysis of the structure of
E.
In fact, we can now rewrite the informal statement mentioned pre-
viously as the following equation which holds for all dEE:
:i
=
(func(d) .J Ii
(idtyCd) :J I
CprodCd) :) (firstL!);secndCd»)
(sum(d) ::J (boo1(ci) .... leftC:),rightCd»,.L))
aセッエィ・イ
be this:
way to say what the result of our construction is would
the lattice E
イ・セャ。」ウ
the usual notions of syntax.
This
lattice is constructed "synthetically", but what we have just verified is the basic equation of "dndlytic" syntax.
All we really need
to knoloi about E is thdt it is a complete lattice that
decomposes into
31
a sum of its algebraic parts.
These algebraic parts are either gen-
erators or products' and sums.
The complete analysis of an element
(down on.e level)
is provided by the above equation which shows that
the algebraic terms out of which an element is formed are uniquely
determined as continuous functions of the element itself.
Except for
stressing the lattice-theoretic completeness and
the continuity of certain functions. this sounds just like ordinary
syntax.
The parallel was intended.
But our syntax is n.ot ordinary;
it is an essential generalization of the ordinary notions as \Ie now
show.
5.LOOPS AND OTHER INFINITE DIAGRAMS.
In Figure 17 we have the
most well-known ccnstruction of a flow diagram which allows tle information to flow in circles;
the so-called while-loop.
It represents,
as everyone knows, one of the very basic ideas in programming languages.
Intuitively, the notion is one of the simplest:
enters and is tested (by b )'
O
tion is transformed (by f
O
information
If the test is positive, the informa-
) and is channeled back to the test in pre-
paration for recirCUlation around the loop.
positive, the circulation continues.
While tests turn out
Eventually, the cumulatlve
effects of the repeated transformations will produce a
ョ・ァ。エゥセ
test
result ( i f the procedure is to allow output), and then the information exits.
None of our finite diagrams in E
the On lattices)
has this form.
overlooked something.
ing E complete.
(that is, diagrams in any of
It might then appear that we had
But we did not, and that was the point of mak-
To appreciate this, ask whether the diagram lnvolv-
ing a loop in Figure 17 is not an abbreviation for a more ordinary
diagram.
There are many shortcuts one can take in the drawing of
diagrams to avoid tiresome repetitions; we have noted several previously.
Loops
may just be an extreme case of abbreviation.
Indeed,
J>
0
0
.
:!I
セ
.
'"
0.
;;!
;;:
;;:
z
C
'"
'"r
r
0
0
"
:!I
セ
."
"'
0;
Z
=i
+
'"<
'"
+
;0
(J)
6
z
0
."
--i
:I:
'"
50
"
+
33
instead of bendi ng the channel bad<- around to the front of the dia-
gram, l.Je could write the test again.
And, after the next transfor-
:nation, l.Je could
And again.
write it out again.
And again, and
The beginning of the infinite diagram that will
again, and
thereby be produced is shown in Figure 18.
Obviously, the infinite
diagram will produce the same results as the loop.
(Actually, this
assertion requires proof.)
Does what we have just said make any sense?
'''''ill help to see
it dDes.
tllat
fa.
the transformation
Some symbolization
We have symbols for the test hi) and
Let the diagram we seek be called d.
again at Figure
18.
diagram repeats
i-rself.
Look
After the first test and transformation the
This simple pattern can easily be eX,rressed
in symbols thus:
d
In other words,
O
.... Cfa;d),I)
we have a test
on the other hand,
ヲッャ ッセゥョァN
(b
セ・
セゥエィ
an exit on negative.
compound fa
セゥエィ
the same procedure
If Jositive,
ゥュ ・、ゥ。セ・ャケ
Therefore, the diagram contains it8etf as a part,
That is all very pretty, but does this diagram d really exist
in [?
To see that it does, recall that all our algebraic operations
are Du"l tinuou8 on E.
Consider the function
セZe
.... E defined by the
equation:
(l(x)
The function $
:::
(b
O
....
(fO;x),I)
is evidently a continuous mapping of diagrams.
Every
auntinuuus fU"lDtion on a DQ.mp'Lete lattiD€ into itself has a fixed
po i n t .
In this case, we of course want d to be the least fixed point:
d ::: <J>(d)
because the diagram should have no other quality aside from the endless repetition.
The infinite diagram d dues exist.
ョッセ
(It can:lOt be
finite, as is Obvious.)
We can
see why we did not introduce
loops in the beginning:
their existence follows from completeness
34
and coo"tinui:y.
In any case, they are very special and only
Cln€
among many diverse types of infinite diagrams,
Figure 19 shows a slightly more complex example l.1i th a double
We shall not attempt to draw the infinite picture. since that
loop.
exercise is unnecessary.
The figure \.lith loops is explicit enough
to allow us to pass directly to the correct symbolization.
plish this, label the two reentry points d and d
t
•
To accom-
Following the
flow of the diagram we can write these equations:
d
= (IO;d ' )
and
d'
=
(b
o
+
f
Hヲャ[、セILH「ャM
2
,(f , d ) )
3
SUbstituting the first equation in the second we find:
d
t
= (b O
(f1;d'),(b
--+
.... [2'([3;([0;d'»»
1
Now, the "polynomial"
= (b
'l'(x)
O
-+
(f1;x),(b
1
f2
....
is a bit more complex than the previous
,(f ;(f ;x»»
3
o
TャHセIL
but just the same it
is continu:Jus and has its least fixed point d'.
Thus, d
t
,
and there-
fore d, does exist in E.
Sometimes, the simple elimination procedure we have just illustrated does not work.
A case in point is shown in Figure 20.
The
loops (whose entry points are marked d and d') are so nested in one
another that each fully involves the other.
drawing
エセ・
(By now, an attempt at
infinite diagram is quite hopeless.)
The symbolization
is easy, however;
d
= (b
O
.... fo,(b
l
.... (f
1
;d),(f ; i ' ) ) )
2
and
d
t
= (b 2 .... f 3 ,0'3 Cf 4 ;d),(f 5 ;d'»).
In this situation any substitution of either equation in the other
leaves us with an expression still containing both letters d and d'.
35
That is
1:0
say.
tne t;.;o dia>,;rams C'alled d and d
strilcted ainl<4ltaneoJaZy.
Is this possible?
fact that E"E is also a complete lattice.
e: [x[
r
h'j',l'"
It is,
':0 l)e C'an_
Consider the
Introduce the function
E>([
defined as follows:
8C<.x,y»
= ....:CbO--+f'O,CbJ .... Cfl;x),Cf2;y»),Cb2-f3.(b3 ...... Cf4;;;::).<fs;y»)>
Now, this function
e
is continuous and has a least fixed ーッゥョセ[
< J,d'> =
e«
d,d'»
and this rair is exactly the pair of diagrams we \o,·anted.
This method can now be seen to be flexible and of wide applicability,
For €xanple, if using our algebra on E, we write dewn any
system of pOlynomials in several variables:
nOexO,x 1 セクB
... ) ,n 1 CXa,I l ,J'":;" .•. ) ,fl (x 'x2.'x , •• )
2
O
2
I'"
then on a sui table product lattice:
[x[xEx •••
we can solve faT' :ixed points:
dO
"n o (d o .d l
,d 2 ,···)
d l =n l U O,d l ,d 2 •· .. )
d2
"n
2 (d O ,dl'd 2 ,···)
Diagrams constructed in this way may be called aZ-gebJ'aic eler:ents
of E.
The fini te diagrams in the union of the On may be called
J'ationaZ-.
of E;
This
classification does not by far exhaust the elements
there are besides a continuum numbe'r of transcendental
elements.
(The
reader may construct one from Figure 18 by replacing
the sequence of boxes fa. f ' fa, ... by the sequence fa, f l , f 2 ,
o
or by some other nonrepeating sequence.)
Whether these other
elements of E are of any earthly good remains to be seen.
there, in any case.
not do so.
They are
If you do not care to look at them. you need
It will be your loss not theirs.
}>
c
."
::!!
(")
c:
c:j
..,"'
セ
•
'"
I
c
I
I
}>
3:
."
.c.
c
c
'"0
'"
;;l
j;;
Cl
:ll
Z
l/)
\
.-
"
50
\
Q.
"
hI
セ
/
/
"
l/)
;
+
37
It is not
elements of
E.
too easy to draw pictures of some of the algebraic
Tcke, for example, this defining equation:
d = (to ..... <j"o;(d;!l)),I)
A first and an unsatisfactory attempt to draw this as a diagram is
The question is what to fill in the middle.
shown in figure
21.
',ve need another
copy of d itself; but this involves still another
copy of d.
And"
so on.
There seem to be no shortcuts available.
Any attempt to introdu:::e loops will not make it clear that in anyone
tour of the chann.ds the same number of
visited.
f 0 boxes as f 1 boxes
But this is a failure of the picture language.
must be
The alge-
braic language i s unambiguous (Ilenct:. better!). Nevertheless, this
example does suggest that there is a classification of the algebraic
elements of E that needs adiit:ional thought.
Now that we see something of the scope of E, we can organize
the study of its elements \oOith the aid of further notations.
For
example, the while-loop is so fundamental that it deserves its own
notation:
(b*d)
which stands for the least fixed point of the function
(b
It can be eas ily sho\oOn that
E.
(d;x) ,Il
is a continuous function on
BxE into
There are many others.
This is the place to clear up a continuing notational confusion.
Since, in order
to comllunicate mathematical facts, we need tc wri te
formulas involving symbols, \oOe have to be clear about the distinction
between a symbol and what it denotes.
This distinction becomes par-
ticularly critical when we study the theory of syntax, as we have
been doing here.
So, let us be very pedantic about the nature of
the constructions we have been discussing.
of E actually?
What are the elements
Either they are elements of F or of {I} or they are
38
pairs or triples of pairs or trip:es of ... of elements of Band E.
Or they are limit points of these, wtlich
finite
Uエセ 」エャケ
speaking, are in-
("convergent") sequences of rational elements of E.
Alas,
E contains no symboZs, only mathematical constructs.
But defined on E is a whole array of functions and constants:
fo,f"-,
,T,(x;yJ,(b
func(x),
-->
X,i!)
,first(.T.), ... ,;· •.Y'
,
,
etc.
ャ・エセ・イウL
Thus, such things as subscripts, capital
parer.theses, semi-
colons, arroW's, corrunas, bold-face letters, and stars do not actually
occur as pdrts of any of the elements· of -our "expression" space E.
Rather,
E is La be regarded as a
セッNQエィ・ュ。Z[ゥ」ャ
"lode!. of a
It is only one of many similar Do::lels.
expr'eseio'll'.
Or,
E is a model lut' a. theory of [J6ometl'io d£.aUl'am6, セョLj
tory theor",", at thu.t.
エセ
you care
make
ture to guide yoUt'
The
it.
Jf
ャ。エ ゥ」Zセ
E
セッ
if yO'..! like,
"'" quite Satisfac-
E does not care what a.pplications
E
is abstrac:t.
エィッオァセᄋhZウN
gives you a
fixed struc-
It is the same with the theory of the
real numbers and analytic geometry.
it is up
theoT'Y of
These structures are "pure":
us to supply the plot and to write excit:ing
stories about
them using a careful choice of language (that is, functions, relations,
etc.>'
In the Case of
E, however, we can ask not only what
it is, ar.d what its elements do,
but also wha"t rjo they mean.
6.1HE SEMANTICS OF FLO", DIAGRAMS.
・GNᄋセ
the flow of information through a diagram.
have spoken all along of
It is intuitively clear
whaT is meant, but ev.:'ntually one must introduce
tions
S;}ffie
if he €'/er hopes to get any defini te resul ts.
precise definiIn other words,
it is no.. time to present in detail a rr,athematical model of the concept of fZowing.
Up to this point, everything is static:
the ele-
ments 0; E do not move; they do not light up, make noise, or otherwise show signs of life.
We have sketched many pictures of elements
39
of E and on the
paper, an these diagrams, we can move
shift our eyes back anc. forth.
OUT'
fingers or
The abstract elements of E I'e,':lain
impassive, however, and must remain so, frozen in the eternal realm
of ideas.
But they neither expect or want our pity.
free to study then"
And, we are
to talk about them as we do of works of art.
Clearly, the first requirement i.n the study of the meaning of
E is a theory of information.
the artifacts in
enough, in this
Disappointingly
pdper we shall not make a very deep study of this
We shall take it as axiomatic that the qt.<a'lta of
essential notion.
information form
ャ。エゥセ・
a
called;
S
If you prefer, you can also consider the lattice S as being the lattice of states (states cf "nature").
we do not say.
Where the lattice comes from,
We shall give some examples, by and by, but shall
not be able to discuss lattices in general here.
sonably evident
It should be rea-
from the sucoess we have had in constructing lattices
with useful properties, that this assumption is no loss of gerlerality.
Indeed, it can be argued that the requirement is a gain of gerlerality.
In order to specify the meanings of the elements E, we must
begin with the Ji
E
F.
Here, we have great freedom:
their mean-
ings can be determined at will -- within certain limits.
are set by this
transformed.
meaning of f
each f i
If
i
reasoning:
The limits
as information passes through a box it is
the box is labeled with the symbol Ii' then the
is this transformation.
That is, corresponding to
is a fu.nction
'J<fi)'S
セ
S
which provides the means of transforming S.
Note that the transfor-
mation depends only on the label and not on the context of occurrence
of a box, because we intend like labeled boxes to perform the same
transformat ililn.
Since we have gone to the trouble of saying that
'0
S is a complete lattice, we will also require each funccion
3<fi.)
to be C'onti'lIWuB.
Think for a
セッュ・ョエ
of the collection of all continuous func-
'tions from S into S.
If u and v dre such, there is a most natural
way of defining what it means for u to approximate v:
lj
if u(o)
v if and onLy
セ
セ
v(a) fol' all a
5
E
It can easily be established that the set of continuous
becomes in this way a complete lattice itself.
lattice by (5 .... SJ.
functions
We denote this
do not confuse this notation wit:-t
(Ca:.tt"ior::
the earlier (B ..... E,E), which is a certain subl<l.ttice of
E.)
In a highly useful short-hand way we can say that
a,F-rS 4 SJ
We even require ';1 , as a mapping, to be continuous.
'JoE [F
--jo
Thus,
[5 .... 5)] .
In this manner. we indicate succinctly what is called the logical
type of ;} as a mapping.
Attention paid to logical types is atten-
t ion well spen t.
The next project is to attach meanings to elements of B.
If
bE B it designates some test that may be applied to elements of 5.
The outcome of a test is a truth value.
ment of the lattice T.
For us, that means an ele-
Hence, to have meanings is to have a
(con-
tinuous) function
iQャLbTイsセtj
Both [5 ... 5] and [S - TJ have largest elements (both are la'ttices).
In [5 - 5] it is the constant function T (obviously, a
func'tion).
We should write
T[5-"'SJ E [S -
where for all
0
SJ
E 5:
T[5_SJ(O) = T5 .
continuous
41
But we drop the
1(0)
::
1.
subscripts and write Tea) :: T.
Similarly, for
The sanle slightly ambiguous notation is used for [S .. TJ.
faT simplicity,
'3
we require both
and
CB
セHtI
::
T
'J(ll ::
(6(T)
::
T
@(l)
to have the property that
1
w!1er€ it is left
TO the reader to deterr:line to which lattices each
of the
S belong.
T'S
and
-L'
The functions
71
<B
and
may be chosen freely wi thin their
respective logical types -- but that is all the freedom we have.
The meanings of
relative to this
all the other elements of E are uniquely determined
':J.
choice of
and
ca .
To show how this works out, we shall determine a functicn ""
Cagain;continuousl such that
BLeセ{sセ j
If dEE, then ""Cd) is the "value" of d (given セ
and
CI3 ).
The
intention is that if a E S is the initial state of the information
entering the flow diagram d,
then
"J(d)
is the final state upon exiting.
(a)
We thus do not teach you hc\ol to
swiJ:l through the channels of the flow diagram, but content ourselves
with telling you \oIhat you will. look like when you come out as a function of what you looked like when you jumped in.
is, of course, continuous,
(over all d and
The transformation
And, merely knowing this transformation
all a) is sufficient for a mathematical theory of
fZowi >i.g.
The precise definition of
out an equation
V
is obtained by simply writing
that corresponds to what you yourself would do in
swimming through a diagram.
We write it first and then read it:
"'
VCd)(o)
,,(func(dP
Cidty(d):.l
(prod CdP
';J(d)(o)
0,
"Ltc secnd (d»
(U'Cfi rs lCd»
(sumCd):Je03 (bool (d»
(One small point:
because
';J(d) ;;:
";Jed}
.l
(a»
(0):1'11(1 eftCd»
(0)
,t1'( r Igh ted»
(cr»
,.d»)
we may regard"J. as being of type ·:1:E ..... [5 .... SJ
is a good value if de. F. Or, we should replace
by "1<ld)
Idl ; :
where
(dl =
d if d E F, and
.l
E
F if
d
e.
The Translation of the above equation runs as follows:
To compute the outcome of the passage 0;
a through d
J
tion symbol.
';1ld)
(0).
ヲセB」ᆳ
first ask whether d is a
If it is,
tne
Dutcoml!J
is
If it is not. aek whether d is
If it is,
the identity symbol.
ou.tcome is a.
it is not, ask o.1hethel'
If
d is a product.
then the
If it is, [iTld the first
and second terms of d.
PaSB
a through
tile
first term of d obtaining the propel' outcome.
the
Take this
ウ・セッョ、
final
ッセエ」ッュ・
and pass it through
term of d.
ッオエセqュ・N
That gives the desired
If d is not a product, ask
whether it is a sum.
If it is,
find the
boolean part of d and test cr by it.
Depend-
ing on the result vf the test, pass a through
either the left or the right branch of d,
taining the desired
ッセエ」ッセ・N
sum (this
セキエ
is
cose
will
ab-
If d is not a
arise),
the outcome
.L.
One soon learns to appreciate equations.
And, the equations
are more precise as well as being more perspicuous -times they become so involved as to be unreadable,
pIe, how our equation for
'tt
though some-
Note, for exam-
tells us exactly what to do in case
F.)
43
(B(booHd)) (0)
J.
01"'
セ
T
This would be rather TiresolTie to put in words.
The question we need
to ask now, however, is whether this equation really defines" .
Obviously, iT is net an
expl-[c-[t
both sides of the ""=luation.
",.. exists.
definition because
V
occurs on
Hence, we cannot claim straight off thaT:
To prove that it does, some fixed points must be found
in some rather sophisticated lattices.
セエ
was not :ust an idle remark
[5
is a complete la ttiee.
セ
to point out that
5J
Knowing this, we have by the same token that
{eセ{UセUj}
is also complete.
And this lattice gives the logical type of" :
1J" E
To find this
1.1"
セ
2
[E セ
[5 セ
5J]
.
then, as a fixed point, we would need a function
[[E
E
セ
[5
セ
5]]
{eセ{UセU}j}
which is a lattice somewhat removed from everyday experience.
that does not matcer:
But
we know all the general definitions.
nere is the specific principle we need.
pression the var·iables
E, and 5 respectively.
3' ,
In the following ex-
d. and 0 occur of types [E ... [5'" 5J].
The expression is:
(fundd):) "J-{d) (0)
( idty(dPa
(prod(d)) セ H ウ ・ 」 ョ 、 H I
(X (fi rst(d)) (a))
(sumCd):)(ca (bool (d)) (a):) 3(1 eft(d) )(a), JE(right(d))(o)) ,.d)))
This
is a function of three variables.
at it, -chat it .is
セoBャエゥBャuo V
We can prove,
just by lookinc
in its three variables.
Forget about the exact form of The above €'Xpression ane imagine
any such continuous €'Xpression:
( ••• 3£. •.• d ... o)
Holding
1:
and d
fixed
we have a function of 0.' The logical type of
44
the value of the expression is also S.
::: '( jf ,d) 、・セjBLョ、ゥ ァ
Dn Lセョ・カゥァ
:'hus, thet"'e is a
:=:'( X,d)(a)
( ... X .. . d ..• 0)
The logical L:ype of ::':'( 1,d) is [$ .... SJ.
セ・ィエッ
'::n
words, ::: '(
is an "expression" whose value depends on l:. and 1..
thaL: :::
'e
3(
,n
function
d such that
is continuous in l:
dnd d.
セL、I
.... t:' can sho\oJ
Going around again,
"[here must :'02 a function (a uniquely determined function) :::(:l-)
such that
E(3! )(d)
;E' (J( ,d)
,
so that
E(}:) E [E •
[S
But this correspondence is continuous in
E E [[E -
All
coョエゥョᄋセッオウ
[S •
S]]
[E -
5]]
セ
.
So, really
.
[S
S]]]
.
functions have fixed points (when they map a lattice
into i'tseif), and so our
1.1
is given hy
QAセ
ElV")
with the u:lderstanding that ""e take the least such
1J (
as an element
of the lattice (E .... [$ .... SJJ).
Yes, the argument is abstract, but then it is very general.
The
easie,t thing to do is simply to accept
the existence of a con-
tinuous (ninimal) ",. and to carryon from thel'e.
worry about the
ャ。エセゥ」・
theory -- as long as he is sure
functions that he defines are continuous.
take care of themselves.
(Jne need not
Generally,
エィ。セ
all
they seem to
Intuitively, the definition of "tJ'is
nothing more than a recursive definition which gives the meaning of
one diagram in terms of "smaller" diagrams.
common ard are well understood.
Such ,jefinitions are
In the present context, we might
only begin to .....orry ..,hen .....e remember th3.t a portion of
diagram is not really "smaller" (it may even be eq!<:lZ
inal).
an infinite
to the orig-
:t is this little worry which the method of fixed points lays
45
"to rest.
Let us examine what happens with the whileloop.
7.THE MEANING OF A WHILELOOP.
Let b E Band dEE.
Recall
the defini tion of
Ch .d) .
It is the least
・ャ セ・ョエ
of E satisfying the equation:
(b
:r :::
We see that
(b*d) E
to
(d;x) ,I)
E,E) and
(B ....
bool
«b*d»
left
((b*d»
= b
(d;(b*d))
right (Cb_d»
Hence, by the definition of
'l.t«b*d»)(o) :::
But
Cd;(b*d»
E
([;E)
(
::: I
for
'" ,
(J
<8(b)(o):::)
E S we have:
l1«d;(bd»)(o),o)
and
first«d;(b*d»)
d
secnd«d;(b*d»)
(b*d)
So we find that;
'lJCChod»)(o)
0
C COCh)Co) 0
VC(h.d»)(
'\JCd)(o»,o)
The equation is too hard to read with comfort.
.
Let w ::: (b*d)
und
Ii
0
03Cb)
E
[S セ
TJ
J
0
'\JCd)
E
[S セ
S]
and
.
We may suppose that band d are "known" functions.
The diagram
is the whileloop formed fpom band d, and the semantical equation
above now reads:
1Jcw)(o)
(5(0'):::)
"(w)(a(o)),O)
The equation is still too fussy, because of all those o's.
Let
IE(s .... sJ
46
be such that for all Cl E S ;
ICo) :::
セL
For any two functions
Cl
•
v E [5 .... SJ, let
;':'vE[SS]
be such that for all cr E S:
(u·v)(o) ::: v{u(a)
(This is fU:lctional composition, but note the order.)
For dny
P E [5 .... S J, and u, () E [5 .... S J. let
(p
.Y
u,v)
E [S ..... S]
be such that for all Cl E S:
(p
u,v)(cr)
-;>
:::
(pCo) J
u(er),v(o»
Now, we have enough notation to suppress all the o's and to write:
V(w)
0
(6
(d·!J(w))
,I)
at: last an almost: readable equation.
It is impGrtant to notice that:
tions
(0:
• and;" are eontinuo!./s func-
rs
several variables) on the lattices
セ
TJ and [5 ... SJ.
Injeed, we have a certain varallelism:
E
[5
5]
B
[5
TJ
fi
[1:
I
7
Cj
E
(x ;y)
(li • U )
J
(b:>x,y)
(p
with
'.I
prodOict
of inter"'.st. also
(l.I°v)
(T
>
the obvioU5 functions}.
to be a continuOUB
。iァ・dイj[セ
U
,v)
S] is an algebra with constants f
We could even say that [5
T,
;>
and with sums
u,v)
and (1
The function
ィjュッセ イーィゥウセN
(5
'..t,C')
(and,
u,v) wbere T,
''':E
セ
1
[5 .. S]
It is nJt
a lattice homomorphism since it is continuous and not
ing.
E
i
anJ
if they are
[5
セ
T] are
tben proves
in general
join preserv-
47
IT does, however. preserve all products and sums
as we hav!'.
illustrated in one case.
Let us make use of this observation.
I f we 11'. t
¢l:
E ..... E be
such that
\0'"
¢lex)
trlen our whileloGp w
(b*a"l
(d;x),J)
is giv".n by
w '" U4>l'1(.l)
71"'0
oセ
The function 4> is an algebraic operation
i:rs . . .
セ
S] ... lS
E; we shall let
SJ be the corresponding operati0n such that
(Ii . . . ((i·u),I)
i(u)
From what we have said about the continuity and algebraic properties
of"', it follows that
""(1.1)
Oin(l.)
=
ncoQ
This proves that
V'(lJ)
is tIle least solution u E [5
-+
S] of the
equation
u
Thus,
on [$
'lJ' preserve s
->-
T]x[S ...
shown that
t1
is
Actually,
,Il
also a homomorphism with respect to this operation.
tr.e solution to the equation
(b
-+
(d;x) ,I)
It is not so in the algebra
has only one solution.
also.
(;l·u)
SJ analogous to the * operation on BxE, and we have
u
least solution.
(6)-
whi 1e; more precisely, there is an operation
x =
is unique in E.
=
==
(E
>
[5
-+
5J that thE equation
«Iou) ,I)
But we have shown that
1J"
picks out the
This observation could be applied more generally
48
In any case, we can now state definitely that the quantity
'I)(w)(o)
is computed by the following iterative scheme:
21«1) =
If the result is 1 (tro:e), the:'l
puted.
first 0(0) is comis compute,1 and
'1'
the whole procedure is started over on
'1I(U)(O')
If b(o)
L
0,
;,.
the result I::;
[J
at once.
= .L, the :--e'3d:, iG
( I f h(<J)
If bCo) = T, t!1e result is 1J(w)(a') U 0, ""'hich generally is
not too ゥョセヲGイ・NGZ[エゥョァNI
The J:lin':'mality of the solution to the equa-
tion in [S .... SJ means :hat we get ゥQZOエィセョN GQ
"'ore than what is strictly
implied by this computation scheme.
This result is hardly sUf'prising; it was not meant to be.
セッイG ・」エN
What it shows is that Jur definition is
Everyone cOl1lputes
a whi1e in the way indicated and the function
what was expected:
no more, no less.
We can say that
semantic function which maps the diagram
ing" VC!<').
10'
"
is the
to its "value" or "mean-
AId, we have just shown that the neaning of a whlle-
loop is exactly a function in [S ..... sJ to be
while-manner,
process.
'\YCw) gives us just
The' meaning ッセ
セオョーオエ・、
in the uS'Jdl
the diag:,amatic while is the wh41e-
No one wnuld want it any other way.
It is to be hopec. that the reader can extend this style of
argument to othe.r' ('onfi gurations that may interest him.
a.EQUIVALENCE OF DIAGRANS.
Strictly speaking, the semantical
interpretation defined nnn illustrated in the last two sections depends not only on the choice of S but on that of
Indeed.
we should
キイセエ・
( セ
S
and take the logical -:ype of
Of course,
E [[F セ
[S セ
and
18 .
more fully:
'lt
'll's
')
S]J セ
) ( 8 )(d)(o)
'tt
[[B
to be:
[S
C'1 ) «8) is contir.uous in
T]]
セ
[E
セ
'"3' and in lB .
[S -
S]]]] .
49
If we like, we can call the set S the set state.s of a "lachine.
'do
The functions
and
give the behavior of the "hardware" of a
(8
Thus, the lattice
machine.
[ F
セ
[S
セ
セ
Sll. [B
[S
セ
Tll
may be called the lattice of ma",hi>;e8 (relative to the giver: S).
This is obvious ly a very superficial analysis of the nature of
machines:
we have not discussed the "content"
nor have we explained how a function
values.
Thus.
'Jet}
of the states in S,
manages to produce its
for example, the functions have no estimates of
"cost" of execution attached to them (e.g. the time required for
computation or
the like),
The level of detail, however, is that
generally common in studies in automata theory (cf.
Arbib (1969)
as a recent reference), but it is sufficient to draw some distinctions.
Certainly, lattices are capable of providing the structure
of finite state machil'l€S with partial functions (as in
(19£17»
I
dlld
much m0rp:
エィセ
Scott
uses of aontinuoua functions on cert:ain
infinite lattices S are more subtle than ordinary employmen: of
point-to-point
functions.
The demonstration that the present gener-
alization is really fruitful will have to wait for future publications, though.
Whenever
(Cf. als0
l3ek.ic, dnd Park (19b9))
one has some semantical construction that assigns
"meaning" to "syntactical" objects, it is always possible to introduce a relationship of "synonymity" of expressions.
the relation simply:
We shall call
equivalence, and for z, if E E write:
x
;;c
to mean that foT' all S and a l l ' )
y
and
£B
relative to this S we
have:
"'S'
"J )( Ql
)(r)
セ
'lJ S ' '3'
H
Ql Hy)
This relationship obviously has all the properties of an eqJivalence
relation, but
i t will be the "algebraic" properties that will be of
so
more interest.
In this connection, there is one algebraic relation-
l;; Y
J:
to mean that
'"3
all S and all
:01'
E we write:
for x, y E
ship that suggests itself at once.
<:B
and
relative to this S we
have:
'lJS (';J)(<!3)(y)
'lJ's('))«(J3)(X)S
These relationships are very strong -- but not as strong as equal-
ity. as we 51',03.11 see.
to show,
r;
セ
The
セ
and
are related; for, as it is easy
is refle;dlJo? and tl"ansitive. and further
J:
Y if and only if
セ
Z セ
r;
Y and y
But these are only the simplest properties of
セ
x .
and
r;.
For additional properties we must refer back to the exact
def ini tioD 0:
U'
In the first place, the definition of
in Section 6.
1Jwas tied very closely to the al-gebroa of E involving products and
sums of diagrams.
The meaning of a product turned out to be aOM-
position of functions; and that of a sum, a eQnditional "join" of
functions.
セ
The meanings of
in the funcrion space [S
and
セ
are equality and approximation
SJ, respectively.
Hence, it follows from
the monotonic character of compos i tions and conditionals
x
r;;
x' and y
and (b
r;;
y
セ
implies (x;y)
S
x,y)
セッイ ・ウーッョ、ゥョァ
(x' ;y')
x' ,y')
and
S
noted in the last para-
principle with
r;;
replaced by
In view of the connection between
graph, the
(b
r;;
that:
セ
セ
also
follows.
A somewhat more abstract way to state the fact just noted
can be obtained by passing to equivalence classes.
For x E E, we
write
クOセ
'"
{x'
E
E:x
for the equivalen"e alaB8 of x under セ
セ
x'}
We also write
51
to denote the set of all such equivalence classes, the socalled
。zァ・「セ。N
quotient
eOセゥb
And the point is that
an algebra in the
sense that products and sums are well defined on the equivalence
classes, as we
We shall
have just seen.
"
be able to make E seem even more like an algebra,
if
we write:
xtY
for all :c, y E
those
c::B
E (6 .....
E.
=
(T + x,y)
No",..', in Section 6 we restricted consideration to
[5'" T]] such that
(8CT) = T
Thus
"'s(
セIHcbIHクエケIH。
セ
that is the meaning of
クエセ
BsHセI qiIHク 。I
u
VS(':})(tB)(y)(a)
is the latticetheoretic join (or full
sum) of the functions assigned to x and to y.
This, of course,
As a diagram we would draw xty as in Figure 21.
seems very special.
The intended interpretation is that flow of information is directed
through both x
and y and is "joined" at the output.
The sense of
"join" being used is that of the join in the lattice
S.
Pushing the algebraic analogy a bit further we can write
certain conditionals as scalar products:
b·x = (b ..... x.J.)
anc
Cl-b)'Y = (b ..... J.,y)
These two compounds are 、 ゥ セ ァ イ 。 ュ ・ 、
information through
provided
r.
is false.
セ
in Figure 22.
The first passes
provided b is true; the second, through Y
Now, our first really "algebraic" result is this
equivalence:
(b ..... x,y)
That is. up to
"" (b·x)t(l-b)·y
.
equivalence, the conditional sum can be "defined"
by the full sum ""it}1, the aid of scalar mUltiples.
A fact that can
52
b·X
I
. LMセ
----...11
ill
]
L_ .J
Figure 21
A(FULL) SUM
セャャ
r,
...
,
セ
セM
(I-b)'Y
FiQure 22
TWO SCALAR PRODUCTS
,,
FiQure 23
AN INFINITE SUM
,
'\
53
be easily appreciated from the diagrams.
This would not be very
interesting if we did not have further algebraic
セアオゥカ。ャ・ョ」・ウL
but
note the following:
b'(xty) セ
b'xtb'y
b'(o'x) '" b'x
セ
b'(o'x)
o'(b'x)
r:;. x
b·x
(If we had introduced some algebra into S, These results would be
even more regular.
must take
C,lre
But we chose here not to alBebr·,.lici ... セ
to remember that T .is not
d
11.)
One
Buolean alGebra; thus
I
while it 11:1 correct that:
セ
b-xt(1-0)'%
x
,
it is not correct that:
b· (1-0)'x
The reason being that
;;<;
.1
•
= T is possible.
(BCb)(o)
Having sufficient illustration of the properties of scalar multiples, we turn now to products.
First, there is one distributive
law:
x;(ytz)
:: (x;y)1ex;z)
that is correct; but the opposite
(ytz);x セ
is not correct.
of these two
(y;x)t(z;x)
The I'eader may ;::arry out the semantical analysis
ーイッセ ウ・、
laws.
the fact that for
The correctness of the first turns on
f, f' E (S ....
s] and 0 E S we have
(f U f") (0) = l(o) U
f"
(0)
•
The incorrectness of the second is a consequence of the failure in
geneI'al of the
equation
l(o U
for l E [S
-+
0')
S) and 0, cr' E S.
= leo)
U
l(o')
Similarly, one must take care to
note that neither of the following are correct:
,.
(O':c};y
C'(x;y),
J('
x;(b·y};;:;
However, the
。ウ ッセゥ。エゥカ・
b'(x;y)
law for; is valid;
(,:C;Y);2 "" %;(Y;'<:)
Returning to consideration of the operation 1 , we remark
that it: is as sociat i ve up to equivalence a Iso; and since
it is a
join operation, we can prove
:ciY
£
B if and only if :c
£
z and y
£
z
This means that E/ii; is algebraically a se77li-Iattiae with i
join.
as the
Whether E/>e is a lattice, the author does not know at the
moment of I,./:riting.
However, we can define countably infinite joins
in the partially ordered set E/:o:: as follows
of elements of
E,
セ
Given a sequence :en
there is a unique element we shall call
L>n
n=Q
which is characterized by the equation
IX
n
X
01
L
xl'!
n=l
n.=O
In pictorial form the diagram is illustrated in Figure 23.
This
type of combination is clearly only of theoretical interest, but it
does show why E/;;;: is countably complete.
I t may be possible that
E/:;e is a complete lattice. but the author doubts it.
As examples of equivalences involving infinite sums we have:
(Xi
In case Y
rt
LY n )
n=Q
Ie
LJx;y n )
n=D
i;; Yn+l holds for all n, we would also have:
HサRZyョI[xセ
n=O
as a consequf'nce of
セッョエゥョオNゥエケN
-
L(Yn;,r)
1"1=0
There are many other similar laws.
55
9. CONCLU S ION.
Starting with very simpleminded ideas about
flow diagrams as actual diagrams, we introduced the idea of approx-
imation which led to a pal'tiatty o··dered set of diagrams.
A rigor-
OllS, mathematical construction of this set produced what proved to
be a complete
lattice -- the lattice of flow diagrams.
Defined on
this lattice were several atgebJ'aic ope ratione and the lattice as
a whole satisfied an equation that connected it with the approach of
analytic synta.x.
But the limits available in a complete lattice
introduced something new into the picture:
infinite diagpama.
In
particular, these infinite diagrams provided solutions to algebra i.e
equations (the solutions were atgebJ'aio elements) which could be
identified with the intuitive concepts of loops and other "reaursive" diagrams
(i.e. with feedback).
So much for synta.r.
Semantios of flow diagrams entered when the mapping of evaluation was defined from the algebra of diagrams into the algebra
of functions on a state spacB (which was also a lattice).
A bit of
argument was required to see that evaluation captured the intuitive
idea of flow in a diagram. but it became clearer in the example of
a wh11 e-loop.
From there. it was safe to introduce the notion of
eqwivalenae of
diagrams and to study the resulting algebra.
The
reason for working out the equivalence algebra is. of course, to
formalise some
general facts about semantics of flow diagrams.
Much remains to be done before we have a perfect understanding
even of this elementary area of the theory of computation.
For one
thing, only a start on the systematizcltion of the algebra under equi"
valence was made in Section 8.
It may be that equivalence is "ot
at all the most important notion, for there may be too few equations
between diagrams holding as equivalences.
the oonditional equation.
A more useful notion is
That is. we might write
:r:
= :r:' I- y ; Y I
56
x',
for x, if,
all a E S,
y' E E to r:>€an that for aIlS and all
(,].5
a
Lセ
and
if it is the case thdt
V"S' ';1"d! ".r)(O>
thetl
'3',
セ」ョウ・アェLHI
P€
'
"'5' 'J" B".r' "0>
have
't1 s (3)1(f3)(Y)(Ol
=
t"S(":1)(rfI)(y'){O)
iJote that this is not an 1l1'Dlication between two €(]uivalences, but
from each in$tal'lce of one equation to the corresponding :i nstC'lnce
cf the
other.
SiMilarly,
セG・
CDule. '"rite:
x E;: .r'
f- y !; '-,
Also it is Lj3eful to be able to write:
クセL
xoセx Lxャ
" . I- y
y'
to mean that in each instance in which all the hypotheses
left are
true. the conclusion on the rip,ht follows.
on the
Many iMporTant
algebr'aic IdWS Cdn be given such a form.
Thus:, in order to have a really systematic and useful algebra
of flow diagrams, one should study the consequence relation I- dnd
attempt to dxiomatize all of its laws.
An effective
。クゥッセ、エゥコ。エゥッョ
may only be possible for equdtions involving d restr1:cted portion
of E. beoause E contains so many infinite diagrams.
an
ゥョエ・イ ウエゥョセ
question tD
セッョ、・イN
But it is
57
References
[lJ
M. Arbib, Theories of
Eall Series in
[2J
H.
Lセゥォ・b
aオエoセ、ャゥ」
a「ウエイセ」エ
aオエッセ。エ N
Prentice-
Computdtion (1969)
Defi"able Dperatio"s in Gs"eral Algebras,
and the Theory of
and Flowcharts, Private
Gセエッセ。エ
Communication.
[3J
G.
lattice Theory, American Mathematical
Nヲセッィォイゥb
Society Colloquium Publications, Vol. 25, Third
Ole\.,') Edition (1967).
[4J
セN
セ、イォL
Fixpoint Induction an,", Proofs
or
Program
Properties, in Machine Intell1gence 5 (1969).
Edinburgh University Press, pp.
[5J
D. Scott, Some
Theory,
dセヲゥョ エ ッョ。z
59-78.
Suggestions for Automata
Journal of Comnuter and System Sciences.
Vol. 1, No.2 (967). Academic Press, pp. 187-212.
[6J
D. Scott, OutZine of a Mathematical Theory of
Computation in Proceedir.rs of the fourth Annual
Princet0n Conference on Information Sciences and
Systooms (1970). pp.
169-176.
Pr'uI;r'd.JMIing Rese,J.I',_11 Gr.:."up lechrdcal Monag} dplis
August 19"/8
This is d ser"ies ut tl', QセiNゥ」、ャ
monographs
on
topics
in
tile li' I,] 01 c:omputati011. イャ pエィセイ
copies may be
obt<.line,j
from tI,." Progranunirog Hel:lel3r, 'i GJ"()UP, (Technical MO[]ogrdpkl) 1
45
Hanbury Road,
Oxford,
JX2
f,PL.
eョセャ。ョ、N
(The cost
indicated ゥ ョ 」 ャ オ 、 ・ セ
ゥ[オイエ ャHセ G
postage. If faster ,.1eliver'y is
re'1uir'ed it should l,· indjc':.Jred and all a.ddltional
30
per
tellt
sent.)
f'llGl
PRG-2
(Out or 1'r'irtT)
Vand SC'.Jtt.
。キエlゥセX
PHG-J
of
Nathemaeioal
J
tィN、イセ
of Cdmputation
(£0.50)
VaJld Scutt.
The !,attidOl ot' Flow Diagrams
(£1. 00)
lled)
prHセMi
Hc。Nョ」セ
PRG'
I 'Ina Scot t.
Data T!tPflB all
AL。エ ゥサ_ーセ
(o.OO)
PRG-6
Dana Scott and Christopher' ;j'tJ'Bcl,oo>y.
TOIJard a Matl,9matidaZ sセュ。セエゥHBQj
for CompwtQr Langwag8B
(£.0.60)
PRG-7
Dana Scott.
cッョエゥョオッキセ
l。エ ゥq・セ
(£o.,O)
prgMセ
Joseph Stoy and Christopher Str"l.c"hey.
aS8 An
oイq 。エゥセァ
Sy,t8m for a SMall Ccmput.r
(£.1. 00)
I [(:'-:,
Lid lSlu;:JJt"l
[Bエi Nセ\ i lᄋQ
"'11'1
'I'll" 1'.:.1: セ
",j
J
,.
","'1"1,
oセBィャNゥB
HセlAjオI
A[イZセ
- I iJ
ャGM ィ^ェBエセゥGャ j[
:...t['1chey.
vセーゥセエゥ、セ
oj
セイッァイ。ュ ゥBセ
lセョu セ 、
HセijNセ[
!'P:(;- i ;
I セNャ
l"L""l,ll<:r !::ILl:'<J.(;/h:':j .1111.1 CJll·jut,... QG ェLセ
cッョエゥョオセgゥッョYZ
A Muthsmatietll
Jid' HunJlinfj r'u.ll j キ B ・ セ
l'.
IIchl:.. .... lJI·tl,.
sセュ。ョセゥオ。
(LO.60)
ィGHL[セ
QセG
l'o2"lt;;L'
AlZNセエ[ ZNL
Tlit! Math.mlutiual
sセュ。ョエゥッ。
,)
,It:lv! lJJ
(k:l.uO)
r1\:C I
セ
r: .... I.JO:L't Milne.
j'h<:l
and
POl'mal Ssmunti"9 uf Computer
エィセゥイ
ImplsmsntatioM9
lHjNャ ァQ セiャNアj
AV<:lilo.l>le as:
Teahnical Hi(;!'ot ic;he '1'1.:1'2.
A set uf b MicL'ofic;he
([It.OO)
ur
Photocupy PHGX13
ィHャLセ
J4
(£10.U(J)
Sh<w S • .KUD. MictlcH::!l H. Lill<..k clnd Sohrab SddJat.
A Guide to Communioating
sセアオセョエゥセャ
pセッ。Nセ N
(£1.00)