Edsger W. Dijkstra Archive



EWD Index:

BibTeX index

MC Reports

Other documents


Video and Audio

External links


These publishers hold copyrights in publications whose
manuscripts are reproduced in this web site.

Academic Press

 EWD568 A programmer's early memories. A History of Computing in the Twentieth Century. Academic Press, 1980: 563-573.


 EWD196 The structure of the ``THE''-multiprogramming system. Commun. ACM 11 (1968), 5: 341-346.
 EWD340 The humble programmer. Commun. ACM 15 (1972), 10: 859-866.
 EWD426 Self-stabilizing systems in spite of distributed control. Commun. ACM 17 (1974), 11: 643-644.
 EWD472 Guarded commands, non-determinacy and formal derivation of programs. Commun. ACM 18 (1975), 8: 453-457.
 EWD496A On-the-fly garbage collection: an exercise in cooperation. Commun. ACM 21 (1978), 11: 966-975.


 EWD1017 Fillers at a YoP-institute. Formal Development of Programs and Proofs. Addison-Wesley, 1990: 211-227.
 EWD1019 Fillers at a YoP-institute. Formal Development of Programs and Proofs. Addison-Wesley, 1990: 209-210.
 EWD1020 The derivation of a proof by J.C.S.P. van der Woude. Formal Development of Programs and Proofs. Addison-Wesley, 1990: 201-207.


 EWD209A A constructive approach to the problem of program correctness. BIT 8 (1968), : 174-186.
 EWD954a On binary operators and their derived relations. BIT 28 (1988): 378-382.

Elsevier Science Publishers B.V.

 EWD329 Information streams sharing a finite buffer. Inf. Proc. Letters 1 (1972): 179-180
 EWD687 Termination detection for diffusing computations. Inf. Proc. Letters 11 (1980), 1: 1-4.
 EWD817 An introduction to three algorithms for sorting in situ . Inf. Proc. Letters 15 (1982), 3: 129-134.
 EWD840 Derivation of a termination detection algorithm for distributed computations. Inf. Proc. Letters 16 (1983): 217-219.
 EWD953 A heuristic explanation of Batchers's Baffler. Science of Computer Programming 9 (1986): 213-220.
 EWD1071 Making a fair roulette from a possibly biased coin. Inf. Proc. Letters 36 (1990): 193.


 EWD709 My hopes of computing science. Proc. 4th Int. Conf. on Software Engineering, Munich, 1979.

Mathematical Association of America

 EWD361 Programming as a discipline of mathematical nature. Am. Math. Monthly 81 (1974), 6: 608-612.
 EWD1294 Designing a calculational proof of Cantor's theorem. Am. Math. Monthly (to appear).


 EWD401 The characterization of semantics. A Discipline of Programming. Prentice-Hall, 1976: Chapter 3.

The Royal Society

 EWD871 Invariance and nondeterminacy. Philosophical Transactions of the Royal Society, Series A,Volume 312, 1984.

Springer-Verlag NY

From Selected Writings on Computing: A Personal Perspective (1982):

 EWD227 Stepwise program construction.  1-14
 EWD338 Parallelism in multi-record transactions  15-21
 EWD376 Finding the maximum strong components in a directed graph  22-30
 EWD385 Trip report E.W.Dijkstra Summer School Munich, July 25 to August 4, 1973  31-33
 EWD386 The solution to a cyclic relaxation problem  34-35
 EWD387 Trip report IBM Seminar ``Communication and Computers'', Newcastle, Sept. 1973.  36-40
 EWD391 Self-stabilization in spite of distributed control  41-46
 EWD407 Acceptance speech for the AFIPS Harry Goode Memorial Award 1974  47-49
 EWD427 Speech at the occasion of an anniversary  50-53
 EWD442 Inside ``Mathematics Inc''  54-55
 EWD443 A multidisciplinary approach to mathematics  56-59
 EWD447 On the role of scientific thought  60-66
 EWD462 A time-wise hierarchy imposed upon the use of a two-level store  67-78
 EWD464 A new elephant built from mosquitos humming in harmony  79-83
 EWD465 Monotonic replacement algorithms and their implementation  84-88
 EWD466 Trip report E.W.Dijkstra, Meeting IFIP W.G.2.3., Munich, 8-14 December 1974  89-94
 EWD474 Trip report visit ETH Zurich, 3-4 February 1975 by E.W.Dijkstra  95-98
 EWD475 A letter to my old friend Jonathan  99-103
 EWD480 ``Craftsman or Scientist?''  104-109
 EWD482 Exercises in making programs robust  110-119
 EWD494 Trip report E.W.Dijkstra 16th April/7th May, U.S.A. and Canada  120-128
 EWD498 How do we tell truths that might hurt?  129-131
 EWD501 Variations on a theme: an open letter to C.A.R. Hoare  132-140
 EWD503 A post-scriptum to EWD501.  141-144
 EWD504 Erratum and embellishments of EWD503  145-146
 EWD508 A synthesis emerging?  147-160
 EWD512 Comments at a Symposium  161-164
 EWD513 Tripreport E.W.Dijkstra Newcastle, 8-12 September 1975  165-168
 EWD525 On a warning from E.A.Hauck  169-171
 EWD528 More on Hauck's warning  172-173
 EWD538 A collection of beautiful proofs  174-183
 EWD539 Mathematics Inc., a private letter from its Chairman  184-187
 EWD553 On a gauntlet thrown by David Gries  357-359
 EWD554 A personal summary of the Gries-Owicki Theory  188-199
 EWD561 A ``non trip report'' from E.W.Dijkstra  200-204
 EWD563 Formal techniques and sizeable programs  205-214
 EWD570 An exercise for Dr.R.M.Burstall  215-216
 EWD573 A great improvement  217-219
 EWD575 To H.D.Mills, Chairman Software Methodology Panel  220-222
 EWD576 On subgoal induction  223-224
 EWD577 Tripreport E.W.Dijkstra, ECI-conference 9-12 August 1976, Amsterdam  225-229
 EWD578 More about the function ``fusc'' (A sequel to EWD570)  230-232
 EWD582 A proof of a theorem communicated to us by S.Ghosh  233-234
 EWD584 Tripreport E.W.Dijkstra, Poland and USSR, 4-25 September 1976  235-244
 EWD585 Tripreport E.W.Dijkstra, Tokyo, 28 Sep.-3 Oct. 1976.  245-250
 EWD594 A parable.  251-252
 EWD603 Tripreport E.W.Dijkstra, St.Pierre-de-Chartreuse, 12-19 Dec.1976  253-258
 EWD607 A correctness proof for communicating processes: a small exercise.  259-263
 EWD608 An elephant inspired by the Dutch National Flag  264-267
 EWD611 On the fact that the Atlantic Ocean has two sides  268-276
 EWD613 Tripreport E.W.Dijkstra, Australia, 16 February 1977-21 March 1977  277-283
 EWD614 A somewhat open letter to EAA or: why I proved the boundedness of the non-determinacy in the way I did.  284-287
 EWD618 On Webster, users, bugs and Aristotle  288-291
 EWD622 On making solutions more and more fine-grained (In gratitude dedicated to C.A.R.Hoare, D.E.Knuth, and J.F.Traub.)  292-307
 EWD623 The mathematics behind the Banker's Algorithm  308-312
 EWD629 On two beautiful solutions designed by Martin Rem  313-318
 EWD635 Tripreport E.W.Dijkstra, Newcastle-upon-Tyne, 5-10 Sept. 1977  319-323
 EWD636 Why naive program transformation systems are unlikely to work  324-328
 EWD637 The three golden rules for successful scientific research  329-330
 EWD639 The introduction of MAES(R)  331-333
 EWD643 A class of simple communication patterns  334-337
 EWD648 ``Why is software so expensive?'' An explanation to the hardware designer.  338-348
 EWD650 A theorem about odd powers of odd integers.  349-350
 EWD671  Program inversion  351-354
 EWD673 On weak and strong termination.  355-357
 EWD675 The equivalence of bounded nondeterminacy and continuity  358-359
 EWD678 A story that starts with a very good computer  360-362

From Springer-Verlag journals:

 EWD697 Some beautiful arguments using mathematical induction. Acta Informatica 13 (1980): 1-8 .
 EWD922 A belated proof of self-stabilization. Distributed Computing 1 (1986): 5-6.
 EWD924 On a cultural gap. The Mathematical Intelligencer 8 (1986), 1: 48-52 .
 EWD1029 The linear search revisited. Structured Programming 1 (1989): 5-9.

From E.W.Dijkstra and C.S.Scholten, Predicate Calculus and Program

 EWD910 Semantics of straight-line programs (Draft Chap.4).  Chapter 7
 EWD912 Extreme solutions of equations (Draft Ch.5)  Chapter 8
 EWD928 On structures  Chapter 1
 EWD949 On substitution, replacement, and the notion of a function  Chapters 2 and 3
 EWD969 Extreme solutions of equations  Chapter 8
 EWD999 Our proof format  Chapter 4
 EWD1001 The calculus of boolean structures (Part 0)  Chapter 5, pp. 30-62
 EWD1002 The calculus of boolean structures (Part 1)  Chapter 5, pp. 62-80
 EWD1020 The derivation of a proof by J.C.S.P. van der Woude.
Also published as Formal Development of Programs and Proofs. Addison-Wesley, 1990: Chapter 16.
 Chapter 6, pp. 90-95

Revised Thu, 26 Aug 2004