.
1941: Konrad Zuse baut ersten funktionierenden Allzweckrechner. Patentanmeldung 1936. Juergen Schmidhuber.

Jürgen Schmidhuber (August 2021 / English)
Siehe auch: Weltwoche 33.21 (19/8/2021)
AI Blog
@SchmidhuberAI


1941: Konrad Zuse baut ersten funktionalen Allzweckrechner, basierend auf der Patentanmeldung von 1936


Im Jahre 2021 feiern wir den 80. Geburtstag Konrad Zuses krönender Errungenschaft, der Z3, dem weltweit ersten funktionsfähigen programmgesteuerten Allzweckrechner, beruhend auf einer Patentanmeldung von 1936. Heute sind Computer allgegenwärtig, und Milliarden von Menschen hängen von ihnen ab. Nur noch 20 Jahre bis zum Z3-Jubiläum 2041!


Zwischen 1935 und 1941 schuf Konrad Zuse schuf den ersten funktionierenden programmierbaren Computer der Welt 1935-41 Konrad Zuse (1910-1995) den ersten funktionierenden programmierbaren Allzweck-Computer der Welt: die Z3. Die entsprechende Patentanmeldung des "Vaters des Computers" stammt aus dem Jahr 1936.[ZU36-38][RO98] 1946 gründete er auch die erste Computer Startup Firma: das Zuse-Ingenieurbüro Hopferau (IBM lieferte Wagniskapital für eine Option auf Zuses Patente).

Als wäre dies nicht genug, um Zuses Vermächtnis als Wegbereiter der Informatik zu zementieren, entwarf er in den frühen 1940er Jahren auch noch Plankalkül, die erste höhere Programmiersprache[BAU][KNU] (vgl. auch die erste formale Sprache von Gottlob Frege[FRE]). 1945 wandte Zuse Plankalkül auf Schach an,[KNU] 1948 aufs Theorembeweisen.[ZU48] Im Jahr 1967 schlug er Zuse's These vor, nämlich, dass die Physik selbst berechenbar sei, und eine Art zellulärer Automat die Evolution des Universums berechnet.[ZU67-69][ALL2]

Welche Rolle spielt die Z3 in der Geschichte der Informatik? Die Konstruktion von Automaten begann bereits in der Antike. Das Antikythera-Getriebe (eine astronomische Uhr) entstand vor über 2000 Jahren. Eineinhalb Jahrtausende später baute Peter Henlein immer noch konzeptionell ähnliche Maschinen—wenn auch kleiner: die ersten miniaturisierten Taschenuhren (1505). Aber diese Geräte berechneten immer das Gleiche. So teilten sie z.B. die Zahl der Minuten durch 60, um die Zahl der Stunden zu erhalten.

Die 1600er Jahre brachten flexiblere Maschinen, welche Antworten in Reaktion auf Eingabedaten berechneten. Wilhelm Schickard, Anwärter auf den Titel "Vater des automatischen Rechnens", baute 1623 die erste automatische, getriebebasierte, datenverarbeitende Rechenmaschine für einfache Arithmetik, gefolgt von Blaise Pascals überlegener Pascaline (1642).

Leibniz, father of computer science around 1670 Im Jahr 1673 konstruierte Gottfried Wilhelm Leibniz die erste Maschine, die alle vier Grundrechenarten ausführen konnte (den Schrittzähler), und auch die erste mit internem Speicher.[BL16] 1679 beschrieb er Prinzipien von Binärcomputern, die durch Lochkarten gesteuert werden.[L79][LA14][HO66][L03][IN08][LEI21,a,b] 1686 schuf Leibniz seine formale Algebra des Denkens,[L86][WI48] welche aus deduktiver Sicht äquivalent[LE18] ist zur viel späteren Booleschen Algebra[BOO] von 1847. Leibniz als "Vater der Informatik"[LEI21,a,b] wurde oft als "erster Computerwissenschaftler" bezeichnet,[LA14] und sogar als "klügster Mann, der je gelebt hat".[SMO13] Er war nicht nur der erste, der die Integralrechnung veröffentlichte,[L84] sondern verfolgte auch das überaus ehrgeizige Projekt der Klärung aller möglichen Fragen durch Rechnen (Characteristica Universalis & Calculus Ratiocinator[WI48]).

In den frühen 1930er Jahren versetzte Kurt Gödel dem Leibniz'schen Projekt der universellen Fragenbeantworter allerdings einen Schlag.[GOD][GOD34][GOD21,a,b] Mit seiner universellen Sprache zur Kodierung beliebiger formalisierbarer Prozesse (1931-34)[GOD][GOD34] zeigte er, dass es fundamentale Beschränkungen dessen gibt, was entscheidbar oder berechenbar ist. Seine bahnbrechende Arbeit von 1931[GOD] legte die Grundlagen der modernen theoretischen Informatik und der Theorie der künstlichen Intelligenz (KI).[GOD21,a,b]

Der pragmatische Konrad Zuse interessierte sich offenbar nicht besonders für derartige theoretische Arbeiten. Im Jahr 1936, fünf Jahre nach Gödel's berühmter Veröffentlichung,[GOD] reichte er seine Patentanmeldung für einen höchst praktischen realen Rechner an.[ZU36-38][Z36][RO98] Sie beschreibt digitale Schaltungen, die für programmierbare physikalische Hardware erforderlich sind, basierend auf den Leibniz'schen Prinzipien binärer Computer, die durch Lochkarten gesteuert werden (1679).[L79][LA14][HO66][L86][WI48][LEI21,a,b] (Sie geht auch Claude Shannons 1937er Arbeit[SHA37] zum digitalen Schaltungsentwurf voraus.)

Zuses Z3 fehlte zwar die bei Programmierern beliebte explizite bedingte Sprunganweisung "IF ... THEN GOTO ADDRESS ..."[RO98] (später mit geringem Aufwand hinzugefügt bei einer Variante namens Z4 für die ETHZ). Dies hinderte Z3 natürlich nicht daran, ein Universalrechner zu sein.[RO98] Einfache arithmetische Tricks (z.B. Multiplikation mit 0) lassen sich verwenden, um vorübergehend aus jeder Anweisung, die nicht ausgeführt werden soll, weil eine Bedingung nicht erfüllt ist, eine Leerinstruktion zu machen.[RO98] Ignoriert man die unvermeidlichen Speicherbeschränkungen eines jeden realen Computers, war die physikalische Hardware der Z3 tatsächlich universell im modernen Sinne der rein theoretischen, unpraktikablen Konstrukte von Gödel[GOD][GOD34] (1931-34), Church[CHU] (1935), Turing[TUR] (1936), und Post[POS] (1936), welche übrigens auch keine "modernen" bedingten Sprünge aufwiesen (sie hatten ja nicht mal numerierte Speicheradressen, zu denen ein Befehlszähler hätte springen können).

Z3s sichtbar bewegliche Schalter waren elektromagnetische Relais. Die erste elektronische Spezialrechenmaschine (mit unsichtbaren Elektronen als bewegte Teile) war der binäre ABC (USA, 1942) des bulgarisch-stämmigen John Atanasoff (dem "Vater des röhrenbasierten Rechnens"[NASC6a]). Im Gegensatz zu den getriebebasierten Maschinen der 1600er verwendete ABC Vakuumröhren—heutige Maschinen beruhen auf dem von Julius E. Lilienfeld 1925 patentierten Transistorprinzip.[LIL1-2] Doch im Gegensatz zu Zuses Z3 war ABC nicht frei programmierbar. Ebenso wenig war das Tommy Flowers' elektronische Colossus-Maschine (UK, 1943-45), die zum Knacken des Nazi-Codes verwendet wurde.[NASC6]

Das grundlegende Konzept der Programme war zu diesem Zeitpunkt allerdings längst bekannt. Die vielleicht erste praktische programmierbare Maschine war im 1. Jahrhundert ein automatisches Theater[SHA7a][RAU1] des Heron von Alexandria (der anscheinend auch die erste bekannte funktionierende Dampfmaschine baute—die Aeolipile). Die Energiequelle seines programmierbaren Automaten bestand aus einem Fallgewicht, das eine Schnur zog, die um die Stifte eines drehbaren Zylinders gewickelt war. Komplexe Befehlssequenzen zur Steuerung von Türen und Puppen über mehrere Minuten hinweg wurden durch komplexe Umwicklungen kodiert.

Der aus dem 9. Jahrhundert stammende Musik-Automat der Brüder Banu Musa in Bagdad war vielleicht die erste Maschine mit gespeichertem Programm.[BAN][KOE1] Stifte auf einem rotierenden Zylinder stellten Anweisungen für eine dampfgetriebene Flöte dar—vergleiche auch Al-Jazaris programmierbare Trommelmaschine von 1206.[SHA7b]

Die ersten kommerziellen programmgesteuerten Maschinen (lochkartenbasierte Webstühle) entstanden in Frankreich um 1800 durch Joseph-Marie Jacquard und andere—vielleicht die ersten "modernen" Programmierer, die die erste industrielle Software der Welt schrieben. Sie inspirierten Ada Lovelace und ihren Mentor Charles Babbage (UK, um 1840). Er plante vergeblich, einen programmierbaren Universalrechner zu bauen (nur seine nicht-universelle Spezialrechenmaschine führte zu einem funktionierenden Nachbau im 20. Jahrhundert). Im Gegensatz zu Babbage verwendete Zuse das Leibniz'sche Binärrechnerprinzip[L79][L03][HO66][LA14] anstelle der traditionellen dezimalen Arithmetik. Dies vereinfachte die Hardware sehr.[LEI21,a,b] Heute sind die meisten Computer binär wie die Z3.

In diesem Zusammenhang erscheint es angebracht, auf den Unterschied zwischen Programmen und den oben erwähnten begrenzteren benutzerdefinierten Eingabedaten des 17. Jahrhunderts hinzuweisen. Programme sind auf einem Medium (z.B. Lochkarten) gespeicherte Befehlssequenzen. Sie lassen sich immer wieder ausführen, ohne dass ein Mensch eingreifen muss. Die zum Speichern benötigen physikalischen Objekte wurden im Laufe der Jahrhunderte leichter. Antike Maschinen speicherten Programme auf rotierenden Zylindern; Jacquard speicherte sie auf Pappe; Zuse speicherte sie auf 35-mm-Film; heute speichern wir sie oft mit Hilfe von Elektronen und magnetisierbarem Material.

Der erste funktionstüchtige Allzweckrechner, der nicht von Zuse selbst stammte (1941),[RO98] war Howard Aikens dezimaler MARK I (USA, 1944). Eckert und Mauchlys wesentlich schnellerer dezimaler ENIAC (1945/46) wurde durch Umverkabelung programmiert. Sowohl Daten als auch Programme liessen sich ablegen im elektronischen Speicher des Manchester-Babys (Williams, Kilburn & Tootill, UK, 1948) und der ENIAC-Aufrüstung von 1948, welche durch Eingabe numerischer Befehlscodes in den Festspeicher umprogrammiert wurde.[HAI14b] Bereits 1936-38 dürfte Zuse jedoch als erster vorgeschlagen haben, sowohl Programmanweisungen als auch Daten im Speicher abzulegen.[ZU36-38]

Leonardo Torres y Quevedo, the  20th century's first pioneer of practical AI Zuses Arbeiten zu automatischen Schachspielern[KNU] (1945) und Theorembeweisern[ZU48] (1948, lange vor Newell & Simon[NS56]) waren zwar bahnbrechend, doch nicht die ersten im Bereich der Künstlichen Intelligenz (KI). Bereits 1914 baute der Spanier Leonardo Torres y Quevedo als wohl erster Pionier der praktischen KI des 20. Jahrhunderts einen funktionierenden Schach-Endspieler (damals galt Schach noch als eine Tätigkeit, die intelligenten Wesen vorbehalten war). Noch Jahrzehnte später beeindruckte die Maschine, als sie 1951 gegen den KI-Pionier Norbert Wiener auf der Pariser Konferenz spielte,[AI51][BRO21][BRU1-4] welche heute oft als die erste KI-Konferenz überhaupt angesehen wird—obwohl der Begriff "KI" erst 1956 auf einer anderen Konferenz in Dartmouth von John McCarthy geprägt wurde. Tatsächlich nannte man 1951 vieles von dem, was heute als KI bezeichnet wird, noch Kybernetik, mit einem Schwerpunkt vergleichbar dem der modernen KI basierend auf neuronalen Netzen.[DL1-2][DEC]

1941 konnte Zuses Z3 ungefähr eine Elementaroperation (z. B. eine Addition) pro Sekunde ausführen. Seither wurde Rechenleistung alle 5 Jahre 10 mal billiger (man beachte, dass dieses Gesetz viel älter ist als das Moore'sche Gesetz der 1960er, welches besagt, dass sich die Anzahl der Transistoren[LIL1-2] pro Mikrochip alle 18 Monate verdoppelt). Heute (2021), 80 Jahre nach der Z3, führen moderne Computer etwa 10 Millionen Milliarden Befehle pro Sekunde zum gleichen (inflationsbereinigten) Preis aus. Die naive Extrapolation dieses exponentiellen Trends sagt voraus, dass es noch im 21. Jahrhundert billige Rechner mit dem Tausendfachen der rohen Rechenleistung aller menschlichen Gehirne zusammengenommen geben wird.[RAW] Wo liegen die physikalischen Grenzen? Nach Bremermann (1982)[BRE] kann ein Computer mit 1 kg Masse und 1 Liter Volumen höchstens 1051 Operationen pro Sekunde auf höchstens 1032 Bits ausführen. Ein Vierteljahrtausend nach der Z3 wird sich der obige Trend der Bremermann-Grenze annähern, so um das Jahr 2200 herum. Da es im Sonnensystem nur 2 x 1030 kg Masse gibt, muss der Trend allerdings innerhalb weniger Jahrhunderte umschlagen, da die Lichtgeschwindigkeit den möglichen Zuwachs an Masse (z.B. in Form anderer Sternsysteme) durch eine polynomielle Funktion der Zeit stark einschränkt, wie bereits 2004 festgestellt.[OOPS2]

Schon 1970, lange bevor Rechner allgegenwärtig waren, zählte Peters renommierter Atlas der Weltgeschichte Zuse zu den 30 wichtigsten Persönlichkeiten des 20. Jahrhunderts, zusammen mit Einstein, Gandhi, Hitler, Lenin, Roosevelt, Mao, Picasso, etc. Zuses historische Bedeutung hat sich mit dem exponentiellen Wachstum der Computertechnik seither nur weiter vergrössert. Bereits zur Jahrtausendwende trugen mehr als 80 Strassen und Plätze seinen Namen. Eine Sammlung seiner Schriften samt Bildern seiner Maschinen findet sich in diesem Online-Archiv.

Kurt Goedel, Begründer der theoretischen Computerwissenschaft um 1931 Im Jahr 2021 feiern wir nicht nur den 80. Jahrestag von Zuses Rechner, sondern auch den 90. Jahrestag von Kurt Gödel's bahnbrechender Arbeit von 1931,[GOD][GOD21,a,b] die die Grundlagen der theoretischen Informatik und der KI-Theorie legte. Gödel identifizierte die fundamentalen Grenzen des Theorembeweisens, des Rechnens, der KI, der Logik und der Mathematik selbst.[GOD][GOD34][BIB3][GOD21,a,b] Dies hatte enormen Einfluss auf Wissenschaft und Philosophie des 20. Jahrhunderts.[GOD21,a,b] Es scheint kaum glaubhaft, dass binnen nicht mal eines Jahrhunderts etwas, das einst nur in den Köpfen solcher Titanen lebte, zu einem unverzichtbaren Teil der modernen Gesellschaft geworden ist. Die Welt schuldet diesen Wissenschaftlern viel. Noch 10 Jahre bis zur Gödel-Hundertjahrfeier 2031, 20 bis zur Zuse-Hundertjahrfeier 2041, und 1/4 Jahrhundert bis zur 4. Leibniz-Hundertjahrfeier 2046! Genug Zeit, um entsprechende Paraden zu planen.


Danksagung

Creative Commons License Dank an Moshe Vardi, Herbert Bruderer, Jack Copeland, Wolfgang Bibel, Teun Koetsier, Scott Aaronson, Dylan Ashley, Sebastian Oberhoff, Kai Hormann, und weiteren Gutachtern für nützliche Kommentare zum Inhalt der Begleitartikel.[LEI21,a,b][GOD21,a,b][ZUS21,a,b] Da sich Wissenschaft um Selbstkorrektur dreht, lassen Sie es mich unter juergen@idsia.ch wissen, falls Sie irgendwo einen Fehler finden. Der Inhalt dieses Artikels darf für erzieherische und nicht-kommerzielle Zwecke verwendet werden, auch für Wikipedia und ähnliche Seiten, unter der "Creative Commons Namensnennung—Nicht-kommerziell—Weitergabe unter gleichen Bedingungen 4.0 International (CC BY-NC-SA 4.0) Lizenz".


Referenzen

[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.)

[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.

[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.

[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.]

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

[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.]

[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.

[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.

[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.

[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.

[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 history of the modern computing machine goes back to Leibniz and Pascal. Indeed, 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"."]

[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.]

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

[NASC6] J. Schmidhuber. Colossus was the first electronic digital computer. Correspondence, Nature, 441 p 25, May 2006.

[NASC6a] J. Schmidhuber. Comment on "Biography: The ABC of computing" by J. Gilbey, Nature 468 p 760-761 (2010). Link.

[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.

[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 (AI Blog, 2019). Deep Learning: Our Miraculous Year 1990-1991. Preprint arXiv:2005.05744, 2020.

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

[HAI14] T. Haigh (2014). Historical reflections. Actually, Turing did not invent the computer. Communications of the ACM, Vol. 57(1): 36-41, Jan 2014. PDF.

[HAI14b] T. Haigh, M. Priestley, C. Rope (2014). Reconsidering the Stored-Program Concept. IEEE Annals of the History of Computing. IEEE, 2014. PDF.

[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).]

[ZU67] K. Zuse (1967). Rechnender Raum, Elektronische Datenverarbeitung, vol. 8, pages 336-344, 1967. PDF scan.

[ZU69] K. Zuse (1969). Rechnender Raum, Friedrich Vieweg & Sohn, Braunschweig, 1969. English translation: Calculating Space, MIT Technical Translation AZT-70-164-GEMIT, MIT (Proj. MAC), Cambridge, Mass. 02139, Feb. 1970. PDF scan.

[BRE] H. J. Bremermann (1982). Minimum energy requirements of information transfer and computing, International Journal of Theoretical Physics, 21, 203-217, 1982

[RAW] J. Schmidhuber (AI Blog, 2001). Raw Computing Power.

[OOPS2] J. Schmidhuber. Optimal Ordered Problem Solver. Machine Learning, 54, 211-254, 2004. PDF. HTML. HTML overview. Download OOPS source code in crystalline format.

[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.

[Z36] S. Faber (2000). Konrad Zuses Bemühungen um die Patentanmeldung der Z3.

[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.

[NEU45] J. von Neumann (1945). First Draft of a Report on the EDVAC.

[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.]

[BRU1] H. Bruderer. Computing history beyond the UK and US: selected landmarks from continental Europe. Communications of the ACM 60.2 (2017): 76-84.

[BRU2] H. Bruderer. Meilensteine der Rechentechnik. 2 volumes, 3rd edition. Walter de Gruyter GmbH & Co KG, 2020.

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

[BRU4] H. Bruderer. The Birthplace of Artificial Intelligence? Communications of the ACM, BLOG@CACM, Nov 2017. Link.

[BRO21] D. C. Brock (2021). Cybernetics, Computer Design, and a Meeting of the Minds. An influential 1951 conference in Paris considered the computer as a model of—and for—the human mind. IEEE Spectrum, 2021. Link.

[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.

[SHA7b] N. Sharkey (2007). A 13th Century Programmable Robot. Univ. of Sheffield, 2007. [On a programmable drum machine of 1206 by Al-Jazari.]

[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.

[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.]
.

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