Ramūnas Gutkovas, Ph.D.

Departamento de Informática, FCT/UNL, Universidade Nova de Lisboa
Quinta da Torre P-2829-516
CAPARICA, Portugal

Room: 239
Email: r.gutkovas@fct.unl.pt

I am Ramūnas Gutkovas, a postoctoral researcher at NOVA LINCS, working with Luís Caires and the Software Systems group.

Previously, I was at Uppsala University working on doctorate work with the Concurrency Group. I was advised by Johannes Borgström and Björn Victor.

My research interest are concurrecny theory, programming language theory, advanced type systems such as constructive type theory, and behavioral types, verification techniques.

You can find my publications and my doctoral disertation below.


Also, you can check my my dblp page.

PhD Thesis: Languages, Logics, Types and Tools for Concurrent System Modelling

I have recently defended my Ph.D. thesis on Sep 9. My opponent was associate professor Thomas T. Hildebrandt of IT University of Copenhagen. The grading comitee consisted of Prof. Nobuko Yoshida, Prof. Jan Frisco Groote, and Assoc. Prof. Tobias Wrigstad.


A concurrent system is a computer system with components that run in parallel and interact with each other. Such systems are ubiquitous and are notably responsible for supporting the infrastructure for transport, commerce and entertainment. They are very difficult to design and implement correctly: many different modeling languages and verification techniques have been devised to reason about them and verifying their correctness. However, existing languages and techniques can only express a limited range of systems and properties.

In this dissertation, we address some of the shortcomings of established models and theories in four ways: by introducing a general modal logic, extending a modelling language with types and a more general operation, providing an automated tool support, and adapting an established behavioural type theory to specify and verify systems with unreliable communication.

A modal logic for transition systems is a way of specifying properties of concurrent system abstractly. We have developed a modal logic for nominal transition systems. Such systems are common and include the pi-calculus and psi-calculi. The logic is adequate for many process calculi with regard to their behavioural equivalence even for those that no logic has been considered, for example, CCS, the pi-calculus, psi-calculi, the spi-calculus, and the fusion calculus.

The psi-calculi framework is a parametric process calculi framework that subsumes many existing process calculi. We extend psi-calculi with a type system, called sorts, and a more general notion of pattern matching in an input process. This gives additional expressive power allowing us to capture directly even more process calculi than was previously possible. We have reestablished the main results of psi-calculi to show that the extensions are consistent.

We have developed a tool that is based on the psi-calculi, called the psi-calculi workbench. It provides automation for executing the psi-calculi processes and generating a witness for a behavioural equivalence between processes. The tool can be used both as a library and as an interactive application.

Lastly, we developed a process calculus for unreliable broadcast systems and equipped it with a binary session type system. The process calculus captures the operations of scatter and gather in wireless sensor and ad-hoc networks. The type system enjoys the usual property of subject reduction, meaning that well-typed processes reduce to well-typed processes. To cope with unreliability, we also introduce a notion of process recovery that does not involve communication. This is the first session type system for a model with unreliable communication.



My github account can be found at  ramunas.

I have designed and implemented a tool for concurrent system modeling and verification based on the Psi-Calculi framework, called Psi-Calculi Workbench. The source code can be found at  Psi-Calculi Workbench.