Das Buch bietet Studierenden und Praktiker*innen mit Kenntnissen der (objektorientierten) Anwendungsentwicklung einen Einstieg in die theoretischen Grundlagen der Programmierung.
Auf Basis des Curry-Howard-Isomorphismus werden die Gemeinsamkeiten der konstruktiven Logik und der Programmierung beleuchtet. Damit können essentielle Grundlagen der Programmierung betrachtet werden, die sich durch klare Regeln (Reduktion und Inferenz) formulieren lassen.
Die vermittelte Theorie findet praktische Anwendung, indem Beweise in Agda programmiert werden. Grundlegende Zusammenhänge der Programmierung werden damit bewiesen. An elementaren Beispielen wird gezeigt, wie die Korrektheit von Programmen formal nachgewiesen werden kann und wie korrekte Programme unter Nutzung von Dependent Types konstruiert werden können. Aufgaben helfen beim Selbststudium. Die zugehörigen Lösungsvorschläge können über den Autor bezogen werden.