Abstract Data Types and Software Validation. - Guttag, John V.; Horowitz, Ellis; Musser, David R.; Horning, J. J. (Communications of the ACM, 1978)