Contextual Hyperedge Replacement Grammars: Languages – Parsing – Grappa

Abstract

Graph transformation allows to extend formal language theory to the generation of graph languages. This has applications in areas such as model-driven software engineering, natural language processing, and shape analysis of programs.

We start from the well-established theory of context-free grammars based on hyperedge replacement (HR) and introduces a modest extension, contextual hyperedge replacement (CHR), in order to extend their generative power. We discuss the generative power and other properties of CHR, and relate them to HR.

Then we consider parsing for CHR grammars. As for HR, parsing is NP-complete in general, so that efficient parsing algorithms can only be achieved for subclasses. We have devised two algorithms, called predictive top-down (PTD) and predictive shift-reduce (PSR), which are inspired by the well-known LL(k) and LR(k) parsing for strings, and are usually linear, at most quadratic. We illustrate the ideas of these algorithms by graph transformation rules.

Finally we demonstrate Mark Minas' graph parser generator Grappa, which implements not only PTD and PSR parsing, including the needed analysis tools, but also generalized PSR, where parallel parsing allows to cope with ambiguous grammars. Measurements of generated parsers validate our theoretical findings regarding complexity.

Date
Friday, June 3, 2022 15:00 Europe/Paris
Event
GReTA seminar
Zoom registration: click here! Please consider joining the meeting already within the 15min prior to the start of the seminar to ensure your setup is functioning properly. You may connect with either the Zoom web or Zoom desktop clients.

Please note that the meeting will be recorded and live-streamed to YouTube:

Frank Drewes
Frank Drewes
Professor of Computer Science

I am a member of the research group Foundations of Language Processing, which is part of Language Processing Center North. My research interests are formal and natural languages and their analysis, in particular in combination with other modalities such as images and video. One of the current aims is to combine finite-state techniques such as automata and grammars with continuous vector representations. Several of my projects in this area are AI projects targeting multimodal media analysis. In particular, I am interested in ways to create structural representations based on graphs. Examples are automata and grammars that process semantic representations of sentences such as Abstract Meaning Representations, and how those can be made use of for media analysis.

Berthold Hoffmann
Berthold Hoffmann
Bremen Senior Lecturer (emer.)

Berthold Hoffmann has been Bremen Senior Lecturer in the computer science program. After his retirement (on 1. 5. 2019) he is still associated with the university. He studied computer science at TU Berlin, and received his Dr-Ing. ( PhD ) from there. (Details can be found in his CV). He is working in the area of graph transformation, on foundations of rule-based programming with graph transformation rules and on the definition and parsing of graph languages with graph grammars, in particular with contextual hyperedge replacement grammars.

Mark Minas
Mark Minas
Professor of Computer Science

Mark Minas studied computer science at the Friedrich-Alexander University of Erlangen-Nuremberg and graduated with a diploma. Subsequently, he received his doctorate (Dr.-Ing.) there. His habilitation was in 2000 in practical computer science. Until 2002 he worked at the Friedrich-Alexander-University Erlangen-Nuremberg as a research assistant. In 1993/94 he was a postdoctoral fellow at the International Computer Science Institute in Berkeley, California. In 2002, he took over the substitute professorship for databases and information systems at the Faculty of Computer Science at the University of the Federal Armed Forces in Munich. In 2003, he was appointed to this professorship, which was then renamed Professorship of Programming Systems. From October 2010 to October 2014, Mark Minas was Dean of the Faculty of Computer Science