Semantik (Logik)

In der Logik beschäftigt sich die Semantik mit der exakten Bedeutung von Termen in Sprachen. In der Informatik soll sie die Semantik eines Computerprogramms syntaktisch ausdrücken und so mathematischen Beweisen zugänglich machen.

In Abgrenzung zur Semantik im allgemeinen Sinn, wie sie vor allem in Philosophie und Linguistik betrieben wird, arbeitet die Semantik in der Logik mit rein formalen, logisch-mathematischen Methoden. Die moderne formale Semantik (in der Linguistik) hat ihren Ursprung in Arbeiten von Alfred Tarski, Richard Montague, Alonzo Church und anderen.

Semantik in der Mathematischen LogikBearbeiten

In der formalen Logik ist die Semantik ein Teilgebiet, das in das Gebiet der Modelltheorie fällt. Das Gegenstück zur formalen Semantik ist in der Logik die formale Syntax, bei der es um mechanische (das heißt: inhaltlich unbestimmte) Operationen mit bedeutungslosen Symbolen im Rahmen von Kalkülen geht. Erst durch eine zur Syntax passende Semantik werden die Symbole und Operationen der syntaktischen Ebene mit Bedeutungen versehen. Damit wird es möglich, im Rahmen der Modelltheorie die Zusammenhänge zwischen Syntax und Semantik eines formalen Systems zu untersuchen und Aussagen über (semantische) Vollständigkeit und Korrektheit zu beweisen. Der Pionier der modernen formalen Semantik in der Logik war Alfred Tarski.[1]

Semantik in der Theoretischen InformatikBearbeiten

Als Semantik bezeichnet man ein Teilgebiet der theoretischen Informatik, das sich damit beschäftigt, Bedeutung von Computerprogrammen und Spezifikationen zu formalisieren. Dies wird zum Beispiel für den Nachweis der Korrektheit von Computerprogrammen benötigt (Verifikation). Anders als die linguistische Semantik, die ein Teil der Linguistik ist, arbeitet die formale Semantik mit vollständig mathematischen Methoden. Sie ist eng verwandt mit der Berechenbarkeitstheorie, die sich damit beschäftigt, welche Probleme mit Computerprogrammen überhaupt gelöst werden können.

Die Semantik hat zum Ziel, die Bedeutung von Computerprogrammen in einer formalen Sprache auszudrücken – sie soll also die Semantik eines Computerprogramms syntaktisch ausdrücken, so dass sich über das Anwenden von Ableitungsregeln (Kalkülen) Aussagen über das Programm beweisen lassen.

Dabei finden folgende Kalküle Verwendung:

LiteraturBearbeiten

  • Joseph E. Stoy: Denotational Semantics. The Scott-Strachey Approach to Programming Language Semantics (The MIT Press Series in Computer Sciences; Bd. 1). 5. Aufl. MIT Press, Cambridge, Mass. 1989, ISBN 0-87630-751-9 (EA Cambridge 1977).
  • Jan van Leeuwen (Hrsg.): Handbook of Theoretical Computer Science, Bd. B: Formal models and semantics. Elsevier MIT Press, Cambridge, Mass. 1990, ISBN 0-262-22039-3.
  • Michael Main (Hrsg.): Mathematical Foundations of Programming Language Semantics (Lecture Notes in Computer Science; Bd. 298). Springer, Berlin 1988, ISBN 3-540-19020-1.
  • Austin Melton (Hrsg.): Mathematical Foundations of Programming Semantics (Lecture Notes in Computer Science; Bd. 239). Springer, Berlin 1986, ISBN 3-540-16816-8.
  • Manfred Droste, Yuri Gurevich (Hrsg.): Semantics of Programming Languages and Model Theory (Algebra, Logic, and Application; Bd. 5). CRC Press, Langhorne, Pa. 1993, ISBN 2-88124-935-3.

WeblinksBearbeiten

EinzelnachweiseBearbeiten

  1. Alfred Tarski (Autor), John Corcoran (Hrsg.): Logic, Semantics, Metamathematics. Papers from 1923 to 1938. Hackett Publ., Indianapolis, Ind. 1983, ISBN 0915144-75-1.