This volume contains the proceedings ofthe 4th Refinement Workshop which was organised by the British Computer Society specialist group in Formal Aspects of Computing Science and held in Wolfson College, Cambridge, on 9-11 January, 1991. The term refinement embraces the theory and practice of using formal methods for specifying and implementing hardware and software. Most of the achievements to date in the field have been in developing the theoretical framework for mathematical approaches to programming, and on the practical side in formally specifying software, while more recently we have seen the development of practical approaches to deriving programs from their speCifications. The workshop gives a fair picture of the state of the art: it presents new theories for reasoning about software and hardware and case studies in applying known theory to interesting small-and medium-scale problems. We hope the book will be Of interest both to researchers in formal methods, and to software engineers in industry who want to keep abreast of possible applications of formal methods in industry. The programme consisted both of invited talks and refereed papers. The invited speakers were Ib S0rensen, Jean-Raymond Abrial, Donald MacKenzie, Ralph Back, Robert Milne, Mike Read, Mike Gordon, and Robert Worden who gave the introductory talk. This is the first refinement workshop that solicited papers for refereeing, and despite a rather late call for papers the response was excellent.