Functional Graph Programs - Foundations and Applications


Applications of graph transformation (GT) systems often require control structures that can be used to direct GT processes. Most existing GT tools follow a stateful computational model, where a single graph is repeatedly modified “in-place” when GT rules are applied. The implementation of control structures in such tools is not trivial. Common challenges include dealing with the non-determinism inherent to rule application and transactional constraints when executing compositions of GTs, in particular atomicity and isolation. The complexity of associated transaction mechanisms and rule application search algorithms (e.g., backtracking) complicates the definition of a formal foundation for these control structures. Compared to these stateful approaches, functional graph rewriting presents a simpler (stateless) computational model, which simplifies the definition of a formal basis for (functional) GT control structures. In this talk, I will discuss the “Graph Transformation control Algebra” (GTA) as a foundation for functional graph rewriting and its application in the tool GrapeVine.

Friday, September 22, 2023 15:00 Europe/Paris
GReTA seminar
GitLab repository of the GrapeVine project, including the tutorial presented during the talk:
Jens H. Weber
Jens H. Weber
Professor in Computer Science

Dr. Weber joined the Department of Computer Science in 1999 from the University of Paderborn (Germany) where he was a Research Associate. As a software engineer, he investigated innovative methods of establishing interoperability among heterogeneous information systems. He received the German Software Engineering Award in 2000 and was awarded a fellowship of the Advanced Systems Institute of British Columbia. In collaboration with members of the School of Health Information Science, he began applying software engineering theories to health informatics in 2000. In 2005 and 2006, he was a visiting professor in the UBC Department of Family Medicine, where he has led the technical construction of two clinical information systems. He has been formally affiliated with the School of Health Information Science since 2007. He is a member of the AMIA, HL7, ACM, and IEEE and Gesellschaft für Informatik (GI). He is a co-founder and principal investigator of the Pervasive Primary Care Informatics Lab (

Dr. Weber is a Professor in the Department of Computer Science in the Faculty of Engineering at the University of Victoria, British Columbia, Canada.His research interests lie at the intersection of Software Engineering and Health Informatics. He holds Adjunct Faculty appointments in the University’s School of Health Information Science and at the University of British Columbia, Faculty of Medicine, Department of Family Practice.

He is the Technical Lead and co-director of the UVic/UBC LEADlab research laboratory. From 2007 to 2014, he served as the Director of UVic’s Bachelor of Software Engineering (BSEng) degree program.

He received degrees from the University of Paderborn (PhD) and the University of Dortmund (MSc) in Germany and he is licensed as a practicing Professional Engineer (P.Eng.) in the province of British Columbia, Canada.