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)