Platonism, constructivism, and compuer proofs vs. proofs by hand
Yuri G. Gurevich · 2001
In one of Krylov’s fables, a small dog Moska barks at the elephant who pays no attention whatsoever to Moska. This image comes to my mind when I think of constructive mathematics versus “classical” (that is mainstream) mathematics. In this article, we put a few words into the elephant’s mouth. The idea to write such an article came to me in the summer of 1995 when I came across a fascinating 1917 bet between the constructivist Hermann Weyl and George Polya, a classical mathematician. An English translation of the bet (from German) is found below. Our main objection to the historical constructivism is that it has not been sufficiently constructive. The constructivists have been obsessed with computability and have not paid sufficient attention to the feasibility of algorithms. However, the constructivists’ criticism of classical mathematics has a point. Instead of dismissing constructivism offhand, it makes sense to come up with a positive alternative, an antithesis to historical constructivism. We believe that we have found such an alternative. In fact, it is well known and very popular in computer science: the principle of separating concerns. Many classical mathematicians and computer scientists have been never exposed to constructivism. By way of motivating 20th century constructivism, we recall, in Section 1, the foundational crisis at the beginning of 20th century. In Section 2, constructivism is introduced. That is where the Weyl/Polya bet appears. Section 3 is devoted to positive contributions of constructivism. The ensuing discussion, in Section 4, touches on various related issues. In the final Section 5, we criticize the historical constructivism. ∗In ”Current Trends in Theoretical Computer Science: Entering the 21st Century”, editors Paun, Rozenberg and Salomaa, World Scientific, 2001. The article was first published in 1995 [Gu2] but the introduction was added later. †Microsoft Research, Redmond, WA 98052, USA.