  This essay considers the special character of mathematical reasoning, and
draws on observations from interactive theorem proving and the history of
mathematics to clarify the nature of formal and informal mathematical language.
It proposes that we view mathematics as a system of conventions and norms that
is designed to help us make sense of the world and reason efficiently. Like any
designed system, it can perform well or poorly, and the philosophy of
mathematics has a role to play in helping us understand the general principles
by which it serves its purposes well.
