A copy of this work was available on the public web and has been preserved in the Wayback Machine. The capture dates from 2019; you can also visit the original URL.
The file type is
We survey the well-known algebraic laws of sequential programming, and extend them with some less familiar laws for concurrent programming. We give an algebraic definition of the Hoare triple, and algebraic proofs of all the relevant laws for concurrent separation logic. We give the provable concurrency laws for Milner transitions, for the Back/Morgan refinement calculus, and for Dijkstra's weakest preconditions. We end with a section in praise of algebra, of which Carroll Morgan is such a master.doi:10.1007/s00165-012-0249-0 fatcat:6jsnrjik7fc5nhiqlu3w5edpii