The automatic verification of large parts of mathematics has been an aim of many mathematicians from Leibniz to Hilbert. While G del's first incompleteness theorem showed that no computer program could automatically prove certain true theorems in mathematics, the advent of electronic computers and sophisticated software means in practice there are many quite effective systems for automated reasoning that can be used for checking mathematical proofs...