Modeling in event-b - system and software engineering by Jean-Raymond Abrial