1. Historische Wurzeln der Informatik
Geburt einer Wissenschaft
Die Informatik wurde in diesem Jahrhundert geboren. Geburt einer Wissenschaft - klingt das nicht hochtrabend? Werden Wissenschaften überhaupt geboren?
Bei aller Skepsis: mit dem Wort von der Informatik als "Kind der Mitte
dieses
Jahrhunderts" hat es etwas auf sich. 1955 war noch nicht einmal
der Name
geprägt. Was hat den rasch einsetzenden und nachhaltigen Aufschwung
bewirkt?
Eine zweifellos durch Kriegsereignisse ausgelöste Entwicklung
der elektronischen Schaltungen zur Informationsverarbeitung fand eine Fortsetzung
in zivilen und militärischen Anwendungen: kleinere und
robustere Bauteile waren gefordert; die Erfindung des Transistors und die
Mikrominiaturisierung der Transistorschaltungen führte zu einer dramatischen
Verbesserung des Preis-Leistungsverhältnisses von Rechnern. Die
Mikroelektronik erwies sich als starker Antrieb der Informatik.
Die Anfänge
Gezeugt, um im Bild zu bleiben, wurde die Informatik - besser gesagt,
was wir
heute unter dieser Bezeichnung verstehen - schon am Beginn unserer
Wissenschaftsgeschichte. Euklid lehrte vor 2300 Jahren ein
Verfahren, den größten gemeinsamen Teiler zweier Zahlen zu bestimmen,
das wir heute als 'euklidschen Algorithmus' kennen. Das Wort 'Algorithmus'
geht auf den Namen des Al Chwarismi zurück, der, vor 1200 Jahren
am Hof des Kalifen von Bagdad lebend, mechanische Regeln für das Rechnen
mit indischen ("arabischen") Ziffern und den damit geschriebenen Zahlen
lehrte. Hauptsächlich in der Astronomie kamen dann umfängliche
Rechnungen auf. Von Hand nach festen, eingedrillten Regeln oder ab dem
17. Jhdt. zunächst mit Hilfe einfacher Additionsmaschinen (Wilhelm
Schickard, Blaise Pascal) wurden primitive Algorithmen durchgeführt.
G.W. Leibniz mechanisierte - was Schickard nur unvollkommen
gelungen war - auch die Multiplikation. Dies litt zwar zunächst
unter mechanischen Schwierigkeiten, führte aber im 19. Jahrhundert
zu handwerklich (Thomas) und später auch industriell (Burkhardt,
Odhner, Steiger)
gefertigten Handkurbel-Vierspeziesmaschinen. Hollerith und
Powers erfanden Auswertungsmaschinen für Statistiken,
Burroughs und Fisher rationalisierten durch Buchungsmaschinen
die Büroarbeit, Ritty und Patterson durch Registrierkassen
den Warenhausverkauf. In dieser Weise bot sich 1930 der allgemeinen
Öffentlichkeit das dar, worauf der Computer, eine der tragenden Säulen
der Informatik, aufbauen sollte.
Aber andere Wurzeln der Informatik reichen viel weiter zurück.
Die Bedeutung
der Zahldarstellung für das Rechnen wurde früh erkannt.
Lange Zeit gab es ein Nebeneinander von Sexagesimalsystem und Dezimalsystem.
Bereits Leibniz gab der Entwicklung eine neue Wendung. Er machte
sich vom inzwischen dominanten dezimalen Zahlsystem frei und propagierte
das Dualsystem - zunächst allerdings erfolglos; erst im 20. Jahrhundert
erwies sich das Leibnizsche Rechnen im Dualsystem als vorzüglich
geeignet für elektronische Technologien.
Leibniz befreite ferner den Begriff des Algorithmus von der Beschränkung auf Zahlen und erweiterte ihn auf jegliches "Spiel nach festen Regeln" mit Zeichen, die irgendwelche Bedeutung tragen. Der so verallgemeinerte Algorithmusbegriff präzisiert, was man gemeinhin unter Datenverarbeitung oder Informationsverarbeitung versteht; er ist eine weitere tragende Säule der Informatik, die insofern auf Leibniz zurückgeht.
Die Kryptologie, in der Leibniz sich auch versucht hatte, beruhte
ebenfalls auf diesem verallgemeinerten Algorithmusbegriff. Ein weiteres
Feld, die Mechanisierung einfacher Syllogismen und Aussagefunktionen,
die Allan Marquand und Charles S. Peirce um 1890 angingen
- auch Leibniz hatte sich bereits um eine Codierung von Begriffen
bemüht - erlangte damals noch keine praktische Bedeutung.
Was Leibniz noch nicht einbezog, war die Ablaufsteuerung. Vereinzelte
Erfinder, von Uhren und von Automaten in Menschengestalt ausgehend,
führten über den Engländer Charles Babbage
und den Spanier Leonardo Torres y Quevedo zum Gedanken einer vollen
Automatisierung des Rechnens. Lochkartenmaschinen brachten den Durchbruch,
auch mechanische Tischrechner erhielten im 20. Jahrhundert nach und nach
motorischen Antrieb und vollautomatischen Ablauf der einzelnen Spezies-Operationen.
Eine Krönung war der Quadratwurzel-Automat von Friden.
Die dreißiger Jahre
Zwangsläufig standen in dieser Zeit die Fragen der Technologie
der Rechner im Vordergrund: Die Realisierung der erforderlichen Grundoperationen
mit den zur Verfügung stehenden Mitteln und die Organisation und Optimierung
des Rechenvorgangs. Viele der erarbeiteten Lösungen sind heute nur
noch von historischem Interesse. Was Bestand hatte, waren die sich fast
unbemerkt herauskristallisierenden Konzepte und Prinzipien der Modellierung
von Verarbeitungsvorgängen der Informatik. Vieles von der weiteren
Ausprägung der Informatik war in dem Embryo bereits angelegt, als
in den dreißiger Jahren unruhige Zeiten anbrachen. Bald überstürzte
sich die Entwicklung. Die mathematische Logik, durch Paradoxien geplagt,
verfeinerte die Definition der Begriffe 'beweisbar' und 'berechenbar',
was zu den fundamentalen Sätzen von Kurt Gödel über
Grenzen der formalen Beweisbarkeit führte und zur Gedankenmaschine
von Alan Turing, die als Muster einer 'universellen
Maschine' gedacht war. Und obwohl umfangreiche Relaisschaltungen schon
fünfzig Jahre früher im Bereich des technisch Machbaren
gelegen hatten, begann man erst um 1935 auf dieser Basis - Konrad Zuse
in Deutschland,
Wallace J. Eckert, George R. Stibitz, Howard Aiken in
den Vereinigten
Staaten - Maschinen zu bauen, die mehr konnten als die bloßen
mechanischen Rechengeräte, die auf Knopfdruck nur einzelne Rechenoperationen
ausführten. Die volle Automatisierung führte schließlich
zu Maschinen, die ganze Rechnungen selbständig abarbeiteten und die
überdies für eine Vielzahl verschiedenster Algorithmen nutzbar
- frei programmierbar - waren.
Übrigens löste man sich mancherorts nur schwer vom Dezimalsystem
und von den damit untrennbar verbunden scheinenden Zahnrädern; man
imitierte das Dezimalsystem durch Ringzähler und machte sich dadurch
das Leben schwer. Lediglich Konrad Zuse ging den geraden Weg, er befreite
sich zuerst vom Dezimalsystem und fand eine sehr originelle Lösung
für das duale Rechnen mit mechanischen Mitteln "ohne Räder",
bevor er zu Relais überging.
Der Durchbruch
Den Durchbruch brachten schließlich keine zehn Jahre später die ersten elektronischen Versionen solcher Relais-Rechenautomaten - Helmut Schreyer in Deutschland, JohnP.Eckert und John Mauchly in den Vereinigten Staaten, Thomas Flowers in Großbritannien waren die Pioniere - nicht zu vergessen den Außenseiter John Vincent Atanasoff, der die Relaislösung übersprang. Um im Bild zu bleiben, es setzten die Wehen ein. Die Elektronik erlaubte ungeheuere Steigerungen der Geschwindigkeit (und später, mit der Einführung der Halbleitertechnologie, auch ungeahnte Zuverlässigkeit; die Geburt wurde jedoch begleitet von einer vollständigen Befreiung von den Zwängen des Rechnens mit Zahlen: John von Neumann und seine Mitarbeiter zeigten schon 1946, wie auf der speicherprogrammierten EDVAC im Prinzip Algorithmen mit jedweden codierten Elementen programmierbar waren; die Logiker bewiesen bald die Universalität (im Sinne von Turing) solcher Rechner, für die sich der Name computer einbürgerte. Womit sich der Algorithmus herumschlug - mit einer (abzählbaren) Menge von Zahlen, Zeichen, Wahrheitswerten oder irgendwelchen sonstigen, auch zusammengesetzten 'Objekten' - war nur eine Frage der Universalität der Codierung. Auf die Universalität der Binärcodierung stützte sich auch Zuse in seinem PLANKALKÜL von 1946, damit einem Leibnizschen Gedanken zur vollen Blüte verhelfend.
Bald folgten erste Anwendungen, die den vollen Umfang der gewonnenen algorithmischen Möglichkeiten ausloteten, etwa Programme zur mechanischen Durchführung der symbolischen Differentiation einer Formel (Kahrimanian und Nolan 1953) oder heuristische Beweisprogramme (Gelernter und Rochester 1958); 1959 konnte John McCarthy mit der Programmiersprache LISP für den allgemeinen Gebrauch rekursiver Programme plädieren.
In dieser stürmischen Zeit, als solcherart Neuland erobert wurde, hätte man sich oft auf Vorarbeiten, insbesondere in der mathematischen Logik, stützen können, nahm sich aber nicht immer die Zeit dazu. Gelegentlich waren auch die Türen versperrt. So schade das war, trug es doch mit dazu bei, daß die aufkeimende Informatik selbständig werden mußte. Sie formierte sich damals als Wissenschaftsdisziplin, indem sie viele Einzeldisziplinen um ein Kernanliegen herum gruppierte. Dieses Herzstück der Informatik war die Erforschung der Beschreibungsmöglichkeiten von Algorithmen durch Programmiersprachen, einschließlich ihrer Komplexität, ihrer Effizienz im Hinblick auf vorgegebene algorithmische Maschinen und schließlich ihre Materialisierung durch neue, den jeweiligen technologischen Fortschritt einbeziehende Maschinenarchitekturen. Das ist auch heute noch so; wir werden darauf im übernächsten Abschnitt zurückkommen.
Friedrich L. Bauer
Wilfried.Brauer@informatik.tu-muenchen.de
Eike.Jessen@informatik.tu-muenchen.de
Manfred.Broy@informatik.tu-muenchen.de