Application of formal methods to digital system design. - John M. J. Herbert (1986)