paper' several derivations 0' algorIthms on acyclic graphs are presented. Acyclic graphs are shov.rn to be ilTlportant lor the solutIon of' a general COI~ITl of' recursive equations, and as such appear everyv.rhere in the pI~actice 01 progralTlIT1ing. In order to f'acilitate the construction of' compact and elegant derivations and to achieve tile necessary level of' abstractIon, some newnotation is introduced, as \.VeIl as an extension of' set and ['unction calculus. Fl.u-therrnoce. a nUlTlbsr 01 addItional prograrnJTling con.structs, such as elernent se~ection f'rorn. a set. a Pascal-llke if'-staternent and a greatly reduce the f'or-stat8IT1811t length or t~e lor sets, prograITls are introduced, 'W"hich and derivations: the 10r-stateITlent even ITlore so v..rhen used in cOITlbination -...vith theoreITls lor the relinenl.ent 01 expression or runction assigoITlents, stated and proved in this paper. Reler-ence to acyclic graphs requires kno-...vledge or -...vhat exactly cyclicity means. their uselulness Then the nl.ost character'ization Various delinitions are proved equivalent and vvith r'espect to program derivation is analyzed. suitable definition, equivalent to the lixed-point in Ill. Is Llsed to derive an algorithITl lor the -...vell-knovvn problem of' checking whether a given graph is cyclic. The set OJ end points of' unbounded paths turns out to piay an essential role here, and in all otherpl~oblerns in this paper. The central probleITl of' the paper concerns the computatIon 01 a general class of' lunctions all. the vertex set 01 an acyciic graph, def"ined by a particular f"orrn of' recursive equation, -...vhich is sho'W"n to have a unique solution. Solvipg this problelTl gives rise to t-...vo InterestIng Subpl"Oblerns: graph inversion 121 and topological sortIng (3)" For these problems, compact derivations of' algorlthlTlS are presented as '\-VeIl. The centz-"al problern is also solved lor equatIons addItIonally satisf"ying algorlthrn. a eel"tain split pn.::>perty, leading Finally. t.he practical applicability to a ITlore elegant 0' t.he theory Is deITlonstrated by lneElnS oC a nurnber 01 typical examples, satisf"ying thIs spl it property" It is stl~essed that neithec tl1.e progralTlITling problems, nor theIr sol utions are the key issue her'e: lTlost of" them are not ne-...v. Ho-...vever, the abstr"act, COnlpv.ct and calculational style of" deriving algorithITls f'rom the pr-oblenl. specilicatlon, developed In this paper, is believed to siInplilY the solution 01 a '\-Vide class of" practical prograITlming problems. CSN 92/04 :JOO.F: 92/21-2
[1]
ten Hmm Huub Eikelder.
Some algorithms to decide the equivalence of recursive types
,
1991
.
[2]
van de E Edwin Sluis,et al.
Design and implementation aspects of remote procedure calls
,
1990
.
[3]
John C. Reynolds,et al.
The craft of programming
,
1981,
Prentice Hall International series in computer science.
[4]
Robert Paige,et al.
Program Derivation by Fixed Point Computation
,
1989,
Sci. Comput. Program..
[5]
A. J. M. van Gasteren,et al.
On the Shape of Mathematical Arguments
,
1990,
Lecture Notes in Computer Science.
[6]
Martin Rem,et al.
The nature of delay-insensitive computing
,
1991
.
[7]
Kurt Mehlhorn,et al.
Data Structures and Algorithms 2: Graph Algorithms and NP-Completeness
,
1984,
EATCS Monographs on Theoretical Computer Science.
[8]
Carroll Morgan,et al.
Programming from specifications
,
1990,
Prentice Hall International Series in computer science.
[9]
Ken Kennedy,et al.
An introduction to the set theoretical language SETL
,
1975
.
[10]
Dick Alstein,et al.
Dynamic reconfiguration in distributed hard real-time systems
,
1991
.