The first generalisation , created with Jeffrey Zucker , focuses on imperative programming with abstract data types .
The first generalisation , created with Jeffrey Zucker , covers specifications and verification using Hoare logic .
The first generalisation , created with Jeffrey Zucker , focuses on imperative programming with abstract data types and covers specifications and verification using Hoare logic .