.
2021: 375th birthday of Leibniz, father of computer science. Juergen Schmidhuber.

Jürgen Schmidhuber (2021)
Pronounce: You_again Shmidhoobuh
German version: FAZ, 17 May 2021
AI Blog
@SchmidhuberAI


2021: 375th birthday of Leibniz, founder of computer science


Abstract. In 2021, we are celebrating the 375th birthday of Gottfried Wilhelm Leibniz (1646-1714) aka "the world's first computer scientist."[LA14] Not only was he the first to publish infinitesimal calculus (1684),[L84] he also designed the first machine that could perform all four arithmetic operations (1673), and the first with an internal memory.[BL16] He described the principles of binary computers (1679)[L79][L03][LA14][HO66][LEI21,a,b] employed by virtually all modern machines. His formal Algebra of Thought (1686)[L86][WI48] was deductively equivalent[LE18] to the much later Boolean Algebra.[BOO] His Characteristica Universalis & Calculus Ratiocinator aimed at answering all possible questions through computation;[WI48] his "Calculemus!" is one of the defining quotes of the age of enlightenment.


The title "father of computer science" does not seem too immodest. Leibniz made fundamental contributions to both the theory and the practice of computing. He has been called the "last universal genius",[PE10] "the world's first computer scientist,"[LA14] and "the smartest man who ever lived."[SMO13]

While the design of automata dates back at least to antiquity, e.g., the gear-based Antikythera mechanism (a kind of astronomical calculator) over 2000 years ago, or the world's first programmable machine by Heron of Alexandria in the 1st century,[SHA7a][RAU1] many aspects of "modern" computer science can indeed be traced back to Leibniz.

In 1673, he designed the first machine (the step reckoner) that could perform all four arithmetic operations. This went beyond the first gear-based data-processing calculator by Wilhelm Schickard (1623) and the superior Pascaline by Blaise Pascal (1642). It was emphasized that "being able to compute the four basic arithmetic operations is equivalent to be able to execute any given numerical computation."[BL16] In fact, about a quarter-millennium later, Kurt Gödel used basic arithmetics to encode arbitrary formal systems and computations (1931-34).[GOD][GOD34][GOD21,a,b]

The step reckoner also was the first machine with an internal memory: the Leibniz wheel stored the multiplicand of a multiplication, counting the number of subsequent additions.[BL16] Of course, memory is essential for modern computing.

From 1679-1703, inspired by the ancient binary I Ching from China, Leibniz documented the binary arithmetics employed by virtually all modern computers.[L03][L79] It should be mentioned, however, that binary number encodings per se are much older than that, dating back to ancient Egypt. The algorithmic part on binary arithmetic operations is relatively new though. Compare also Juan Caramuel y Lobkowitz' publication on binary encodings (1670) and Thomas Harriott's unpublished papers.[IN08][SH51]

In 1679, Leibniz described the very principles of a binary computer.[HO66][L79] It represented "binary numbers using marbles governed by punch cards."[LA14] "His description describes precisely how electronic computers function. Gravity and movement of marbles are replaced by electrical circuits, but the principle functions in the same way."[LA14]

In 1686, Leibniz created his formal Algebra of Thought[L86][WI48] which is deductively equivalent[LE18] to the much later Boolean Algebra of 1847.[BOO] Here the truth values 0 and 1 are linked by elementary operations such as and/or to form possibly complex expressions. This laid the foundations for the first formal language (1879) by Gottlob Frege[FRE] and thus for the theory of computation. Bertrand Russell wrote that Leibniz advanced the field of formal logic "in a way that had not been seen since Aristotle."[RU45][LA14]

Remarkably, for much of his life, Leibniz pursued the extremely ambitious project to settle all possible questions through computation. Inspired by the 13th century scholar Ramon Llull [LL7], he produced highly influential ideas on a universal language and a general calculus for reasoning (Characteristica Universalis & Calculus Ratiocinator).[LE18] The AI pioneer Norbert Wiener said: "Indeed, the general idea of a computing machine is nothing but a mechanization of Leibniz's Calculus Ratiocinator."[WI48]

Leibniz' "Calculemus!" is one of the defining quotes of the age of enlightenment:
"If controversies were to arise, there would be no more need of disputation between two philosophers than between two accountants. For it would suffice to take their pencils in their hands, to sit down with their slates and say to each other [...]: Let us calculate!"[RU58]

As if his achievements in computer science were not enough to cement Leibniz' legacy as one of the greatest scientists ever, he also was the first to publish infinitesimal calculus in 1684,[L84][SON18][MAD05] extending the pioneering work of Archimedes (perhaps the greatest scientist ever[ARC06]) who introduced infinitesimals over two millennia ago, and already had special cases of calculus, e.g., for spheres and parabola segments—see also more recent calculus breakthroughs by Madhava of Sangamagrama and colleagues in the 14th century.[MAD86][MAD01][MAD05] As all our time on this earth is finite, here I won't even mention Leibniz' numerous additional contributions to mathematics & probability theory, engineering, linguistics, biology, medicine, geology, psychology, politics, law, ethics, theology, history, philology, and philosophy.[RU58]

How did the theory of computation progress after Leibniz' death in 1716? Over 2 centuries later, Kurt Gödel extended Frege's above-mentioned Leibniz-inspired formal language (1879)[FRE] and finally introduced a universal coding language in 1931-34.[GOD][GOD34][GOD21,a,b] He used his so-called Gödel Numbering to represent both data (such as axioms and theorems) and programs[VAR13] to show that there are fundamental limitations to what is decidable or computable, thus dealing a blow to Leibniz' project on universal problem solving.[GOD][GOD34] His groundbreaking 1931 paper[GOD] laid the foundations of modern theoretical computer science and the theory of artificial intelligence (AI). Gödel sent shock waves through the academic community when he identified the limits of theorem proving, computing, AI, logics, and mathematics itself. This had enormous impact on science and philosophy of the 20th century (some even misunderstood his result and thought he showed that humans are superior to AIs[BIB3]).

In 1935, Alonzo Church derived a corollary / extension of Gödel's result by showing that Hilbert & Ackermann's famous Entscheidungsproblem (decision problem) does not have a general solution.[CHU] In 1936, Alan Turing introduced yet another universal model, the Turing Machine,[TUR] and rederived the above-mentioned result. In the same year of 1936, Emil Post published yet another independent universal model of computing.[POS] Today we know many such models. However, the formal models of Gödel (1931-34), Church (1935), Turing (1936), and Post (1936) were theoretical pen & paper constructs that cannot directly serve as a foundation for practical computers. So then how did practical hardware progress after Leibniz?

The first commercial program-controlled machines (punch card-based looms) were built in France around 1800 by Joseph-Marie Jacquard and others—perhaps the first "modern" programmers who wrote the world's first industrial software. They inspired Ada Lovelace and her mentor Charles Babbage (UK, circa 1840). He planned but was unable to build a programmable, general purpose computer (only his non-universal special purpose calculator led to a working 20th century replica). In 1941, however, Konrad Zuse completed Z3, the world's first practical, working, programmable, general-purpose computer, based on his 1936 patent application.[ZU36-38][RO98][ZUS21,a,b] Ignoring the inevitable storage limitations of any physical computer, the physical hardware of Z3 was indeed universal in the "modern" sense of Gödel, Church, Alan Turing, and Post—simple arithmetic tricks can compensate for Z3's lack of an explicit conditional jump instruction.[RO98] Unlike Babbage, Zuse used Leibniz' binary computations[L79][L03][HO66][LA14] instead of traditional decimal arithmetics. This greatly simplified the hardware. Since the late 20th century, binary computers based on Julius Edgar Lilienfeld's field effect transistor principle (1925)[LIL1-2] have become ubiquitous. Billions of people depend on them to do everything from making their morning coffee to monitoring their vital signs while in hospital.

In 2021, we are not only celebrating the 375th anniversary of Leibniz, but also the 90th anniversary of Gödel's famous 1931 paper and the 80th anniversary of the world's first functional program-controlled computer by Zuse (1941). 10 years to go until the Gödel centennial in 2031, 20 years until the Zuse centennial in 2041, and 1/4 century until the 4th Leibniz centennial in 2046! Enough time to plan appropriate celebrations.


Acknowledgments

Creative Commons License Thanks to Moshe Vardi, Herbert Bruderer, Jack Copeland, Wolfgang Bibel, Teun Koetsier, Scott Aaronson, Dylan Ashley, Sebastian Oberhoff, Kai Hormann, and several other experts for useful comments on the contents of the four companion articles.[LEI21,a,b][GOD21,a,b][ZUS21,a,b][TUR21] Since science is about self-correction, let me know under juergen@idsia.ch if you can spot any remaining error. The contents of this article may be used for educational and non-commercial purposes, including articles for Wikipedia and similar sites. This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.


References

[GOD] K. Gödel. Über formal unentscheidbare Sätze der Principia Mathematica und verwandter Systeme I. Monatshefte für Mathematik und Physik, 38:173-198, 1931.

[GOD34] K. Gödel (1934). On undecidable propositions of formal mathematical systems. Notes by S. C. Kleene and J. B. Rosser on lectures at the Institute for Advanced Study, Princeton, New Jersey, 1934, 30 pp. (Reprinted in M. Davis, (ed.), The Undecidable. Basic Papers on Undecidable Propositions, Unsolvable Problems, and Computable Functions, Raven Press, Hewlett, New York, 1965.)

[GOD56] R. J. Lipton and K. W. Regan. Gödel's lost letter and P=NP. Link.

[GOD86] K. Gödel. Collected works Volume I: Publications 1929-36, S. Feferman et. al., editors, Oxford Univ. Press, Oxford, 1986.

[GOD10] V. C. Nadkarni. Gödel, Einstein and proof for God. The Economic Times, 2010.

[GOD21] J. Schmidhuber (AI Blog, 2021). 90th anniversary celebrations: 1931: Kurt Gödel, founder of theoretical computer science, shows limits of math, logic, computing, and artificial intelligence. This was number 1 on Hacker News.

[GOD21a] J. Schmidhuber (2021). Als Kurt Gödel die Grenzen des Berechenbaren entdeckte. (When Kurt Gödel discovered the limits of computability.) Frankfurter Allgemeine Zeitung, 16/6/2021.

[GOD21b] J. Schmidhuber (AI Blog, 2021). 80. Jahrestag: 1931: Kurt Gödel, Vater der theoretischen Informatik, entdeckt die Grenzen des Berechenbaren und der künstlichen Intelligenz.

[URQ10] A. Urquhart. Von Neumann, Gödel and complexity theory. Bulletin of Symbolic Logic 16.4 (2010): 516-530. Link.

[BIB3] W. Bibel (2003). Mosaiksteine einer Wissenschaft vom Geiste. Invited talk at the conference on AI and Gödel, Arnoldsheim, 4-6 April 2003. Manuscript, 2003.

[CHU] A. Church (1935). An unsolvable problem of elementary number theory. Bulletin of the American Mathematical Society, 41: 332-333. Abstract of a talk given on 19 April 1935, to the American Mathematical Society. Also in American Journal of Mathematics, 58(2), 345-363 (1 Apr 1936). [First explicit proof that the Entscheidungsproblem (decision problem) does not have a general solution.]

[TUR] A. M. Turing. On computable numbers, with an application to the Entscheidungsproblem. Proceedings of the London Mathematical Society, Series 2, 41:230-267. Received 28 May 1936. Errata appeared in Series 2, 43, pp 544-546 (1937). [2nd explicit proof that the Entscheidungsproblem (decision problem) does not have a general solution.]

[TUR21] J. Schmidhuber (AI Blog, Sep 2021). Turing Oversold. It's not Turing's fault, though.

[POS] E. L. Post (1936). Finite Combinatory Processes - Formulation 1. Journal of Symbolic Logic. 1: 103-105. Link.

[WA74] H. Wang (1974). From Mathematics to Philosophy, New York: Humanities Press.

[WA96] H. Wang (1996). A Logical Journey: From Gödel to Philosophy, Cambridge, MA: MIT Press.

[H79] Douglas R. Hofstadter (1979). Gödel, Escher, Bach: An Eternal Golden Braid. Basic Books, ISBN 0-465-02656-7, 1979.

[FRE] G. Frege (1879). Begriffsschrift: eine der arithmetischen nachgebildete Formelsprache des reinen Denkens. Halle an der Saale: Verlag Louis Nebert. [The first formal language / formal proofs—basis of modern logic and programming languages.]

[SKO23] T. Skolem (1923). Begründung der elementaren Arithmetik durch die rekurrierende Denkweise ohne Anwendung scheinbarer Veränderlichen mit unendlichem Ausdehnungsbereich. Skrifter utgit av Videnskapsselskapet i Kristiania, I. Mathematisk-Naturvidenskabelig Klasse 6 (1923), 38 pp.

[CAN] G. Cantor (1891). Ueber eine elementare Frage der Mannigfaltigkeitslehre. Jahresbericht der Deutschen Mathematiker-Vereinigung, 1:75-78. [English translation: W. B. Ewald (ed.). From Immanuel Kant to David Hilbert: A Source Book in the Foundations of Mathematics, Volume 2, pp. 920-922. Oxford University Press, 1996.]

[L03] G. Leibniz (1703). In: Explication de l'Arithmetique Binaire / Die Mathematischen Schriften, ed. C. Gerhardt, Berlin 1879, vol.7, p.223. English link. [Leibniz documented the binary arithmetics which allow for greatly simplifiying computing hardware and are employed by virtually all modern computers. Binary number encodings per se, however, seem to date back over 4000 years.]

[L79] G. Leibniz. De Progressione dyadica Pars I. 15 March 1679. [Principles of binary computers governed by punch cards.]

[L84] G. Leibniz (1684). Nova Methodus pro Maximis et Minimis. [First publication on infinitesimal calculus.]

[L86] G. Leibniz (1686). Generales Inquisitiones de analysi notionum et veritatum. Also in Leibniz: Die philosophischen Schriften VII, 1890, pp. 236-247; translated as "A Study in the Calculus of Real Addition" (1690) by G. H. R. Parkinson, Leibniz: Logical Papers—A Selection, Oxford 1966, pp. 131-144.

[BOO] George Boole (1847). The Mathematical Analysis of Logic, Being an Essay towards a Calculus of Deductive Reasoning. London, England: Macmillan, Barclay, & Macmillan, 1847.

[LL7] A. Bonner (2007). The art and logic of Ramon Llull. Brill Academic Pub, p. 290, 2007.

[RU58] B. Russell (1958). The Philosophy of Leibniz. London: George Allen and Unwin, 1958.

[RU45] B. Russell (1945). A History of Western Philosophy. New York: Simon & Schuster.

[LE18] W. Lenzen. Leibniz and the Calculus Ratiocinator. Technology and Mathematics, pp 47-78, Springer, 2018.

[LA14] D. R. Lande (2014). Development of the Binary Number System and the Foundations of Computer Science. The Mathematics Enthusiast, vol. 11(3):6 12, 2014. Link.

[BL16] L. Bloch (2016). Informatics in the light of some Leibniz's works. Communication to XB2 Berlin Xenobiology Conference.

[HO66] E. Hochstetter et al. (1966): Herrn von Leibniz' Rechnung mit Null und Eins. Berlin: Siemens AG.

[IN08] R. Ineichen (2008). Leibniz, Caramuel, Harriot und das Dualsystem. Mitteilungen der deutschen Mathematiker-Vereinigung. 16(1):12-15.

[SH51] J. W. Shirley (1951). Binary Numeration before Leibniz. American Journal of Physics 19 (452-454).

[PE10] F. Perkins (2010). Leibniz: A Guide for the Perplexed. London, GBR: Continuum International Publishing.

[WI48] N. Wiener (1948). Time, communication, and the nervous system. Teleological mechanisms. Annals of the N.Y. Acad. Sci. 50 (4): 197-219. [Quote: "... the general idea of a computing machine is nothing but a mechanization of Leibniz's calculus ratiocinator."]

[SMO13] L. Smolin (2013). My hero: Gottfried Wilhelm von Leibniz. The Guardian, 2013. Link. [Quote: "And this is just the one part of Leibniz's enormous legacy: the philosopher Stanley Rosen called him "the smartest person who ever lived"."]

[MAD86] C. T. Rajagopal, M. S. Rangachari (1986). On medieval Keralese mathematics. Archive for History of Exact Sciences. 35 (2): 91-99.

[MAD01] D. F. Almeida, J. K. John, A. Zadorozhnyy (2001). Keralese mathematics: Its Possible Transmission to Europe and the Consequential Educational Implications. Journal of Natural Geometry 20, 77-104, 2001.

[SON18] T. Sonar. The History of the Priority Dispute between Newton and Leibniz. Birkhaeuser, 2018.

[MAD05] Neither Newton nor Leibniz—The Pre-History of Calculus and Celestial Mechanics in Medieval Kerala. S. Rajeev, Univ. of Rochester, 2005.

[LEI21] J. Schmidhuber (AI Blog, 2021). 375th birthday of Leibniz, founder of computer science.

[LEI21a] J. Schmidhuber (2021). Der erste Informatiker. Wie Gottfried Wilhelm Leibniz den Computer erdachte. (The first computer scientist. How Gottfried Wilhelm Leibniz conceived the computer.) Frankfurter Allgemeine Zeitung (FAZ), 17/5/2021. FAZ online: 19/5/2021.

[LEI21b] J. Schmidhuber (AI Blog, 2021). 375. Geburtstag des Herrn Leibniz, dem Vater der Informatik.

[ARC06] J. Schmidhuber (2006). Archimedes—Greatest Scientist Ever?

[ALL2] J. Schmidhuber (2000). Algorithmic theories of everything. ArXiv: quant-ph/ 0011122. More. See also: Hierarchies of generalized Kolmogorov complexities and nonenumerable universal measures computable in the limit. International Journal of Foundations of Computer Science 13(4):587-612, 2002. PDF. More. See also: The Speed Prior: A New Simplicity Measure Yielding Near-Optimal Computable Predictions. Proc. COLT 2002. PDF. More.

Goedel Machine [GM6] J. Schmidhuber (2006). Gödel machines: Fully Self-Referential Optimal Universal Self-Improvers. In B. Goertzel and C. Pennachin, eds.: Artificial General Intelligence, p. 199-226, 2006. PDF. Preprint arXiv:cs/0309048 (2003). See also: Ultimate Cognition à la Gödel. Cognitive Computation 1(2):177-193, 2009. PDF. More.

[DL1] J. Schmidhuber, 2015. Deep Learning in neural networks: An overview. Neural Networks, 61, 85-117. More.

[DL2] J. Schmidhuber, 2015. Deep Learning. Scholarpedia, 10(11):32832.

[MIR] J. Schmidhuber (2019). Deep Learning: Our Miraculous Year 1990-1991. Preprint arXiv:2005.05744, 2020.

[DEC] J. Schmidhuber (2020). The 2010s: Our Decade of Deep Learning / Outlook on the 2020s.

[VAR13] M. Y. Vardi (2013). Who begat computing? Communications of the ACM, Vol. 56(1):5, Jan 2013. Link.

[ZU36] K. Zuse (1936). Verfahren zur selbsttätigen Durchführung von Rechnungen mit Hilfe von Rechenmaschinen. Patent application Z 23 139 / GMD Nr. 005/021, 1936. [First patent application describing a general, practical, program-controlled computer.]

[ZU37] K. Zuse (1937). Einführung in die allgemeine Dyadik. [Mentions the storage of program instructions in the computer's memory.]

[ZU38] K. Zuse (1938). Diary entry of 4 June 1938. [Description of computer architectures that put both program instructions and data into storage—compare the later "von Neumann" architecture [NEU45].]

[ZU48] K. Zuse (1948). Über den Plankalkül als Mittel zur Formulierung schematisch kombinativer Aufgaben. Archiv der Mathematik 1(6), 441-449 (1948). PDF. [Apparently the first practical design of an automatic theorem prover (based on Zuse's high-level programming language Plankalkül).]

[NS56] A. Newell and H. Simon. The logic theory machine—A complex information processing system. IRE Transactions on Information Theory 2.3 (1956):61-79.

[RO98] R. Rojas (1998). How to make Zuse's Z3 a universal computer. IEEE Annals of Computing, vol. 19:3, 1998.

[BAU] F. L. Bauer, H. Woessner (1972). The "Plankalkül" of Konrad Zuse: A Forerunner of Today's Programming Languages.

[KNU] D. E. Knuth, L. T. Pardo (1976). The Early Development of Programming Languages. Stanford University, Computer Science Department. PDF.

[SHA37] C. E. Shannon (1938). A Symbolic Analysis of Relay and Switching Circuits. Trans. AIEE. 57 (12): 713-723. Based on his thesis, MIT, 1937.

[AI51] Les Machines a Calculer et la Pensee Humaine: Paris, 8.-13. Januar 1951, Colloques internationaux du Centre National de la Recherche Scientifique; no. 37, Paris 1953. [H. Bruderer rightly calls that the first conference on AI.]

[BRU3] H. Bruderer. Milestones in Analog and Digital Computing. 2 volumes, 3rd edition. Springer Nature Switzerland AG, 2020.

[BAN] Banu Musa brothers (9th century). The book of ingenious devices (Kitab al-hiyal). Translated by D. R. Hill (1979), Springer, p. 44, ISBN 90-277-0833-9. [Perhaps the Banu Musa music automaton was the world's first machine with a stored program.]

[KOE1] [21] T. Koetsier (2001). On the prehistory of programmable machines: musical automata, looms, calculators. Mechanism and Machine Theory, Elsevier, 36 (5): 589-603, 2001.

[RAU1] M. Rausch. Heron von Alexandria. Die Automatentheater und die Erfindung der ersten antiken Programmierung. Diplomica Verlag GmbH, Hamburg 2012. [Perhaps the world's first programmable machine was an automatic theatre made in the 1st century by Heron of Alexandria, who apparently also had the first known working steam engine.]

[SHA7a] N. Sharkey (2007). A programmable robot from AD 60. New Scientist, Sept 2017.

[LIL1] US Patent 1745175 by Austrian physicist Julius Edgar Lilienfeld for work done in Leipzig: "Method and apparatus for controlling electric current." First filed in Canada on 22.10.1925. [The patent describes a field-effect transistor. Today, almost all transistors are field-effect transistors.]

[LIL2] US Patent 1900018 by Austrian physicist Julius Edgar Lilienfeld: "Device for controlling electric current." Filed on 28.03.1928. [The patent describes a thin film field-effect transistor.]

[ZUS21] J. Schmidhuber (AI Blog, 2021). 80th anniversary celebrations: 1941: Konrad Zuse completes the first working general computer, based on his 1936 patent application.

[ZUS21a] J. Schmidhuber (AI Blog, 2021). 80. Jahrestag: 1941: Konrad Zuse baut ersten funktionalen Allzweckrechner, basierend auf der Patentanmeldung von 1936.

[ZUS21b] J. Schmidhuber (2021). Der Mann, der den Computer erfunden hat. (The man who invented the computer.) Weltwoche, Nr. 33.21, 19 August 2021. PDF.
.

Highlights of over 2000 years of computing history. Juergen Schmidhuber.