PolymathicAlle Ideen →
Mathematik

Funktionen

Eine Regel, die für jede Eingabe eine Ausgabe verspricht — und sobald du sie hast, zählt die Eingabe nicht mehr.

Den größten Teil ihrer Geschichte hindurch meinte Funktion eine Formel. Newton sprach von Fluenten, Leibniz von Größen, die von einer Variablen abhängen, und in beiden Fällen ging man davon aus, sich die Abhängigkeit mit Arithmetik, Wurzeln und gelegentlich einem Sinus aufschreiben zu lassen. Dann, 1837, gab der deutsche Mathematiker Peter Gustav Lejeune Dirichlet eine Definition, die diese Annahme leise sprengte: eine Funktion, so sein Vorschlag, sei eine Regel, die jedem Element einer Menge genau ein Element einer anderen zuordneteine Formel ist nicht nötig. Das Beispiel, das er anführte, war bewusst monströs: eine Funktion, die 1 liefert, wenn die Eingabe rational ist, und 0, wenn sie irrational ist. Kein Ausdruck, kein zeichenbarer Graph — und dennoch eine Funktion. Mit diesem Zug öffnete sich die Tür zum größten Teil der modernen Mathematik.

Eine Funktion ƒ aus einer Menge X (der Definitionsmenge) in eine Menge Y (der Wertemenge) ist formal eine Menge geordneter Paare (x, y), in der jedes x ∈ X genau einmal vorkommt. Die Eindeutigkeitsforderung ist der ganze Gehalt der Definition: jedes x bekommt ein y. Aus diesem Minimum ergibt sich der Rest — Komposition (ƒ ∘ g auf x angewandt heißt ƒ(g(x))), Umkehrfunktion (eine Funktion, die ƒ rückgängig macht, falls eine existiert), Injektivität (verschiedene x landen auf verschiedenen y), Surjektivität (jedes y in der Wertemenge wird getroffen), Bijektivität (beides zugleich, der Fall, in dem eine Umkehrfunktion existiert). Funktionen verschlangen die Mathematik aus einem schlichten Grund: jede Abhängigkeit zwischen Größen ist eine Funktion. Die Position eines Planeten als Funktion der Zeit. Die Wahrscheinlichkeit einer Stichprobe als Funktion des Parameters. Die Ausgabe eines neuronalen Netzes als Funktion der Eingaben. Der Wechsel von Formeln zur abstrakten Abhängigkeit selbst befreite die Mathematik von der Sorge, ob sich die Regel überhaupt aufschreiben ließ. Funktionen höherer Ordnung — Funktionen, die Funktionen als Eingaben nehmen und Funktionen als Ausgaben liefern — wurden zur Grundlage des Lambda-Kalküls (Church, 1930er) und durch ihn zur Grundlage jeder funktionalen Programmiersprache und des größten Teils der theoretischen Informatik. Die tiefe Beobachtung dahinter lautet: hat man die Funktion einmal, ist die Eingabe Datum und die Ausgabe Konsequenz — eine Trennung, die es erlaubt, einen Algorithmus einmal zu schreiben und auf alles anzuwenden, was hineinpasst.

Warum es jetzt zählt

Moderne Programmiersprachen sind um Funktionen herum gebaut: reine Funktionen in Haskell, First-Class-Funktionen in JavaScript, Methoden auf Objekten, λ-Ausdrücke in Python. Tabellenkalkulationsformeln sind Funktionen. REST-APIs sind Funktionen über ein Netzwerk. Modelle des maschinellen Lernens sind Funktionen: ein neuronales Netz mit Milliarden Parametern ist formal eine einzige Funktion von Eingaben zu Ausgaben, die gelernt wurde statt geschrieben. Der Wandel, den Dirichlet anstieß — die Regel statt der Formel —, erweist sich als die richtige Abstraktionsebene für nahezu alles, was Menschen heute rechnerisch bauen.

In Polymathic lesen →Den Katalog durchstöbern
Polymathic — ein kuratierter Katalog der Ideen, die es wert sind, behalten zu werden, quer durch zwölf Disziplinen. polymathic.app