Projektbeschreibung
Gemeinsamkeiten und Unterschiede: eine Frage der Semantik
Programmiersprachen für Computer lassen sich ganz wie andere Sprachen auch anhand ihrer Syntax und Semantik charakterisieren. Bei der Syntax geht es um die tatsächlichen Zeichenfolgen, die ein Programm ausmachen. Die Semantik ist eine Abstraktion, eine übergreifende Bedeutung des Programms, bei der Details außer Acht gelassen werden und normalerweise die Beziehung zwischen Ein- und Ausgaben im Mittelpunkt steht. Wenn Programme verglichen werden, hat man sich bislang vor allem auf einen Vergleich ihrer Gemeinsamkeiten oder eine Auswertung davon gestützt, ob sie die gleiche Bedeutung haben. Das EU-finanzierte Projekt DIAPASoN untersucht statt der Gemeinsamkeiten nun die Unterschiede zwischen Programmen aus dem Blickwinkel von Frameworks, die häufig zur Definition der Programmsemantik verwendet werden.
Ziel
Traditionally, program semantics is centered around the notion of program identity, that is to say of program equivalence: a program is identified with its meaning, and programs are considered as equal only if their meanings are the same. This view has been extremely fruitful in the past, allowing for a deep understanding of highly interactive forms of computation as embodied by higher-order or concurrent programs. The byproducts of all this lie everywhere in computer science, from programming language design to verification methodologies. The emphasis on equality — as opposed to differences — is not however in line with the way programs are written and structured in modern complex software systems. Subtasks are delegated to pieces of code which behave as expected only up to a certain probability of error, and only if the environment in which they operate makes this possible deviation irrelevant. These aspects have been almost neglected by the program semantics community until recently, and still have a marginal role. DIAPASON's goal is to study differences between programs as a constitutive and informative concept, rather than by way of relations between them. This will be accomplished by generalizing four major frameworks of program semantics, traditionally used for giving semantics to programs, comparing them, proving properties of them, and controlling their usage of resources: logical relations, bisimulation, game semantics, and linear logic.
Wissenschaftliches Gebiet
Schlüsselbegriffe
Programm/Programme
Thema/Themen
Finanzierungsplan
ERC-COG - Consolidator GrantGastgebende Einrichtung
40126 Bologna
Italien