Book,

Informatik: Formale Sprachen, Compilerbau, Programmierung

, and .
De Gruyter, (2019)
DOI: 10.1515/9783110442397

Abstract

Dieser dritte und letzte Band der Buchreihe Informatik ist der Theoretischen Informatik gewidmet. Nach einer allgemeinen Diskussion formaler Sprachen, deren Beschreibungen und Grenzfällen der Erkennbarkeit werden die regulären Sprachen behandelt, welche in der lexikalischen Defi nition von Programmiersprachen ihre wichtigste Anwendung finden sowie die kontextfreien Sprachen, mit denen man die Syntax von Programmiersprachen definiert. Aus theoretischer Sicht befriedigend ist die eindeutige Entsprechung zwischen Sprachbeschreibung und Spracherkennung - den regulären Sprachen entsprechen die endlichen Automaten und den kontextfreien Sprachen die Stackmaschinen. Weitere Stufen der Chomsky-Hierarchie werden nur kurz behandelt, da sie in der Praxis von geringerer Bedeutung sind. Stattdessen zeigt ein eigenes Kapitel zum Thema Compilerbau weitere Techniken auf, die aus einer Sprachbeschreibung einen Parser, also das komplette 'front-end' eines Compilers, entstehen lassen. Der Begriff des 'Algorithmus' wird anhand verschiedener Maschinenmodelle erklärt und bestätigt wird auch die Churchsche These, dass jede vernünftige Definition von 'Berechenbarkeit' auf die gleiche Klasse von Funktionen führt. Die Grenzen des algorithmisch Machbaren werden anhand des Halteproblems und des Satzes von Rice klar abgesteckt. Das abschließende Kapitel zur Komplexitätstheorie erkundet unter den lösbaren Problemen die Grenze zwischen denen, die mit einem vertretbaren (polynomiellen) Aufwand lösbar sind und solchen, deren Lösung nicht wesentlich effizienter ist, als ein systematisches Ausprobieren von Lösungskandidaten. Dieses Kapitel führt den Leser zu dem bekanntesten noch ungelösten Problem der Theoretischen Informatik: P = NP?

Tags

Users

  • @flint63

Comments and Reviews