CASL, the Common Algebraic Specification Language, was designed by the members of CoFI, the Common Framework Initiative for algebraic specification and development, and is a general-purpose language for practical use in software development for specifying both requirements and design. CASL is already regarded as a de facto standard, and various sublanguages and extensions are available for specific tasks. This reference manual presents a detailed documentation of the CASL specification formalism. It reviews the main underlying concepts, and carefully summarizes the intended meaning of each construct of CASL. The book formally defines both the syntax and semantics of CASL, and presents a logic for reasoning about CASL specifications. Furthermore, extensive libraries of CASL specifications of basic data types are provided as well as a comprehensive annotated bibliography of CoFI publications. As a separate, complementary book LNCS 2900 presents a tutorial introduction to CASL, the CASL User Manual.