Title: Simplifying process parameters of unfolding algebraic data types
In preparation for ICTAC 2023, in this talk I will present the work done in collaboration with Jeroen Keiren and Thomas Neele.
Complex abstract data types are often used to facilitate creating concise models of the behavior of realistic systems. However, static analysis techniques that aim to optimize such models often consider variables of complex types as a single indivisible unit. The use of complex data types thus negatively affects the optimizations that can be performed. To address this problem, Groote and Lisser introduced a technique for flattening the structure of process parameters, then implemented in mCRL2 in the tool lpsparunfold. We have extended the technique behind lpsparufold and implemented the changes. In this talk I will first give some context, I will then introduce the original lpsparunfold technique by Groote and Lisser, after I will describe our extensions and finally discuss the results of the application of our extended technique on various specifications from different domains.
Title: An Autonomous Data Language
In the colloquium, I will practice my talk to be given at ICTAC 2023. Therefore I will present AuDaLa, including a motivation, some semantics and at least one example, within 20-30 minutes. During ICTAC, the abstract for the talk is the abstract of the paper:Nowadays, the main advances in computational power are due to parallelism. However, most parallel languages have been designed with a focus on processors and threads. This makes dealing with data and memory in programs hard, which distances the implementation from its original algorithm. We propose a new paradigm for parallel programming, the data-autonomous paradigm, where computation is performed by autonomous data elements. Programs in this paradigm are focused on making the data collaborate in a highly parallel fashion. We furthermore present AuDaLa, the first data autonomous programming language, and include an operational semantics. Programming in AuDaLa is very natural, as illustrated by examples, albeit in a style very different from sequential and contemporary parallel programming.