Leslie Lamport
About
Computer scientist, pioneer in distributed systems and consensus protocols
Cast within
No topic-region cast yet — this appears once Leslie Lamport's compiled claims are aligned into a topic region's argument tree.
Claims by Leslie Lamport (20 of 50)
Edsger Dijkstra invented the formal theory of concurrent programming in a 1965 paper by introducing the concept of critical sections—pieces of code that at most one process can execute at a time—as a way to structure programs as collections of semi-independent tasks that must synchronize.
Lamport drew the notion of 'happens before' from special relativity: just as one event can influence another via light-speed-limited signals in physics, in distributed systems one event can influence another via messages actually sent in the system; this is the fundamental notion of causality in distributed computing.
In the Time, Clocks paper, Lamport described systems in terms of state machines—entities with a state that processes commands in order, where each command changes state and produces a value—and recognized this was the most important idea in the paper, but it was completely ignored by readers.
Understanding a concurrent program requires identifying invariants—boolean-valued properties of the state that, if true at each step, guarantee the output is correct—and reasoning about invariants rather than behavioral sequences reduces complexity from exponential to quadratic in the number of processes.
Much research in distributed systems theory attempts to use partial orderings and behavioral proofs, which is not the practical way to build systems; the method that reliably works is invariance proofs, though there are exceptions like the bakery algorithm where partial orderings are useful.
At the time (1975) Lamport developed his Byzantine algorithm, very few people knew about digital signatures; he learned about them from Whitfield Diffie, a friend, who described the unsolved problem of how to sign messages; Lamport sat down and sketched out the first digital signature algorithm on a napkin.
My Notes
Loading notes...