A system for rigorous or formal development of software using the notion of {Abstract Machine}s to specify and design software systems. The B-Method is supported by the B-Toolkit. Abstract Machines are specified using the Abstract Machine Notation (AMN) which is in turn baSED on the mathematical theory of GeneraliSED Substitutions. (1995-03-13)