Formal Specification is a textbook for 2nd/3rd year undergraduate and postgraduate courses in Formal Methods which offers a practical and versatile approach to constructing specifications. It covers both model-based and algebraic approaches and emphasises the range of languages and approaches which are available. Mathematical principles are explained using examples from everyday life (like card games), in order to "e;demystify"e; them and make them more comprehensible. It includes: unrivalled coverage of the topic including all important, recent advances lots of exercises with model answers case studies to guide students through the main principles margin notes to identify key points. Readers of this book do not have to be fully competent in formal specification - it is written to be accessible to any student who wants to learn about the topic.