Based on the ontology and semantics of algebra, the computer algebra system Magma enables users to rapidly formulate and perform calculations in abstract parts of mathematics. Edited by the principal designers of the program, this book explores Magma. Coverage ranges from number theory and algebraic geometry, through representation theory and group theory to discrete mathematics and graph theory. Includes case studies describing computations underpinning new theoretical results.