Carroll Morgan (computer scientist)


Charles Carroll Morgan is an American computer scientist who moved to Australia in his early teens. He completed his education there, including a Doctor of Philosophy degree from the University of Sydney, and then moved to the United Kingdom in the early 1980s. In 2000, he returned to Australia.
During the 1980s and 1990s, Morgan was based at the Oxford University Computing Laboratory in England as a researcher and lecturer working in the area of formal methods, and a Fellow of Pembroke College. Having been influenced by the Z notation of Jean-Raymond Abrial, he authored Programming from Specifications as an attempt to bring the high-level specification aspects of Z together with the rigorous computer program derivation technique of Edsger W. Dijkstra. His treatment concentrated on elementary program constructs to make the material accessible to undergraduates in their early years. Some of the ideas there were later incorporated as elements of the B-Method by Abrial, when Abrial returned in Oxford in the last half of the 1980s.
Together with Annabelle McIver, Morgan later authored Abstraction, Refinement and Proof for Probabilistic Systems in which the same themes were pursued for probabilistic programs.
Morgan is now a professor in the School of Computer Science and Engineering at the University of New South Wales, as well as a Senior Principal Researcher at Trustworthy Systems, part of CSIRO's Data61, both in Australia. His main research interests are probabilistic models for computer security and concurrency. He is a known proponent of a formalized approach to program development called the refinement calculus. He is also the author of many papers, and an active member of several International Federation for Information Processing working groups, including IFIP Working Group 2.1, which supports and maintains the programming languages ALGOL 60 and ALGOL 68.